Four phases. Stop after any of them
Every phase ends with something you own outright. That is deliberate: it means you are never one decision away from being locked in, and it means we have to earn the next phase.
Six rules we do not bend
Measure before you build
No baseline, no project. If a number cannot be established, the first deliverable is the instrumentation that establishes it.
Write down what you rejected
Every architecture decision records the option that lost and why. In two years that record is worth more than the code.
Smallest change that moves it
We have talked clients out of rebuilds in the first week. The invoice was smaller and the outcome was better.
Reversible by default
Increments behind flags. If a step is not revertible within minutes, it is not one step, it is several.
Hand over is a phase
Runbook, named owner, and the metrics your team watches. If they cannot run it without us, we failed.
Say no early
Declining at the first call costs one hour. Declining at week six costs a quarter of your year.
What happens in each one
Pricing model changes by phase. Assess and Decide are fixed price because their scope is known. Build is not, and pretending otherwise produces padded estimates.
Assess
We establish what is actually true today. Often this phase alone changes the plan, and occasionally it ends the engagement, which is a good outcome.
You leave with
- Measured baseline
- Ranked findings
- Go or no go recommendation
Decide
The design, written down with its alternatives. You can take this document to another firm and they could build from it.
You leave with
- Target architecture
- Rejected alternatives
- Migration order and rollback plan
Build
Reversible increments. Every deploy measured against the baseline from phase one, reported weekly against it.
You leave with
- Working system in production
- Tests and observability
- Weekly measured progress
Hand over
The phase most firms skip. Your team operates the system with us watching, then without us.
You leave with
- Runbook
- Named internal owner
- Training sessions
Four shapes an engagement can take
| Model | When it fits | Minimum | Shape |
|---|---|---|---|
| Project | Defined outcome, known constraint | 6 weeks | Fixed team, fixed phases, scope agreed at Decide |
| Embedded | Your roadmap, our capacity | 3 months | Named engineers inside your process and standups |
| Retainer | Ongoing improvement, no fixed end | 6 months | Monthly allocation, priorities set by you each cycle |
| Fractional | Leadership gap before a permanent hire | 3 months | Two to three days a week with decision authority |
Ranges, because scope decides cost
We do not publish a price list for engineering. We do publish the bands, so you can tell in one minute whether this conversation is worth having.
Assessment
Low five figures
Two weeks, fixed, credited against a following engagement
Website rescue
Mid five figures
Typically 5 to 10 weeks depending on platform
AI workflow
High five figures
Map through hand over, one workflow in production
Custom platform
Six figures
Three to nine months, team of three to five
Who is actually on your engagement
The people on the first call are the people who do the work. There is no separate delivery team you meet in week three.
Engagement lead
Every engagementOwns the outcome and the weekly report. Present from the first call to hand over.
Senior engineers
2 to 4Write the code. No juniors billed as seniors, no offshore layer you did not agree to.
Design
As neededInterface and interaction work where the engagement has a surface.
Your owner
1 requiredNamed on your side before we start. Without this the hand over has nowhere to land.
How communication runs
Predictable and boring, on purpose. You should never have to ask where something stands.
- DailyWritten standup in your channel, no meeting
- WeeklyProgress against the baseline, in numbers, same format every week
- FortnightlyDemo of what is in production, not what is on a branch
- MonthlyWritten report suitable for your board without editing
- AlwaysOne named lead who answers within a working day
What ships with every engagement
These are not upsells. Work that does not meet this bar is not finished, so it is not billed as finished.
- Performance budgets enforced in CI, a regression fails the build
- Accessibility checked against WCAG 2.2 AA on every route
- Tests written for the logic that would cost money if it broke
- Observability and alerting shipped with the feature, not after
- Dependencies audited, zero known high severity at release
- Every published figure traceable to a dated source artifact
Terms we will not agree to
- Fixed price on a scope that has not been through the Decide phase
- Working without access to the people who own the system
- Deadlines set before the baseline is measured
- Deliverables that cannot be handed to your team
The first phase is two weeks and fixed price
You end it with a measured baseline and a recommendation, including the recommendation not to proceed if that is what the numbers say.