I specialize in software engineering and lifecycle management of complex, networked systems.

I work across the software lifecycle:

Requirements and specification

  • requirements gathering and analysis
  • system specification and design

Project delivery

  • estimation and progress control
  • configuration management

Verification and quality

  • design verification and validation
  • test design and implementation
  • quality control and test execution

Project management means predictable costs, reliable delivery, and progress you can check. I choose tools and methods to suit the project. I am willing to be pragmatic, even when it hurts. Combined with a devotion to software engineering, that helps me get results that hold up — over and over, and over again.

Consulting and project management

Productivity depends on process — and on learning how to apply it. I help you manage your projects, whether the project is just starting or already under way.

Together we will create:

  • clear project visions
  • stable, measurable and complete requirements
  • precise interfaces
  • efficient project management structure
  • reliable effort estimates
  • quality assurance plans
  • aggressive risk management

Requirements engineering in the AI era

Today I pair that foundation with agentic development and AI knowledge systems. AI can produce code quickly, confidently, and sometimes incorrectly. The work still begins with stating precisely what a system must do, and checking that it does.

The technology changes. Clear requirements and careful review remain essential.

Let's talk.