awesome-managers
awesome-managers copied to clipboard
Curated list of articles and advice to become an awesome *engineering manager* in software product industry!
awesome-managers
I find that there are very few engineers who want to grow into technical Software Engineering Manager. Instead they prefer to be a Tech Lead or an Architect. People think that management is difficult. Why? Because, this role is not about just the Tech. It is easier to fight with technology, but difficult to get people together and trust you! That's the challenge! Are you in for it?
Being an Engineering Manager or Leader requires to have diverse skill sets and wear multiple hats to be effective. For sure, these skills are rare to find in one person, but we can learn and improve. A great engineering manager/leader should be a constant learner, challenging his/her (past) preception, being aware of the tech-stack, first user of the product, a decision maker, mentoring people and should work towards Success For All!
Instead of reading some multi-page books, I prefer to read real experiences of people and their advices. These are typically available as journal articles or blogs. This gives me diverse prespective on how others are doing thier job, and what should I improve on. Here is a curated list of articles and advices that I found helpful, and shall help you becoming an awesome software engineering leader!
Note: There exists many other reading lists in the wild. This page lists articles that I have read and recommend to my fellows.
I become Software Engineering Manager so...
- 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!
Behaviors
- 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.
Mentoring Your Team
- 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]
Project Execution
- 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.
ROI - Return Of Investment
- 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]
Hiring / Recruiting
TODO ref:
- https://twitter.com/jasonlk/status/1037553524408635392
- https://www.linkedin.com/feed/update/urn:li:activity:6447520396286717952/
If you have more time to spend on this topic, here are a few more references that you can go thorugh and dive deeper. Some of these are structured in courses and others as curated lists from fellow leaders. (I have not gone thorugh each of these personally, but they appear good!)
Courses
- Management 101 - talks about your first job as manager, 1-1 with team, when people leave, art of delegation, hiring, etc.