Results · Engineering Approach
AI in the workflow. People responsible for the result.
We use AI throughout our engineering process because it makes good engineers faster. We don't treat it as a replacement for sound thinking, testing or responsibility.
Division of responsibility
What AI does, and what engineers own
Where AI helps
- Reading and explaining unfamiliar code
- Drafting code, tests and documentation
- Speeding up repetitive cleanup and migration work
- Checking changes for common mistakes
What engineers own
- Requirements, design and trade-offs
- How systems connect and who can access which data
- Decisions on security, privacy and quality
- Reviewing and approving every change
- Keeping production reliable, and support
How we work
Five stages, from problem to production
- 01
Discover
Understand the problem, where you are today, your constraints and the result you need.
Outcome: A shared description of the problem, the constraints and how success will be measured.
- 02
Design
Decide what to build, how it will be designed, what done means and how we will deliver it.
Outcome: The technical design, scope, risks and a delivery plan.
- 03
Build
Build in small steps. AI helps with the coding, and an engineer reviews each change.
Outcome: Working, reviewed software, delivered regularly.
- 04
Verify
Test features, integrations, security and performance before release.
Outcome: Automated and manual test results, with open issues in plain view.
- 05
Operate
Release, monitor, measure and keep improving.
Outcome: A live service with agreed support and regular improvements.
Quality gates
What happens before software goes live
An engineer reviews every change, including those made with AI
Automated tests for the important behavior, run on every change
Security and dependency checks
Performance checks where it matters
A careful release process, with the ability to roll back
Monitoring and agreed support after launch
