A design disagreement between the payments team and the platform team over a service boundary has been unresolved for three weeks. It is escalated to a director who decides it in a twenty-minute meeting, and the decision is a good one. Trace what happens to the next six disagreements, and name the mechanism that stops the pattern.
Show the full answer Hide the answer
What the escalation actually taught
Two paths were measured in public. Local resolution: 3 weeks and no decision. Escalation: 20 minutes and a decision. Everyone in both teams, and everyone who read the summary, now has an estimate of the cost of each path, and the estimate is not close.
Nothing about this requires bad faith. A rational engineer who wants the work to proceed will escalate earlier next time, and will be right to.
Where it amplifies
The next disagreement reaches the director at week two instead of week three. The one after that at week one. Within two quarters the pattern is visible in the calendar:
- Supply. A director can absorb perhaps 2 contested technical decisions a week with enough context to decide well - roughly 4 hours including reading.
- Demand. Twelve teams generating one contested boundary decision a month each is 12 a month against a capacity of about 8. The queue grows, and in production the first visible symptom is a decision at the back of it waiting longer than the 3 weeks that started this.
- Quality falls as volume rises. The first decision took 20 minutes because the director had read three weeks of argument. At 8 a week there is no reading, and the decision becomes whichever team argued better in the room.
- Context leaves the loop. The engineers with the most context stop investing in the argument, because the argument no longer decides anything. That is the expensive part and it is invisible for a year.
What the user sees
Nothing, for two quarters. Then: boundaries that follow organisational politics rather than domain shape, a rising number of cross-team changes per feature, and an architecture function whose main output is scheduling meetings with a director.
What stops it
Not "escalate less", which asks people to choose the slower path voluntarily.
Escalate the decision-rights question, not the technical question. The director's twenty minutes should produce "payments owns this boundary and will decide it by Friday" rather than the boundary itself. The same meeting, the same cost, and the precedent it sets is the opposite one: the next disagreement in that area has a named local owner, so escalating it returns nothing.
Two mechanisms make that stick:
- A published default: if a decision in a named area is unresolved after ten working days, the owning team decides and the dissent is recorded with a revisit trigger. The deadline is what converts deadlock into a decision without a director.
- Measure the escalation rate, not the escalation outcome. Escalations per quarter rising while team count is flat is the signal that decision rights are unassigned somewhere, and it points at which area.
When escalating is the right call
When the disagreement is genuinely about something neither team owns - budget, a customer commitment, a regulatory deadline - escalation is not a workaround, it is routing to the accountable party. And when the carrying cost of delay is large and measurable, compute it: two teams part-blocked for 3 weeks is on the order of 6 to 10 engineer-weeks, and a cost that size justifies paying the precedent once, provided you pay it by assigning ownership rather than by deciding the boundary.
Common weak answers
- "Tell people to resolve things locally." This asks engineers to choose the slower path voluntarily, against an incentive the organisation just demonstrated. It fails quietly, because the behaviour it asks for is unobservable.
- "Rotate the arbitration among senior engineers." The queue moves rather than shrinking, and the decisions get worse because the new arbiters have less authority to make them stick. Teams then escalate the arbitration itself.
- "Document the decision well so it is not relitigated." A good record prevents the same dispute recurring and does nothing about the next one. The thing that broke is unassigned decision rights, not memory.