Starting in 2009, I've been working as a software engineer, lead developer, engineering manager, vice-president of engineering, and chief product officer. During this journey, I had the opportunity to support talented engineers in different career transitions, from individual contributor to lead developer, from lead developer to engineering manager.
I found many shared struggles while mentoring them; that's why I'm writing a series on how to prepare to move into these positions.
What is an Engineering Manager?
An Engineering Manager (EM) is the hierarchical manager of a team of software engineers. This position tends to appear when the engineering team gathers 10+ engineers.
The Engineering Manager's mission is to lead and support software engineers to maximize their positive impact on the expected business outcomes.
Career Path
The Engineering Manager position is usually the first level in the people manager track of the engineering career ladder.
Moving into engineering management is usually a difficult transition to achieve. It requires a critical shift in your focus, moving it from technical leadership to people leadership. People management activities are becoming the most crucial part of your responsibilities.
On this career path, the next levels are the positions of Engineering Director and VP of Engineering.
How to Become an Engineering Manager?
Progressing into engineering management requires prior experience in team leadership, for instance, by acting as a team lead or as a lead developer. This first experience will allow you to train your muscles on animating the delivery of a team, communicating efficiently, and getting more comfortable on project management practices.
If you want to become an engineering manager, you can prepare yourself for this transition by working on the following aspects.
Leadership
One critical aspect of your mission is to lead a team of engineers.
We can question ourselves about the differences and the dependencies between leadership and management. Grace Hopper had an interesting point of view on this question: "You manage things; you lead people."
Leading a team is about inspiring the teammates to collaborate to achieve common goals that create positive business outcomes.
Alignment with the Business Goals
To prepare a shift in engineering management, you need to get a strong understanding of the business goals of your organization. Train yourself to articulate how the team's current project contributes to the success of the company. Train yourself to pitch how this project will make your customers successful.
Doing this kind of exercise is an excellent preparation to align the team efforts with a broader intent and related strategy. It helps to create a clear purpose and to share a common understanding of why we do things.
Make the Team and Individuals Successful
Work on understanding how to help each teammate learning new skills, becoming better at his craft to increase his impact. There are plenty of opportunities to strengthen your mentoring skills. The most efficient exercise is to help your teammates. It's also a matter of posture, always being ready and available to help.
Try to understand the team's dynamics and how we collaborate as a team. Who is comfortable with what, could we be more efficient by working differently?
Master the Work Organisation and Processes
The engineering manager's job is also about leveraging teamwork and making the collaboration smoother.
Get interested in your organization framework, what's our goal-setting structure, how these goals are tied back to our work practices. What are your team's project management and engineering practices? Do you do continuous integration and continuous deployment? What is our software development life cycle? How do we balance build, support, and maintenance?
Working efficiently together requires some shared and well-understood practices, you'll need to master these to move into engineering management.
Leverage Strong Communication Practices
The foundation of efficient teamwork is efficient communication.
A successful engineering manager fosters excellent communication between the team members and with the other teams. To enable excellent communication, you need to draw what are the dependencies between teams. What are the teams' goals and projects, how are they connected? Who needs to know what and when?
Nurturing solid communication practices is a complex challenge. A rock-solid communication system can quickly become inefficient or outdated. Communication highly depends on the context, and as the context continuously evolves, the framework has to be regularly adapted.
The Choice of a New Career
Becoming an engineering manager is a vibrant but hard journey. It requires shifting your attention to different aspects, moving your focus from the technical leadership to the people leadership. It's about starting a brand new career and training different muscles.
- If you're about to make this choice, or just became engineering manager, I wrote The Engineering Manager's Survival Guide, a short free book to help you make a successful transition to engineering management.