Systems, not heroes

Over the years, I’ve watched teams succeed and fail in interesting ways. The ones that consistently perform well share something in common: they’ve figured out how to move beyond depending on individual heroes and built systems that help everyone succeed.

Two Types of Team Communication

Most teams operate with two layers of communication. There’s the obvious stuff – documented processes, scheduled meetings, clearly defined roles. Then there’s everything else: the unspoken understandings about who to ask for what, when to escalate something, how things really work.

When too much important stuff lives in the implicit layer, new people struggle and knowledge gets trapped in certain people’s heads. The teams I’ve seen work best are deliberate about surfacing these hidden patterns and deciding which ones need to become explicit processes.

Split the problem into two

When something happens – good or bad – there are really two questions to answer. First, how do we handle this right now? Second, what would ensure this outcome next time?

We used to have the same conversation every time we decided whether something was ready to go live. Everyone had different definitions of what “good” looked like. We’d debate observability, testing coverage, app store screenshots, all from scratch each time.

The immediate problem was making that specific decision. But the bigger question was: how do we avoid rehashing this debate every time? We ended up creating a simple checklist that we could just refer to instead.

This works for the good-stuff too. When something goes particularly well, asking “how do we make sure this happens again?” encourages heroes to immortalise their knowledge in a process, rather than keeping it in their heads.

Why Hero-Dependent Teams Are Fragile

Teams that depend too heavily on heroes have hidden weaknesses. When knowledge gets concentrated in specific people, you get bottlenecks. Other team members don’t develop the skills they need. And the heroes get burned out and leave.

More importantly, challenging a person creates defensiveness, but challenging a process feels completely different. Processes are external things everyone can examine objectively. This makes it psychologically safe to say “this process isn’t working” and actively look for improvements.

What I’ve Learned

Consistently ask both questions. “How do we handle this now?” and “What system ensures this outcome next time?”

This doesn’t eliminate individual skill and judgment – those remain crucial. It’s about creating an environment where good people can do their best work without everything depending on who happens to be available on any given day.

I’m still figuring this out myself, but I’ve seen enough examples now to believe it makes a real difference in how teams perform over time.