Skip to content

Delivery Systems Over Checklists

February 21, 2026

  • delivery
  • leadership
  • systems

The most common mistake I see in engineering teams, and one I made myself, is treating slow delivery as a speed problem.

It usually isn’t. It’s a system problem.

What a checklist culture feels like

You know you’re in a checklist culture when the team’s response to a missed deadline is to add more steps to the process. There’s a post-mortem. Items get added to a list. A new field appears in Jira. A recurring reminder gets scheduled.

None of it addresses why the deadline was missed. It just adds friction to every future delivery in exchange for the feeling that you’ve done something about it.

I ran a team like this for about a year. We had a detailed sprint checklist. QA steps, deployment steps, release notes steps. By the end of the year, the checklist had 27 items and the team hated Fridays. We were slower than when we started.

Where checklists actually work

Checklists are valuable in two contexts: exact repetition with high stakes (pilots, surgeons, deployment rollbacks), and onboarding new people to established procedures.

Software delivery is neither. The work changes every sprint. The team composition changes. The product changes. A checklist built for last quarter is a liability this quarter: it tells you what to do without telling you why, so nobody questions it when it stops making sense.

What a system looks like instead

A delivery system answers a different question than a checklist. Not “what steps do we follow?” but “what conditions do we need to maintain for the team to ship consistently?”

The conditions I’ve found that matter most:

Clear ownership at the ticket level. Not team ownership. Person ownership. If two people own something, nobody owns it.

A shared definition of done. Not a checklist, but a shared understanding of what “done” means. This sounds obvious and is almost never explicit. I’ve watched teams argue about whether something is done in production planning meetings because nobody wrote it down.

A weekly rhythm that surfaces blockers, not status. Status is what you’ve done. Blockers are what’s preventing the next thing. Most standups surface the wrong one.

A post-release retro with exactly one improvement. Not a list of improvements. One. The one you’ll actually implement before the next retro.

The uncomfortable part

Building a delivery system means resisting the urge to add more process when something breaks. The instinct is to patch the gap. The right move is usually to ask whether the underlying system broke down first: ownership clarity, definitional alignment, rhythm.

In my experience, it almost always did.

EN

Keyboard shortcuts

Navigation

  • Home gh
  • Writing gw
  • Projects gp
  • Products gd
  • Stack gs
  • About ga

Actions

  • Toggle theme t
  • Switch locale l
  • Toggle shortcuts ?
  • Close Esc