It’s been many years since I stepped into my first engineering management role.
I’d been a confident engineer, but management? That was a whole new game. I’d love to say I was fully prepared, but like most managers, I learned the hard way – through:
Trial
Error
And a healthy dose of self-reflection
Looking back, though, the job hasn’t just shaped my career – it’s changed me as a person.
Here are five lessons that have stayed with me the longest.
1 - Good people are everything
When you find good people, do everything in your power to keep them.
My first task as an engineering manager (EM) was to build a team. I decided to hire a few people I knew. A couple of engineers, a junior project manager, and a business analyst. And you know what? Over ten years later, we’re still working together.
Not because we owe each other anything, but because we respect each other’s work, we trust each other, and we’re in for the long haul.
I’ve come to learn that great colleagues share somethings in common, they:
Take ownership of their work
Learn from their mistakes
Are reliable
Are honest
And have integrity
Skills can be learned. But the qualities that make someone dependable are harder to come by. Once you become a manager and find people like this, you realize how rare they are. And how lucky you are to have them.
I see these relationships a bit like friendship. You might have dozens of casual acquaintances, but one true friend can change everything. The same goes for the right people on your team.
2 - Code is easier than people
If you transitioned from being an engineer to an EM, you probably felt this many times: code might be complex, but it’s not confusing. It behaves the way you expect. You write it, debug it, improve it – you’re in control.
People – not so much!
They bring with them:
Different emotional patterns
Personal histories
Personalities
Conflicting opinions
And changing circumstances
They have lives and events outside of work. None of this is a flaw, it’s just part of being human.
When I first started, I went through this thing many new managers have, called the “know-it-all” phase. I thought with enough logic and speed, I could navigate any team issues. But leadership doesn’t work like that.
Instead, the better you understand people – their drive and blockers – the better you become at helping them succeed. You stop trying to control, and start learning how to support.
I could never say I know it all, but I have learned more about people. Surprisingly, there are a lot of similarities in how we think and in what we do or don’t do. Noticing these patterns helps me manage people better.
3 - You have to do uncomfortable things to grow
When I started, like a lot of people, I was a bit of a people pleaser. After all, it’s natural to want others to like you. But management forces you into uncomfortable spaces, whether you’re ready or not.
You have to:
Make decisions no one likes
Solve conflicts
Request resources from reluctant stakeholders
Give honest feedback, even when it’s tough
Address issues rather than letting them fester
All of these are uncomfortable situations. But if you don’t do the uncomfortable things, you’ll keep living in discomfort.
It’s like checking your credit card statement after a spending spree. You’re afraid to see the number, but the longer you wait, the more interest you’ll end up paying.
I used to avoid confrontation because, as a new EM, I didn’t really know the right way to handle it. Now, I address it as soon as possible.
For example, your higher-ups might keep pushing for new features even though technical debt is piling up and your team has no time to address it. You could say yes, and your team will end up:
Burned out
Discouraged
And annoyed with you for not handling it
Or you can work with your team to find the balance between building new features and solving technical debt. You find the middle ground to keep them motivated and your higher-ups happy.
Is it uncomfortable to have these conversations? Yes. Will they make your life easier? Yes.
4 - Making decisions is hard
One of the biggest surprises that comes with management is how often you have to lead without certainty.
Making decisions is rarely comfortable. You’re constantly choosing between imperfect options. And the bigger your team gets, the more ripple effects each decision creates.
I used to think a good leader was someone who found decisions that worked for everyone. Now, I think a good leader is someone who makes a decision and keeps things moving. It’s like buying a lottery ticket. The only way to win is to buy one.
Sometimes that means choosing between priorities that matter. There’s no playbook with all the answers, and you won’t always feel certain even after you’ve chosen.
Now, I focus on a few key principles:
Make the best call with the context you have
Own the outcome – even if it’s not perfect
Reflect and adjust
And don’t get stuck in regret
Leadership isn’t simple. You won’t always get it right and that’s okay. Having the courage to decide – and to move forward – is what earns your team’s trust.
5 - Values will always win over money
When you’re just starting out, it’s very hard to say no to money. That’s why when you look at new enterprises – businesses, freelancers, or agencies – they oftentimes work with clients who:
Don’t pay on time
Complain about every little detail
And can be just plain rude
But they do it to continue. And I don’t blame them. At that stage, survival comes before alignment.
Over the years, I’ve learned the further you go, the more important it becomes to work in line with your values. That’s why whenever I talk about company culture, I emphasize our values.
I’ve always tried to incorporate my values, from my day-to-day decisions to hiring new people, or choosing clients. We take on clients we respect, and we speak honestly about what’s worth building (and what isn’t). We look for ways to deliver value, not inflate scope.
Because strong values:
Build long-term trust
Create lasting partnerships
And make your reputation an asset
And those are things money can’t buy.
The short story: leadership changed me professionally and personally
Being an engineering manager is a tough job. You’re like this human with ten arms, each one holding a different responsibility. It can stretch you in ways you never imagined.
But it’s also a very rewarding job where you get to learn amazing things, work with inspiring people, and create things that have never existed before.
Over the years, I’ve learned a few things that continue to shape how I lead:
Code is easier than people
You have to do uncomfortable things if you want a comfortable life
And your values will carry you further than money
These lessons weren’t learned overnight. They came from experience, mistakes, and reflection. If you’re just starting out, I hope your journey brings you the same kind of growth both personally and professionally. It won’t always be easy but it will be worth it.
Upgrade your subscription!
Ready to become a paid subscriber? In addition to free weekly guides, free workshops, and free resources, you’ll get full access to all my:
Live Q&As
eBooks and PDF guides
And newsletter guides
Want to get comped for referring someone? Head here.
Looking for a specific guide? Head here.