Skip to main content

9 posts tagged with "Leadership"

View All Tags

We're Fine. It's Them.

· 17 min read
The Insular Health Fallacy

You know the feeling. Your team's retros are positive. Velocity is stable. People genuinely like working together. Psych safety is high — folks admit mistakes, ask dumb questions, challenge each other without it getting weird. By every internal measure, you're a healthy, high-performing team.

And yet.

Every dependency is a nightmare. Every cross-team interaction feels like pulling teeth. You're waiting three weeks for a PR review from another squad. Their API keeps breaking yours. Planning sessions with them feel like hostage negotiations. And the conclusion your team reaches — naturally, inevitably — is: "We're fine. It's them."

I've been in this room. Multiple times. On both sides of it. And I've come to believe that this specific pattern — a team that feels healthy internally but generates friction at every boundary — is one of the most dangerous failure modes in engineering orgs. Not because it's dramatic, but because it's invisible. The team genuinely is healthy by local measures. That's what makes it so hard to diagnose.

I've started calling this the insular health fallacy — the belief that internal team health equals systemic health. The team isn't broken. The interface is broken. But from inside, it looks like everyone else is the problem.

Social psychology has a name for the underlying mechanism: in-group bias. The minimal group experiments in the 1970s showed that people will favour their own group — even when the groups are assigned randomly. Give people a label, any label, and they'll start preferring "us" over "them." Now imagine what happens when "us" is a team that's genuinely built trust, shared context, and psychological safety over months or years. The in-group cohesion becomes a fortress. And fortresses, by design, keep people out.

Reward the Team, Lose the Stars. Reward the Stars, Lose the Team. Now What?

· 15 min read
The Reward Paradox

A debate breaks out among leaders. The team just shipped something significant. Someone suggests giving "champion points" to the person who drove it. Someone else pushes back — "It was a team effort. Reward the whole team." A third person raises the obvious: "If we reward everyone equally, what's the incentive to go above and beyond?"

I've been in this room. It was equal parts funny and frustrating — everyone had a strong opinion, everyone had a good argument, and nobody was wrong. That's the problem.

This isn't a values debate. It's a design problem.

Your Agents Are Running. So Why Are You Still Exhausted?

· 10 min read
Cognitive Load in the Age of Agents

In software engineering, cognitive load refers to the total amount of mental effort being used in a developer's working memory to complete a task. Think of it like the RAM in a computer: if you try to run too many heavy applications at once, the system slows down, glitches, or crashes.

When a developer's cognitive load exceeds their mental capacity, productivity drops, the quality of code suffers, and the risk of burnout increases.

Your Governance Framework Is Protecting You From Progress (A $5.4 Billion Case Study)

· 16 min read
Governance Theatre

Somewhere in your organisation right now, an engineer wants to use a tool. It's open source. It's battle-tested. Half the Fortune 500 runs it in production. But first, they need to fill out a vendor assessment form, get InfoSec sign-off, wait for procurement to confirm there's a contract in place, and then — maybe, in four to six months — they'll get a "yes" or a "no" from a committee that's optimised for risk avoidance, not risk management.

This isn't an argument against governance. Governance matters — especially in regulated industries. This is an argument that the way most enterprises do governance today is broken: optimised for the appearance of control rather than the reality of it. The question isn't whether to govern. It's whether your governance framework is actually reducing risk — or just reducing speed.

Meanwhile, the startup down the road shipped the feature last Tuesday.

But hey, at least you've got a contract. You can sue them if things go wrong. Right?

Everybody Is Junior in Something (Including the Person You Just Made Lead)

· 14 min read
Everybody Is Junior in Something

A new project kicks off — migrating a critical system to a platform nobody on the team has used before. Well, almost nobody. There's one person who's built on it. Shipped production workloads. Knows the failure modes.

They don't get the lead. The person with the most years of experience does. The senior. The one with the title.

Everyone defers. The titled lead chairs the meetings, makes the architecture calls, approves the designs. The person who actually knows the platform sits three rows back on the call, unmuted only when asked a direct question.

Six weeks later, the project is behind. Decisions are being revisited. The team is frustrated but can't quite name why.

You've seen this movie. Maybe you've been in it. Maybe you've been on both sides.

How to Guarantee Your Team Fails

· 19 min read
The Inversion Playbook

An inversion manual for engineering leaders

I'm a new parent. I have no idea how to be a good father. I've read zero parenting books. I have no framework, no methodology, no "5 pillars of effective fatherhood."

But I know what a bad father looks like. I know what breaks trust. I know what makes a child stop talking to you. I know what happens when you're physically present but emotionally absent.

I don't have a playbook for getting it right. I have a very clear list of things to never do.

Turns out, that's enough. And it applies to more than parenting.

The Prisoner's Dilemma Is Why You Got Ghosted on Slack (wait, Teams?)

· 10 min read
The Prisoner's Dilemma at Work

You send a Slack message to another team. It's a reasonable request — a small API change, maybe a code review, maybe just a question about how their service handles edge cases. You write it clearly. You tag the right person. You even add a polite emoji. And then... nothing. No reply. No acknowledgment. Just the quiet hum of a message marked as read and promptly ignored.

You're not being ghosted because they're bad people. You're being ghosted because the game they're playing rewards ignoring you.

This isn't a people problem. It's a math problem.

Between What Is Said and What Is Meant — Lots of Love Is Lost

· 17 min read
The Communication Iceberg
The Communication Iceberg
What people see vs. what drives everything
💬 What We Say
"I'm fine." "No worries." "Sure."
🎭 How We Say It
The tone. The pause. The reply that took 6 hours.
🔒 What We Actually Mean
The real message, encoded in safe language.
❤️‍🩹 What We Need But Can't Say
To be seen. Valued. Chosen. Safe. Loved.

"Most conversations happen above the waterline. Most meaning lives below it."

"Between what is said and not meant, and what is meant and not said, most of love is lost." — Khalil Gibran

It never starts big.

It starts with a Tuesday evening. You come home tired. Your partner asks, "How was your day?" You say, "Fine." What you meant was: "Exhausting. I felt invisible in that meeting. I could use a hug." But "fine" was easier. Quicker. Safer.

Or it starts in a standup. Your lead asks, "Any blockers?" You say, "Nope, all good." What you meant was: "I've been stuck on this for two days and I don't want to look incompetent." But "all good" was safer. Faster. Less exposed.

One "fine" costs nothing. One "all good" costs nothing. But 365 of them? That's a year of someone living next to you and not knowing you. Or a year of your team thinking everything's on track when it isn't.

This is the daily drift — the tiny, almost invisible gap between what we say and what we mean, repeated so often it becomes the distance between two people who once understood each other without words.

A caveat before we go further: not every "fine" is a suppression. Sometimes it genuinely means fine. Sometimes it means "I don't have the energy to unpack this right now" — and that's a healthy boundary, not a failure. The drift happens when brevity becomes the default, when filtering stops being a choice and starts being the only mode.