b8c.io All articles
Product & Delivery

Blameless Doesn't Mean Toothless: What Incident Reviews Look Like When They Actually Work

b8c.io
Blameless Doesn't Mean Toothless: What Incident Reviews Look Like When They Actually Work

The blameless postmortem is one of the best ideas in modern software engineering. It's also one of the most thoroughly misapplied.

The original insight was sound: when engineers fear punishment, they hide information. Hidden information prevents real learning. So you remove the punishment, create psychological safety, and suddenly people tell you what actually happened instead of what makes them look least responsible. That's genuinely valuable. The problem is that somewhere between the SRE handbook and your Tuesday afternoon incident review, "blameless" got quietly redefined as "consequence-free"—and those are very different things.

A lot of teams are now running postmortems that are technically blameless, genuinely safe, and completely useless. The same incidents recur. The action items never get done. The document goes into Confluence and nobody reads it again. And when the next incident happens, someone pulls up the old postmortem and notices the contributing factor was identified six months ago and nothing changed.

That's not psychological safety. That's theater.

How "Blameless" Became a Shield

Here's the mechanism: when a team internalizes blamelessness as the highest value in an incident review, it creates implicit pressure to avoid any statement that could be read as critical of an individual. "The deploy introduced a regression" becomes "the system allowed a regression to reach production." "The engineer didn't follow the runbook" becomes "the runbook wasn't sufficiently prominent in the tooling."

Sometimes those reframings are accurate. Systems should be designed to catch errors before they reach production. Runbooks should be easy to find. The systems-thinking lens that blameless culture encourages is legitimately useful.

But sometimes the reframing is just face-saving dressed up in methodology. Sometimes a specific decision made by a specific person caused the outage, and the team knows it, and everyone agrees to talk around it because naming it would feel like blame. The result is an action item that says "improve deployment guardrails" when the actual learning is "we need to have a direct conversation about how this person approaches change management."

Psychological safety is supposed to make hard conversations possible. When it's used to make hard conversations unnecessary, it's functioning as an avoidance mechanism, not a learning mechanism.

The Stakeholder Performance Problem

There's a second failure mode that doesn't get talked about enough: postmortems written for an audience.

When leadership attends incident reviews, the dynamic shifts. Engineers are no longer just trying to understand what happened—they're managing up, framing the narrative, and making sure the conclusion lands in a way that doesn't trigger a broader org-level reaction. The postmortem stops being a diagnostic document and starts being a press release.

This is why so many postmortem action items read like process improvements rather than honest assessments. "Add a checklist to the deployment process" is a safe recommendation. It implies the process was the gap, not a judgment call or a skill gap or a cultural norm that nobody wants to name. It's specific enough to sound actionable and vague enough to be unverifiable.

The real question—"why did the engineer decide to proceed despite the warning sign in the logs?"—doesn't make it into the document because the answer might be "they were under pressure to ship and made a judgment call that didn't pan out," which opens a conversation about incentives that nobody in the room wants to have with the VP present.

What Accountability Without Blame Actually Looks Like

The goal isn't to find someone to punish. The goal is to understand decisions well enough to change them. Those are different things, and conflating them is what created the pendulum swing toward pure blamelessness in the first place.

Accountability in a postmortem context means being willing to say: this decision was made, by a person, with the information they had, and here's what we want that decision to look like next time. It means distinguishing between a reasonable decision that had a bad outcome (the system needs to make better options available) and an unreasonable decision that had a bad outcome (the person needs support, feedback, or coaching).

That second category is the one blameless culture struggles with. It requires someone in the room to say "given what was known at the time, this was the wrong call"—not as punishment, but as an honest assessment that creates the conditions for genuine improvement. That statement can be delivered with compassion and without shame. But it has to be delivered.

Running a Review That Actually Changes Something

A few structural changes that push incident reviews toward usefulness:

Separate the timeline from the analysis. The factual reconstruction of what happened should be ruthlessly objective. The analysis of why it happened is where judgment comes in. Keeping these distinct prevents the analysis from quietly reshaping the facts to be more comfortable.

Ask about decisions, not events. "The service went down" is an event. "The on-call engineer decided not to roll back after seeing the error rate spike" is a decision. Decisions are where learning lives. Events are just the consequences.

Make action items owned and dated. An action item without an owner and a due date is a wish. If your postmortem action items don't have both, you already know they're not going to happen.

Follow up at 30 days. The most useful thing you can add to your incident review process costs almost nothing: a calendar event 30 days out to check whether the action items got done. If they didn't, that's information. Either the items weren't actually important, or something in your org is preventing follow-through. Both of those are worth understanding.

Run the review without the VP. Or at minimum, run a working session without senior leadership before the formal review. Engineers talk differently when they're not managing up. The working session is where the honest version of the story gets assembled. The formal review can present conclusions. But if the honest version only exists in a Slack thread that nobody documented, it'll be gone by the time the next similar incident happens.

Blameless culture was a correction to a real problem. Blame-driven incident reviews genuinely do suppress learning and drive information underground. That problem was worth solving.

But the correction overshot. A postmortem that protects everyone's feelings while the same failure modes keep recurring isn't blameless—it's just useless. The goal was always to learn faster. If the process isn't producing that, the process needs to change, regardless of what we call it.

All Articles

Related Articles

API Docs That Lie: The Documentation Drift Problem Quietly Wrecking Developer Trust

API Docs That Lie: The Documentation Drift Problem Quietly Wrecking Developer Trust

Twelve Repos, Four Languages, One Bug: The Hidden Velocity Tax of Distributed Systems Debugging

Twelve Repos, Four Languages, One Bug: The Hidden Velocity Tax of Distributed Systems Debugging

The Invisible Tax on Your Engineering Team: Why Fragmented Work Is Killing Real Output

The Invisible Tax on Your Engineering Team: Why Fragmented Work Is Killing Real Output