Skip to content
Services / Product engineering

The whole product, or the part blocking it.

A product taken from a problem statement to running software somebody operates: scope and architecture before code, then the interface, the services behind it, the integrations, the deployment path and the handover. The person who scopes it stays accountable for the build.

01: Who this is for

The builds this fits.

Being specific about fit is worth more than being available for everything. A company that says yes to all of it is one you cannot calibrate.

  • A product that does not exist yet, where the hard part is not the interface and you want one team accountable for all of it.
  • An existing product with a component that is blocking the rest, where the blocking part reaches below the application layer.
  • A rebuild where the current system is understood well enough to say what must survive it.
  • Internal or operational software a business genuinely runs on, rather than a proof of concept.
  • A team that has the surface handled and needs the backend, the data model and the deployment path built properly underneath it.
02: What this answers

Where complete builds usually fail.

Almost none of it is the interface. A build goes wrong at the seams: the frontend assumes a shape the backend never promised, an integration behaves differently in production than in the sandbox, a data model that was right for the first feature quietly becomes wrong for the fourth, and nobody notices until the change that needs it is already late.

The second failure is ownership. Split a product across a design vendor, an app shop and whoever administers the infrastructure, and every hard problem lands in the gap between two contracts. The part that is nobody's job is reliably the part that decides whether the thing works.

The third is the handover. A system that only its authors can operate is not finished, it is rented. What separates a build you own from one you are stuck with is whether the reasoning came with it: the decisions, the alternatives that were rejected, and the procedure for the things that need operating.

03: The shape

The stack, and where this sits.

A complete build reaches the whole ladder. Where a rung is another category's depth, the diagram says so rather than absorbing it quietly.

A reference architecture, meaning the shape the work is designed to rather than a record of systems delivered. It names layers and responsibilities and never products: what runs at a given layer is a decision taken with you during scoping, not one taken here in advance.

the shared ladder, marked for product engineering
handed over at every layer
  • L5

    Product surface

    Coverage: Owned

    The interface and frontend application, built against real states rather than the happy path. A visual comp with no system under it is somebody else's offer.

  • L4

    Services and APIs

    Coverage: Owned

    Backend services and APIs, with the integrations behind them, and the seams made explicit rather than assumed by both sides at once.

  • L3

    Data and state

    Coverage: Owned

    The data model, shaped for the fourth feature and not only the first, because that is where it quietly goes wrong.

  • L2

    Models and agents

    Coverage: Touched

    Built where the product genuinely needs it. The boundary, retrieval and evaluation work is scoped as AI and automation.

  • L1

    Runtime and infrastructure

    Coverage: Touched

    A deployment path from commit to running service, with a rollback that has been exercised. The platform itself is its own category.

  • L0

    The layer underneath

    Coverage: Touched

    Reached when the part blocking the product lives below the application layer, rather than stopped at a vendor boundary.

What the marks mean

Owned
This category is accountable for the layer. It is designed, built and handed over inside the engagement.
Touched
The work reaches the layer as far as the build needs it to, and the depth here belongs to one of the other categories.
Outside
Deliberately not this category. The note on the rung says where the work goes instead.
04: What ships

What the engagement produces.

Systems and documents, not activity. Every item is a thing you keep.

  • A written scope: the problem as understood, what will and will not be built, the stages, and the acceptance criteria for each.
  • An architecture memo carrying the decisions, the alternatives considered, and the conditions that would make one worth revisiting.
  • The interface and frontend application, built against real states rather than the happy path.
  • Backend services and APIs, with the data model and the integrations behind them.
  • A deployment path from commit to running service, with a rollback that has been exercised.
  • A runbook and handover pack: how to operate it, how it fails, and what is deliberately manual.
05: Risk it retires

What you are no longer exposed to.

Stated as risk removed rather than benefit gained, because that is what a buyer is actually purchasing.

  • Agreeing a number before anyone has agreed what the work is, which is where fixed-price builds usually fail.
  • A seam between vendors where the frontend blames the backend and the hard problem belongs to neither.
  • Inheriting a system nobody can explain, where every future change starts with archaeology.
  • A finished product that only functions while the people who built it are available.
  • Discovering during an incident that the rollback path was theoretical.
06: What this is not

Work turned down.

Cheaper for both sides to read now than to discover three weeks into a scope.

  • Design-only engagements. The interface is built here, but a visual comp with no system under it is somebody else's offer.
  • A fixed price against a scope nobody has written yet. Scoping comes first, and it is real work.
  • Staff augmentation by the hour with no defined outcome, where the engagement is a seat rather than a result.
  • A deadline the scope cannot support. A date met by skipping the parts that make the system hold is not a date worth agreeing.
  • Rebuilds where the existing system is not understood well enough to say what must survive it. That is discovery, and it gets scoped as discovery.
07: Handover

What you are left holding.

The test is whether an engineer who was not on the build can pick the system up without a negotiation.

  1. Source in your repositories

    The code lives in your organisation from the first commit, not in ours and copied over at the end. You own the code and the IP produced under the engagement, and that is stated in the engagement document rather than assumed.

  2. Infrastructure in your accounts

    Everything runs in accounts you control, provisioned as code so an environment can be rebuilt from source rather than remembered. Revoking our access is something you can do without asking.

  3. The reasoning, written as it happened

    The architecture memo, the decisions and the rejected alternatives, recorded while they were fresh rather than reconstructed at the end. This is the part usually lost, and it is the part that makes the next change cheap.

  4. A runbook for the things that need operating

    Routine tasks, failure modes and their responses, where the logs are, what is deliberately manual, and the known limitations. Written for someone who was not there.

09: Next step

Start with the constraint.

A short brief is enough to begin: what you are building, who operates it, what is blocked, and what would count as done.