« Phase 16 · Lab 01 · Track Overview

Warmup — Two-in-a-Box & Engineering Leadership, from Zero to Principal


Table of Contents


0. Where this sits

Every other phase in this track builds a mechanism. This one builds the operating model that decides which mechanisms get built, when they ship, and who says no.

It is also the phase most candidates skim, and the interview will not. The JD names two-in-a-box explicitly, names five governance forums by name, and names testing discipline, ORRs and mentorship. That is not boilerplate — it is a description of half the job.

What it consumes from the rest of the track:

FromUsed as
00 — Platform modelthe five design-review questions
10 — Action gatewaythe autonomy ladder
11 — Guardrailsred-team results, for Cyber
14 — SREthe error budget the policy governs
15 — Governanceevidence packs, for Internal Audit

1. From first principles: what two-in-a-box actually is

Start with the ordinary arrangement, which is a partition:

    Engineering Manager  ──►  owns: architecture, delivery, quality, the pager
    Product Manager      ──►  owns: roadmap, priorities, stakeholders

Clean, and it works for most products. Each owner has a domain, and disputes are resolved at the boundary by escalation.

Two-in-a-box is not that. Accountability is undivided:

    Engineering Lead  ─┐
                       ├──►  BOTH accountable for: availability, performance, cost,
    Product Owner     ─┘      security posture, architectural evolution, the roadmap,
                              the pager, and what they say to a regulator

Both own the same surface. Not "you own tech, I own product" — both own both.

Four mechanics that follow directly, and they are what an interviewer is checking for:

Shared on-call. The product owner carries the pager. This sounds performative and is the single most effective mechanism in the model: a product owner who has been woken by a retry storm makes different roadmap decisions, and does so without being lobbied.

Either owner can speak for the platform. In any forum, either can commit. Which requires them to be genuinely synchronized, which requires artifacts (§3).

Disagreement is expected and has a protocol. Two people with undivided accountability will disagree. Without a protocol, the disagreement is resolved by seniority, volume or attrition (§7).

Everything material becomes an artifact. Not for process reasons — because two people cannot stay synchronized on shared accountability through conversation alone, and one of them will be on holiday when the decision is questioned.

2. Why it exists for an AI platform specifically

The partition model fails at a specific boundary, and an AI platform sits exactly on it.

Consider these decisions:

DecisionProduct?Engineering?
Which autonomy band a new agent gets✅ customer experiencerisk
How fast to onboard agent teams✅ adoptioncapacity, support load
Which model, at which cost per actionunit economics✅ latency, quality
Whether to degrade to a smaller model under loadquality the user sees✅ availability
Whether to ship into an exhausted error budgetcommitment✅ reliability
What to tell the regulator about concentration risk

Every row is both. Under a partition, each becomes a negotiation across a boundary where neither party has the full picture. Under two-in-a-box they are one decision made by two people who both carry its consequences.

The clearest example is the autonomy band. A product owner wants the agent to act autonomously — it is a better experience and it is the whole point. An engineer sees an irreversible action with a residual risk. These are the same decision, and separating them produces either a product owner who is told "no" without understanding why, or an engineer who is overruled without recourse. Two-in-a-box puts both names on it.

3. Shared accountability needs shared instruments

Here is the failure mode nobody plans for: two people, undivided accountability, genuine goodwill, and a disagreement at 2 p.m. on the 18th of the month.

Without instruments the outcomes are all bad — the more senior wins, or it escalates and both look unable to work together, or they compromise on something neither believes in.

The instruments are the phase. Each removes a specific ambiguity:

InstrumentRemoves
The error-budget policy"should we ship into a breach?"
The decision router"does this need both of us?"
The disagreement protocol"how do we resolve this?"
ADRs"what did we decide, and why?"
The ORR"is it ready?"
The design-review checklist"is this design good enough?"
The action tracker"did the post-mortem change anything?"

And the property they share, which is the phase's organizing idea:

A standard in code is a control. A standard in a wiki is a suggestion.

An ORR that is a scoring function refuses. An ORR that is a Confluence page is a form. The difference is not rigour; it is that one of them is in the path and the other is beside it.

4. The error-budget policy

Four states, derived from the remaining budget (Phase 14):

StateBudgetPermits
Normal> 50%everything
Elevated20–50%everything except experiments
Reliability focus< 20%emergency fixes, reliability work, bug fixes
Freeze0%emergency fixes and reliability work only

Three properties that make it work.

Signed before the first breach. This is the whole point. A policy agreed while the budget is healthy is a rule. One negotiated during a breach is an argument, and the winner is whoever is more senior or more determined. Sign it on day one, when it is abstract and nobody is under pressure.

Freeze still permits reliability work. Obvious once stated, and frequently got wrong: a freeze that blocks the work that would restore the budget is a freeze that extends itself. Emergency fixes and reliability improvements are permitted in every state.

Each tighter state permits a subset of the looser one. So the policy is a prefix of the change classes ordered by risk, which makes it explainable in one sentence and impossible to get subtly inconsistent.

And the part that makes it a two-in-a-box instrument rather than an SRE one: both owners sign it, and both are bound. The product owner cannot exempt a feature, and the engineer cannot extend the freeze. It binds the pair, which is what lets either of them cite it without it being a personal position.

5. Exceptions, and how a policy dies

Every error-budget policy has exceptions. The question is whether they are expensive.

The way a policy dies is always the same, and it is worth being able to describe:

    month 1   the policy is signed. Everyone is enthusiastic.
    month 4   the first freeze. A committed feature is ready.
              An exception is granted. Reasonable.
    month 5   a second exception. Also reasonable.
    month 7   exceptions are routine. Nobody calls them exceptions.
    month 9   the policy is not mentioned in a freeze.

Nobody made a bad decision. Each step was locally reasonable, and the policy is gone.

Four properties that make an exception expensive enough to stay rare:

It expires. An exception with no expiry is a policy change nobody agreed to.

Both owners must approve. One owner cannot suspend the shared instrument — that is the whole argument for having it.

It names a real reason. "Business need" is not a reason. "Regulatory deadline on 31 March requires the reporting agent to ship" is.

It is counted, and the rate is watched. Two exceptions a quarter is a working policy. Ten is a policy that has been replaced by a habit, and the correct response is not to keep granting them — it is to renegotiate the SLO, because a policy that is constantly exempted is describing a target nobody actually holds.

That last one is the important reframe: a high exception rate is not an integrity failure. It is evidence that the SLO is wrong, and treating it as data rather than as misbehaviour is what keeps both owners honest.

6. The decision router

Not every decision needs both signatures. A pair that requires both on everything cannot move; one that requires neither is two people who will disagree in public later.

Two axes — reversibility and external visibility:

ReversibleExternally visibleClassSigners
yesnoreversible-internal1
yesyesreversible-external1, other informed
nonoirreversible-internal2
noyesirreversible-external2, plus a forum

Reversibility is Bezos' one-way/two-way door, and it is the right primary axis: a reversible decision made badly costs a rollback, so making it fast is worth more than making it right. External visibility is the second axis because a commitment made to another team or a regulator cannot be quietly revised.

Two practical notes:

Classify explicitly, at the start. "Is this reversible?" asked before the discussion changes how long the discussion should be, and it stops a two-way door decision consuming a week.

When in doubt, treat it as irreversible. The cost of an unnecessary second signature is minutes; the cost of an unsigned irreversible decision is a disagreement in a forum.

7. The disagreement protocol

Two people with undivided accountability will disagree. The protocol makes the disagreement produce a decision.

Step one — classify the decision (§6). Reversible? Then one owner decides and the other lives with it. Most disagreements end here, and that is the point.

Step two — separate facts from values. The operational test is one question:

"What would change your mind?"

If both owners can answer, the disagreement is factual and has an answer: measure it. Build the cost model, run the eval, do the load test.

If neither can, it is a values disagreement — a genuine difference about acceptable risk or priority, and no amount of data resolves it.

If only one can, it is unclear, and the right move is to ask the other for a falsifier before anything else. A position that nothing would change is not an engineering position, and surfacing that takes a minute rather than a meeting.

Step three — for factual disagreements, measure. Agree the experiment and what each outcome implies before running it. Otherwise the loser re-litigates the methodology.

Step four — for values disagreements, escalate both written positions. Not a summary, not a recommendation — both positions, each written by its holder, to whoever owns the trade-off.

And the failure mode to name explicitly:

Never average a values disagreement. A design at the midpoint of two coherent positions is usually worse than either — it has the costs of both and the benefits of neither.

Step five — disagree and commit, in writing. The loser writes down that they disagreed and are committing anyway. Two reasons: it is honest, and if the decision turns out badly the record shows the disagreement was heard rather than suppressed — which is what makes the next disagreement safe to raise.

8. ADRs

An Architecture Decision Record: one decision, its context, the options considered, the decision, and the consequences.

For two-in-a-box the justification is specific: two people hold the platform's architecture in their heads, and heads leave. The ADR is how the reasoning survives — and the reasoning is what a successor needs. The decision alone tells them what was done; the reasoning tells them whether it still applies.

Four properties worth enforcing mechanically:

At least two options. One option is not a decision, it is a description. Requiring two forces the author to articulate what they rejected, which is where most of the value is.

Negative consequences are required. This is the field that changes ADR quality. Every real decision costs something, and an ADR with no costs has not been thought about. It is also what a successor reads first: knowing what you accepted is how they tell whether the trade-off still holds.

Immutable once accepted. An accepted ADR is never edited — it is superseded. Editing destroys what the ADR exists for: a record of what was decided at the time, with the information then available. A superseded ADR plus its successor says the decision changed and why; an edit says neither and quietly rewrites history.

Signed per the decision class. Irreversible decisions carry both names.

And a note on volume: ADRs are for decisions that are hard to reverse or expensive to re-litigate. A team writing forty a quarter is writing meeting notes; one writing none has an architecture that lives in two people's memory. Five to ten a quarter is a healthy platform.

9. Design reviews

The five questions from Phase 00, which are the review:

  1. What does it deny? A component that denies nothing is not a control.
  2. What is the blast radius? You cannot reason about the failure without it.
  3. Can it degrade? "It fails" is not a design.
  4. What artifact does it emit? A control that emits nothing does not exist (Phase 15).
  5. Who operates it at 3 a.m.? And can they, from the runbook, without the author?

Then the standing red flags, assembled from every phase in this track — side-effecting tools with no idempotency story, restricted data with no residency statement, an irreversible design with no autonomy band, no stated retry policy, no SLO.

Two properties make a design review work.

The rules are standing. The same list every time. The value is not that they are clever — they are deliberately obvious. It is that a reviewer having a bad day still catches the missing blast radius, and an author knows in advance what will be asked, which improves the document before the review happens.

The document is structured. Requiring structure is itself the intervention: a prose design can omit the blast radius without anyone noticing; a typed one cannot.

And the cultural half, which the mechanism cannot supply: a design review is a review of the design, not of the designer. The reviewer's job is to find what will hurt at 3 a.m., and the author's job is to make that easy. Teams where reviews are adversarial produce documents optimized to survive review rather than to be reviewed.

10. The operational readiness review

The gate between "it works" and "it is in production". The classic rows:

#CriterionEvidence
1SLOs defined and instrumenteda dashboard over 7 days
2Alerts tested by injecting failurea fault-injection run and the page it produced
3Runbook rehearsed by someone outside the teama rehearsal record, named
4Rollback tested in production-like conditionsa test record with the elapsed time
5Dependencies mapped with blast radiusthe diagram, with composed availability
6Capacity headroom against the provider limita forecast with the lead time
7On-call trained and rostereda rota, and a completed shadow shift
8Degradation ladder documentedthe ladder, with user-visible impact per rung

Rows 2 and 3 are the ones that get skipped, and they are the ones that matter most. An untested alert is a belief — the config looks right and nobody has checked that it fires. And a runbook rehearsed only by its author proves nothing: the author has context the 3 a.m. responder will not.

Then the six rows a generic ORR does not have, and they are what makes this an agent platform's gate:

#Criterion
9Evaluation suite passing at the tier's threshold
10Red-team suite passing on containment (Phase 11)
11Tool scopes reviewed against least privilege
12Per-tenant cost ceiling configured
13Autonomy band assigned and enforced
14An evidence pack can be generated for a sample action

And the two scoring properties that make it a gate rather than a grade:

Any mandatory failure is a fail, at any advisory score. The moment a mandatory criterion can be outweighed, the review becomes a negotiation — and the thing negotiated away is always the runbook rehearsal, because it is the most inconvenient and the least visible.

Every criterion names its evidence. "Yes" with no artifact is a belief. An ORR of unevidenced yeses is a form somebody filled in.

11. Testing discipline as a platform standard

Four layers, and two of them are new for an AI platform:

LayerTestsGates a release?
Unitlogic
Integrationcomponents together
Evaluationmodel/agent quality on a golden setat the tier's threshold
Red-teaminjection, exfiltration, tool abuseon containment

Evaluation and red-teaming are the additions, and both gate. Which is the thing to state plainly: an agent whose eval suite has not run does not ship, in the same way that code whose unit tests have not run does not ship — and treating them as optional is how quality regressions reach production.

The discipline that makes it stick is the same one that works for unit tests: make it a control, not a standard. The pipeline refuses to promote without a passing eval run (Phase 09), and the ORR checks it again. A wiki page saying "teams should run evals" produces teams that mostly do.

And the ratchet worth adopting from Phase 14: every quality incident produces a new eval case. That is what makes the suite grow toward the failures you actually have rather than the ones you imagined.

12. Incident command

Roles, so nobody has to work out who is doing what while it is on fire:

RoleDoes
Incident commanderdecides; does not debug
Operations leadinvestigates and fixes
Communications leadupdates stakeholders on a cadence
Scribetimeline, for the post-mortem

For a small platform team one person may hold two, and the one that must not be shared is commander and operations: a commander who is debugging is not commanding, and the symptom is that nobody decides to degrade until it is too late.

The distinction that matters most:

Mitigation stops the bleeding. The fix removes the cause.

They are different, they happen at different times, and conflating them is how a mitigated incident is closed and then recurs next week. An incident is mitigated when users are no longer affected and resolved when the cause is gone, and those are two timestamps.

Two-in-a-box specifics:

Either owner can be commander. The pager is shared, so whoever is on it commands.

The other owner is not automatically involved. Pulling both into every incident burns both, and the point of shared on-call is coverage rather than duplication.

The degradation ladder is pre-authorized (Phase 14). The commander executes it without asking, because it was agreed in daylight — which is the whole reason it was written in daylight.

13. Post-mortems that change anything

Blameless, with a timeline, contributing factors and action items. Standard.

The part that is not standard, and is the only honest measure:

Track action-item completion.

Everybody writes post-mortems. A post-mortem process whose actions are never done is a writing exercise, and the completion rate is the only number that distinguishes the two.

Four mechanics:

Every action has a named human. "The team" completes nothing.

Every action has a due date. Without one, "open" is indistinguishable from "abandoned".

Dropping is legitimate and must be explicit, with a reason. An action quietly left open forever is worse than one dropped deliberately — the first corrupts the metric, the second is a decision. And dropped items leave the denominator, because they were decided rather than missed.

Review the rate, and the ages. The oldest unresolved action is a better signal than the rate, in exactly the way that the oldest reconciliation break beats the break count (Phase 12).

And the two AI-specific questions to add to the template:

"Was this deterministic?" Would the same input have produced the same failure? If not, you are not fixing a bug — you are narrowing a distribution, and "we fixed it" needs a measurement.

"What did the eval suite not catch?" Every quality incident produces a new eval case.

14. The five forums

The JD names them, which means the interview will. Each wants something different, and bringing the same deck to all five is the standard mistake — each rejects it for a different reason.

ForumWantsBringFails when
Enterprise Architecturehow it fits the target statethe five-layer reference architecture, the ADRsyou present a bespoke design with no convergence story
Cyberthe threat model and what a compromise reachesthe identity model, the containment argument, red-team resultsyou claim you prevent prompt injection
Model Riskwhat the model is, who validated it, what it is not forthe inventory entry, the validation pack, the tiering rationale"the model" means only the weights
Internal Auditevidence that the control operateda generated evidence pack, the control-to-evidence mapyou describe controls instead of showing their artifacts
Group CTTOcost, capability, concentration, directioncost per successful action, the capacity forecast, exit readinessyou present engineering detail instead of unit economics

The two rows to internalize:

Cyber does not want reassurance. Claiming you prevent prompt injection loses the room, because they know you cannot. The credible answer is containment: the taint rule, what an injected instruction can reach, and the red-team containment rate (Phase 11).

Internal Audit does not want a description. They want the artifact the control emitted on a specific date (Phase 15). "We have dual control" is a claim; an evidence pack showing the two approvers on 12 March is evidence.

15. Mentorship, and raising the floor

The JD says "technical mentorship of platform engineers", and the leverage question is how to raise the floor without becoming the bottleneck.

Standards as controls, not documents. A rule in publish() beats a rule in a wiki, every time. The tool-registry check from Phase 02 that refuses a tool without a side-effect class teaches the standard and enforces it, and it does so at 2 a.m. when nobody is reading the wiki.

Paved roads over policing. A module that produces a compliant namespace in one command competes with a portal click; a six-page checklist does not (Phase 13).

Review with a checklist, not with taste. The standing red flags mean any senior engineer can run a review to the same standard, which is what removes you from the critical path.

Pair on the first one, hand over the second. The highest-leverage mentoring in this domain is walking somebody through their first ORR or first ADR, then reviewing their second rather than writing it.

And the specific thing to teach in an AI platform, because it is unintuitive to good engineers: the model is not the system. Engineers arriving from ML think in terms of model quality; the platform's work is almost entirely the layers around it. A mentee who internalizes "the model proposes, the platform disposes" has understood the architecture.

16. Numbers worth carrying

QuantityValueNote
Error-budget states4normal / elevated / reliability-focus / freeze
Freeze threshold0% remainingand reliability work is still permitted
Exception TTL≤ 7 daysan exception without one is a policy change
Healthy exception rate≤ 2 per quarterabove that, renegotiate the SLO
ORR mandatory criteria~14including 6 agent-specific
ORR advisory threshold70%of the weighted advisory score
ADRs per quarter5–1040 is meeting notes; 0 is memory
Signers, irreversible2both owners
Design-review blockersany one blocksit is a gate
Post-mortem action completiontrackedthe only honest measure
Pages per engineer per week< 2above that, the alerting is not trusted
Forums5and five different answers

17. Interview questions, answered

Q1. "What does two-in-a-box mean to you?"

Undivided accountability. Not "you own tech, I own product" — both owners are accountable for the same surface: availability, performance, cost, security posture, architectural evolution, the roadmap, and the pager.

Which matters for an AI platform specifically, because the decisions that determine whether it succeeds sit exactly on the boundary a partition would create. Which autonomy band a new agent gets is a customer-experience decision and a risk decision. Whether to ship into an exhausted error budget is a commitment decision and a reliability decision. Under a partition each becomes a negotiation where neither party has the full picture.

The mechanic that makes it real rather than rhetorical is shared on-call. A product owner who has been woken by a retry storm makes different roadmap decisions, and does so without being lobbied.

Q2. "Two people share accountability and disagree. What happens?"

There is a protocol, agreed in advance, because a disagreement resolved by seniority or volume is one that will not be raised next time.

First, classify the decision. Reversible? Then one owner decides and the other lives with it — most disagreements end there.

Then separate facts from values, and the operational test is one question: what would change your mind? If both can answer, it is factual and has an answer — build the cost model, run the eval, and agree what each outcome implies before running it. If neither can, it is a genuine values disagreement about acceptable risk, and no data resolves it.

For a values disagreement I escalate both written positions to whoever owns the trade-off. Not a summary and not a recommendation — both positions, each written by its holder. And the failure mode to avoid is averaging: a design at the midpoint of two coherent positions has the costs of both and the benefits of neither.

Then disagree and commit, in writing. The record that the disagreement was heard is what makes the next one safe to raise.

Q3. "The error budget is exhausted and the business needs a feature. What do you do?"

Follow the policy we signed before the first breach, which is the entire point — a policy agreed while the budget is healthy is a rule, and one negotiated during a breach is an argument.

At zero the state is freeze: emergency fixes and reliability work only. So the default is no.

There is an exception path, and it is deliberately expensive: both owners approve, a stated reason — "business need" is not a reason — and an expiry. And it is counted, because the exception rate is the health metric for the policy itself.

That last part is the important one. Two exceptions a quarter is a working policy. Ten means the policy has been replaced by a habit, and the right response is not to keep granting them — it is to renegotiate the SLO, because a target that is constantly exempted is not a target anyone holds. A high exception rate is data, not misbehaviour.

Q4. "What is in your ORR?"

The classic gate — SLOs instrumented, alerts tested, runbook rehearsed, rollback tested, dependencies mapped with blast radius, capacity headroom against the provider limit, on-call trained, degradation ladder documented.

Two rows I would emphasize. Alerts tested by injecting failure, because an untested alert is a belief. And the runbook rehearsed by somebody outside the team, because the author has context the 3 a.m. responder will not.

Then six rows a generic ORR does not have: the eval suite passing at the tier's threshold, the red-team suite passing on containment, tool scopes reviewed against least privilege, a per-tenant cost ceiling, the autonomy band assigned and enforced, and an evidence pack generable for a sample action.

And two scoring properties. Any mandatory failure fails at any advisory score — the moment a mandatory criterion can be outweighed the review becomes a negotiation, and the thing negotiated away is always the runbook rehearsal. And every criterion names its evidence, because an ORR of unevidenced yeses is a form somebody filled in.

Q5. "How do you run a design review?"

Five questions, every time. What does it deny — a component that denies nothing is not a control. What is the blast radius. Can it degrade, because "it fails" is not a design. What artifact does it emit, because a control that emits nothing does not exist as far as audit is concerned. And who operates it at 3 a.m., from the runbook, without the author.

Then a standing red-flag list: side-effecting tools with no idempotency story, restricted data with no residency statement, an irreversible design with no autonomy band, no retry policy, no SLO.

The rules are deliberately obvious. The value is that they are standing — the same list every time, so a reviewer having a bad day still catches the missing blast radius, and an author knows in advance what will be asked, which improves the document before the review happens.

And I would require the design document to be structured rather than prose, because a prose document can omit the blast radius without anyone noticing and a typed one cannot.

Q6. "You are presenting to Cyber, and then to the CTTO. What changes?"

Almost everything, and bringing the same deck to both is the standard mistake.

Cyber wants the threat model and what a compromise actually reaches. I bring the identity model, the containment argument, and the red-team results — scored on containment rather than detection. And the thing that loses the room is claiming we prevent prompt injection, because they know that is not possible. The credible answer is that an injected instruction's best outcome is a read.

The CTTO wants unit economics and direction: cost per successful action, the capacity forecast against provider quota, concentration risk with the exit readiness. Engineering detail loses that room.

The other three are equally distinct. Enterprise Architecture wants a convergence story. Model Risk wants to know what the model is — and "the weights" is the answer that fails there. Internal Audit wants the artifact a control emitted on a specific date, not a description of the control.

Q7. "How do you make sure post-mortems change anything?"

Track action-item completion. Everybody writes post-mortems; the completion rate is the only number that distinguishes a process from a writing exercise.

Every action has a named human — "the team" completes nothing — and a due date, because without one "open" is indistinguishable from "abandoned". Dropping an action is legitimate and must be explicit with a reason, and dropped items leave the denominator because they were decided rather than missed.

I also watch the age of the oldest unresolved action rather than only the rate, because a hundred fresh actions is a busy quarter and one six-month-old action is a signal.

And two AI-specific questions in the template: was this deterministic — because if not, you are narrowing a distribution rather than fixing a bug, and "we fixed it" needs a measurement — and what did the eval suite not catch, because every quality incident should produce a new eval case.

Q8. "How do you raise the engineering floor without becoming the bottleneck?"

By turning standards into controls. A rule in publish() beats a rule in a wiki: the tool registry that refuses a tool without a declared side-effect class teaches the standard and enforces it, and it does so at 2 a.m. when nobody is reading the wiki.

Paved roads over policing — a module that produces a compliant namespace in one command competes with a portal click; a checklist does not.

Reviews with a standing checklist rather than with taste, so any senior engineer can run one to the same standard, which is what removes me from the critical path.

And pairing on the first one, reviewing the second. The highest-leverage thing I can do is walk somebody through their first ORR or first ADR and then review their second rather than write it.

18. References

Operating models and leadership

SRE practice

Decision records

Testing and quality