You own the human approval gate for infrastructure-as-code changes across many teams. How do you decide which changes require an approval, and what makes such an approval meaningful rather than a rubber stamp?
answer
- approvals cost attention, and attention runs out
- route on blast radius, not volume
- the approver must be able to decline
- owners approve, not distant boards
- unreadable diffs make gates theatre
basics
~20 sGate on the content of the diff rather than on every change: destructive, stateful, security-relevant and production changes need a human, additive and reversible ones do not. An approval is meaningful only when the approver can read the diff, is accountable for the resource, and can realistically decline.
solid answer
~40 sApprovals cost attention, and attention is finite, so gating everything guarantees rubber-stamping. I route on the diff's content: anything containing a destroy or replace of stateful or shared infrastructure, anything touching identity, network exposure or data protection, and anything in production goes to a human. Additive, tag-only or otherwise reversible changes auto-approve with automated checks alone. The approver should be someone who gets paged for that resource, not a central board that cannot read the code, and the author should not be their own sole approver in production. Then the gate has to be usable: small diffs, destructive actions highlighted, no formatting noise. If reviewers face a thousand lines weekly, they will approve without reading, and you have paid the throughput cost for none of the safety.
go deeper
When you are asked to approve an infrastructure change, actually read the proposed actions and ask about anything being destroyed. If you do not understand the diff, say so instead of approving.
Be able to argue why gating every change backfires, and describe what makes a diff reviewable: small scope, a summary of destructive actions, and no unrelated noise in the output.
Show how you would route approvals by what the diff contains rather than by ceremony, and how you keep the approver close to the system — the person on call for the resource, not a distant board.
Own the approval budget across the organisation: where gates buy real safety, where automated rules should fail closed instead of asking a human, how reversibility lets you gate less, and how you measure whether the gate has ever changed an outcome.
## What an approval gate is actually for It transfers a decision to a human who has the concrete proposed actions in front of them and the standing to refuse. Everything else about the gate — the ticket, the record, the timestamp — is bookkeeping. If the approver cannot realistically say no, there is no gate, only a delay with an audit trail. There are two failure modes and they pull in opposite directions. Too many gates produce attention exhaustion: approvals become reflexive, people batch unrelated changes into one large approved diff to pay the toll once, and the batching makes each diff harder to review, which makes the reflex worse. Too few gates let an irreversible change through unread. The job is to spend a limited approval budget where it buys the most. ## Gate on content, not on volume The useful question is not "is this production?" but "what does this diff contain, and can I undo it?" A workable routing: - **Always human**: destroy or replace of anything stateful or shared; changes to identity and permission boundaries; changes that widen network exposure; changes to backup, retention or encryption settings; anything in the production environment that is not on the auto-approve list. - **Automated checks only**: purely additive resources in non-production; tag, label and description edits; changes bounded by an autoscaler; version bumps of a module already promoted through lower environments. - **Blocked outright, not approved**: actions that no approval should authorise, like destroying a resource declared undeletable. If the answer is always no, encode it as a rule and let the preview fail rather than asking a human every time. That last category matters more than people expect. A gate should not be the place where the organisation's actual rules live; rules that never legitimately vary belong in automated checks that fail closed, and the human gate is for judgment calls the machine cannot make. ## Who should hold it The team that gets paged for the resource. Approval by an owner aligns the incentive: the person accepting the risk is the person who eats the consequence. A central change-advisory board reviewing diffs for systems it does not operate approves everything within a month, because it has no basis to refuse. Separation of duties is worth keeping for production: the author should not be the only approver. But keep it proportionate — a second person from the same team who understands the system is worth more than a senior person from another one who does not. ## Make the diff reviewable, or the gate is theatre This is the part most organisations skip, and it decides the outcome more than the policy does. - Keep changes small. A five-resource diff gets read; a four-hundred-line one gets skimmed. - Split large estates so one change touches one bounded area. - Surface a summary first — counts of create, update, replace and destroy — and highlight the destructive lines. - Eliminate noise. Formatting churn, unstable ordering, and diffs that show unrelated drift every run all teach reviewers that most of the output is ignorable, and that lesson generalises to the one line that mattered. - Give the reviewer the *why*: the linked change description matters as much as the actions. ## The gate is one control among several Approval sits alongside automated rule evaluation of the diff, post-apply verification, and reversibility. They trade off: a change you can undo in one minute needs far less pre-approval than one you cannot undo at all. Investing in reversibility — snapshots before destructive applies, tested restore paths — buys you the right to gate less, which raises the quality of the gating you keep. ## Knowing whether it works Track how often the gate actually changes an outcome. If no approver has declined or amended a change in six months, the gate is not protecting you; it is a tax whose only output is a timestamp. Also watch approval latency and where changes queue: if teams wait a day for approval, they will batch, and batching is the thing that makes diffs unreviewable. Both signals should feed back into what gets auto-approved. ## Interview framing Make the case that approvals are a scarce resource, route them by blast radius and reversibility, put them with the people who operate the system, and then talk about diff readability as a first-class investment. Ending on measurement — a gate that has never stopped anything is theatre — is what distinguishes an owner's answer from a policy recital.
- Your reviewers approve every diff within a minute of it appearing. What do you change?Treat it as a signal that the gate is mis-targeted, not that the people are careless. Reduce the number of changes that reach a human by auto-approving the reversible and additive ones, so the remaining diffs are rare enough to warrant attention. Then attack readability: smaller changes, a summary of destructive actions at the top, no formatting noise. Finally, check that approvers actually own the systems they are approving.
- When is an approval gate the wrong tool entirely?When the answer is always no. If a class of change should never be authorised — deleting a protected database, opening a management port to the internet — that belongs in an automated rule that fails the preview, not in a question put to a tired human at 6pm. Gates are for judgment calls with a legitimate yes and a legitimate no; invariants should be enforced mechanically.
- How does the reversibility of a change affect how much gating it deserves?Directly. The cost of a wrong decision is what you are insuring against, so a change you can undo in a minute justifies far less pre-approval than one that destroys data permanently. That makes reversibility an investment that buys throughput: tested restore paths and snapshots before destructive applies let you shrink the set of changes that need a human, which raises the attention available for the ones that still do.
saying these in an interview costs you the question
- Requires approval on every change and calls that governance
- Treats the approval record as the goal rather than the decision
- Gives approval rights to people who cannot read the diff
- Assumes a human gate substitutes for automated checks that fail closed
- Believes adding more approvers makes a change safer