There aren't many engineers who aspire to grow into technical Software Engineering Managers. Instead, most seem to lean toward roles like Tech Lead or Architect. Why is that? Well, people often think management is tough. And they’re right. This role goes beyond just being good with technology. It’s easier to tackle technical challenges, but getting people to work together and trust you? That’s where it gets tricky. The real question is: are you up for it?
Being an Engineering Manager or Leader requires a unique mix of skills, and you have to wear a lot of hats to be truly effective. Sure, finding all of these skills in one person is rare, but the good news is—you can always learn and grow. A great engineering manager should always be a learner, someone who’s constantly challenging their past perceptions, staying aware of the tech landscape, being the first user of the product, making decisions, mentoring others, and driving success for everyone involved.
Instead of diving into lengthy books, I prefer to learn from real experiences and advice shared by others. These nuggets of wisdom are often found in journal articles or blog posts, which give me a broader perspective on how others are navigating their roles and what I can do to improve. Below, I’ve curated a list of articles and advice that have helped me on my journey to becoming a better software engineering leader—and I hope they’ll help you too!
Note: There are plenty of reading lists out there, but this one is my personal recommendation based on what I’ve read and found useful.
- Don’t Even Think About Taking That Manager Job If You Can’t Do This
- Lessons Learned in First Year This role is not about the tech. It is also about the tech. It is primarily about the people. Your puzzle is no longer just technology. Your puzzle is humans first and technology next.
- It is not a promotion. It is a career change You exist to think about the bigger picture, to remove roadblocks and eliminate interruptions for the people you work with, to build relationships and trust. You exist to promote the group and individual achievements. Your job is to be a multiplier!
- Servant Leadership - The best managers see blockers coming and act early to prevent them from ever surfacing. They way good QA team stretches the software to its limit, a good manager stretches the requirements to their limit to ensure they’re not broken!
- How to Be a Person Who Can Make a Damn Decision - Often, any decision is better than no decision at all
- What Google Learned From Its Quest to Build the Perfect Team - How often did teammates socialize outside the office?
- Techie to tech lead: My five biggest mistakes - I believed my technical ability entitled me to lead. I wanted to control, everything when I needed to empower others. etc.
- Become a Productive Engineering Manager - (a) work towards “inbox zero”, (b) every meeting has to be in there in calendar, (c) start day with a prioritized to-do list, etc.
- Trust - the Key Success Factor for Teams & Organisations - Marin Dimitrov talks about - why trust is a key success factor for every team and every organisation, some good practices for building, and most common mistakes related to trust building.
- Why Developers Become Frustrated And Companies Can’t Find Talent 🔊
- 1 to 1s - (a) A private space is where you build rapport and trust, (b) to exercise your influence (BY offerING advice, opinions, coaching, and support), (c) manager should do only 30% of the talking - it’s their meeting, (d) check on goals - shows that you are thinking of their development.
- Running effective 1 to 1 meetings Talks about - setting the mindset and free form meeting, asking right questions, making it informal with no agenda,.
- Coaching to retain, create new opportunities for people to learn and grow - [TODO - Find]
- Stop future proofing software - We need X, despite Y being a much easier alternative, because when Z, it will make our lives easier.
- Imaginary Problems Are the Root of Bad Software - Just because they’re fun to solve doesn’t mean they’re relevant
- In Pursuit of Production Minimalism - While complexity is never a conscious design goal of any project, it arises inherently as new features are pursued or new components are introduced. KISS (“keep it simple, stupid”) - a principle that suggests glibly that systems should be designed to be as simple as possible.
- Boost ROI on your next development project! - Ask - to get clarity. Be Vocal - to understand pain points. Cull existing metrics - measure metrics!
- Success For All - [TODO - Ankit]
TODO ref:
- https://twitter.com/jasonlk/status/1037553524408635392
- https://www.linkedin.com/feed/update/urn:li:activity:6447520396286717952/
If you have more time to explore this topic, here are a few more references that you can dive into. Some of these are structured as courses, while others are curated lists from fellow leaders. I haven’t gone through all of them, but they seem promising and worth checking out!
- Management 101 - talks about your first job as a manager, 1-1 with team, when people leave, art of delegation, hiring, etc.