Your Senior Engineers Don't Need a Career Ladder — They Need a Reason to Stay

Your Senior Engineers Don't Need a Career Ladder — They Need a Reason to Stay

I’ve been leading engineering teams for over eleven years. In that time, I’ve never lost an engineer I didn’t want to lose.

I’m not saying that to brag. I’m saying it because it surprises people, and when they ask how, I never have a satisfying answer. There’s no framework. There’s no retention programme. There’s no career ladder with carefully defined levels and competency matrices. There’s just a way of working that, apparently, makes people want to stick around.

[Read More]

The Build vs. Buy Decision Is Never About the Tech

The Build vs. Buy Decision Is Never About the Tech

Last month I stood in front of my engineering team and told them that the cross-platform build we’d spent weeks perfecting, the one that output our Qt application for Windows, macOS Intel, macOS ARM, Linux x86-64, and Linux ARM64 from a single CI pipeline, was being reduced to Linux x86-64 only.

They looked at me like I’d lost my mind. And honestly, from a pure engineering perspective, I had. We’d done the hard work. The CI was beautiful. The whole team could demo from their own machines. Product could show it on their MacBooks. The CEO could run it on his Windows laptop. It was one of those rare engineering achievements where everything just worked.

[Read More]

Technical Debt Is a Leadership Problem, Not an Engineering One

Technical Debt Is a Leadership Problem, Not an Engineering One

Every codebase has skeletons in the closet. You know exactly where they are. That module nobody wants to touch. The database migration that “worked” but left three orphaned tables. The authentication flow that was built as a temporary solution eighteen months ago and is now load-bearing infrastructure. You know where all the bodies are buried because you helped bury some of them.

The engineers know too. They bring it up in retros. They mention it in 1:1s. They write tickets that sit in the backlog with labels like “tech-debt” and “cleanup” and “please-for-the-love-of-god.” And nothing happens, because there’s always another feature, another deadline, another client request that takes priority.

[Read More]

I'm a CTO Who Still Writes Code (And I'm Not Sorry)

I'm a CTO Who Still Writes Code (And I'm Not Sorry)

Last Tuesday I mass-deleted a hundred lines of Python that I’d spent two days writing. Not because the code was bad. It was actually pretty elegant, if I say so myself. I deleted it because I realised I’d spent two days solving a puzzle that I should have handed to my team on Monday morning.

I love solving puzzles. That’s the problem.

The early days are different

When you’re a co-founder getting an idea off a whiteboard and into a working demo, you should be writing code. You should be writing CI pipelines. You should be debugging at 11pm with a cold coffee next to your keyboard. You should be doing devops, handling support tickets, and deploying on Fridays because there’s nobody else to do it.

[Read More]