Evolve these 5 engineering skills to succeed as a manager
Debugging, code reviews, continuous deployments, refactoring, and pair programming.
Most engineers avoid management like it’s an old Java project nobody wants to refactor. It is messy, full of unpredictable problems, and, worst of all there rarely is an undo button.
Yet, many engineers end up in management without planning to.
You write code, get better, become a senior, then a tech lead… and suddenly your manager quits.
“Can you take on some leadership responsibilities while we find a replacement?”
Sure, why not… But the replacement never comes.
And just like that, you’ve gone from building software to building a team without any training or guidance.
Outline
- Most companies are terrible at growing Engineering Managers
- Engineering skills mapped to manager responsibilities
- But people are not code
- How to get better at managing
- Not everyone needs to be a manager (and that’s okay)
- Final thoughts
- Some useful links from me
If you enjoy posts like this, consider supporting my work and subscribing to this newsletter.
As a free subscriber, you get:
✉️ 1 post per week
🧑🎓 Access to the Engineering Manager Masterclass
As a paid subscriber, you get:
🔒 50 Engineering Manager templates and playbooks (worth $79)
🔒 A weekly "What would you do?" scenario & breakdown from real challenges EMs face
🔒 The complete archive
Most companies are terrible at growing Engineering Managers
Big tech budgets, fancy offices, and mountains of data don’t make great products.
Strong engineering does. And strong engineering needs strong management.
But:
Studies from Deloitte and McKinsey show that 66% of employees quit because they don’t see growth opportunities.
Most companies don’t train their Engineering Managers.
Hiring great engineers is tough. Keeping them long enough and spotting the ones who can become great managers is even tougher.
This is why so many teams suffer from bad management. And this is why if you step up, you’re already ahead of most managers in the industry.
Engineering skills mapped to manager responsibilities
Think of management as another system to debug. You’re still solving problems, just with people instead of code.
Debugging → Solving people challenges
Engineers read logs, spot patterns, and find root causes.
Managers analyze team behaviour, identify blockers, and fix issues before they spread.
Code reviews → Giving feedback
A great PR review is clear, constructive, and helps the developer improve.
A great 1-on-1 does the same thing for a teammate’s growth.
Continuous deployment → Continuous communication
Small, frequent updates keep software stable.
Regular, open conversations keep teams aligned and projects on track.
Refactoring → Improving team processes
Bad code doesn’t fix itself. Neither do bad team habits.
The best managers spot inefficiencies and improve things over time.
Pair programming → Mentoring
Pairing helps engineers level up.
Mentoring helps future managers grow.
But people are not code
Managing people is harder than managing services (in most cases).
Software doesn’t have emotions, personal goals, or bad days.
One of the biggest shocks new managers face is how lonely the job can be.
It can feel like you’re no longer just “one of the team”.
You have to give tough feedback, make hard decisions, and handle conflict.
It’s easy to feel overwhelmed. And also remember:
You’re not supposed to have all the answers.
How to get better at managing
If you’re just starting out as manager here’s what can help:
Find a mentor. Every great manager has one. Look for someone who’s been through the same struggles. (I can help you with that)
Ask for feedback. Use anonymous surveys or direct conversations to see what’s working (and what’s not).
Join meetups. Other managers have the same problems as you. Learn from them.
Keep coding. You don’t need to give up coding. Staying close to it can help you make better decisions.
Read “Radical Candor” by Kim Scott. Learn how to give honest, helpful feedback without being a jerk.
Read “The Manager’s Path” by Camille Fournier. Learn about each stage in the journey from engineer to technical manager.
Not everyone needs to be a manager (and that’s okay)
Some engineers should not go into management. And that’s fine.
However, many companies treat management as the only way to grow.
Great companies build dual career paths:
Technical (IC path): Staff Engineer, Principal Engineer, Distinguished Engineer.
Management (EM path): Engineering Manager, Director of Engineering, VP of Engineering.
If you love coding, stay technical.
If you enjoy mentoring and solving team challenges, try management.
Both paths are valuable. Both paths are needed.
Final thoughts
Being a great manager isn’t about having all the answers.
It’s about listening, adapting, and making your team better every day.
And if management isn’t for you? That’s okay too.
Just don’t let someone else decide your career path for you.
What are your thoughts?
Some useful links from me
👨💻 Become a better Software Engineer with CodeCrafters (use my partner link to get 40% off and build your own Redis, Git, Kafka and more from scratch).
🎯 Book a mock interview with me (System design or Behavioural & Leadership) to smash your next real interview!
👋 Let’s connect on LinkedIn!
What can you advise to someone who wants try the management path?
Completely agreed. There are rarely companies that have an established onboarding or training program for new EMs. Even if they have, each team is different and it’s hard to do thorough onboarding. New EMs are lucky if they have an onboarding buddy or mentor. But that is also rare.
As it states, the best way to learn is to actively looking for advices, asking for continuous feedback, and finding learning resources like newsletters and books. EMs need to be resourceful to make solid progress.