Skip to main content

Software Engineering Manager

Three years ago I was promoted from Lead Developer to Software Engineering Manager, and I can still remember how confusing it was at first. I had spent years getting great at one thing — shipping software, owning the technical direction of a product, being the person teammates came to when something was broken — and almost overnight my job stopped being about any of that. The codebase carried on without me. The questions changed. The metrics I used to measure a good day changed too. Nobody handed me a manual, and there isn’t really one to hand out: every team, every company, every set of people you inherit is different, and most of what makes the role work has to be learned in the doing. What I did have, and what I’d genuinely call the difference between sinking and swimming, was a mentor who’d walked the same path and was generous enough to talk me through the parts of the job that nobody writes job descriptions for — the difficult one-to-ones, the political conversations, the slow art of building trust with stakeholders. This blog is my attempt to write down what those three years have taught me: how the work of a Lead Developer and an Engineering Manager actually differ, the skills I had to build almost from scratch, the ones I thought I had but didn’t, and the bits I’m still figuring out. It’s only my perspective — your mileage will vary depending on your team, your company, and your own starting point — but if you’re a senior engineer staring at a similar promotion and wondering what you’re walking into, I hope some of it lands.