This article is an excerpt from the Shortform book guide to "The Manager's Path" by Camille Fournier. Shortform has the world's best summaries and analyses of books you should be reading.
Like this article? Sign up for a free trial here.
What do you need to know to get promoted as a software engineer? When transitioning into management from engineering, are there extra skills you need to learn?
As a software engineer, a promotion often means you’ll need to focus on building new skills. These include clear communication, strategic planning, and adaptability. Managing software engineers requires high-level thinking about business strategy, as well as good rapport with your team.
Learn more about the skills you need when transitioning into management from a technical role.
Skill #1: Clear Communication
When going after a promotion in software engineering, you’ll find that there are essential skills you’ll need to build. We’ll start with clear communication. Clear communication is one of the most important skills to have when managing software engineers, according to Fournier. Maintaining clear communication has three main benefits:
- It increases effectiveness by ensuring your team (or teams) understand your expectations and their tasks.
- It improves problem-solving by ensuring you understand your project’s current status. You’ll notice any issues as they emerge and solve them more quickly and easily, instead of only noticing them when they’ve grown more damaging and harder to fix.
- It increases rapport by helping you build relationships with your team members. These relationships help your team feel safe enough to innovate—they’re comfortable in the group, so they can take risks without fear of repercussions if they make mistakes.
How to Listen Carefully
Practice listening. Careful listening is essential because it lets you fully understand the information people share with you. Fournier says that early levels of promotion from software engineering are good for developing this skill because you can focus on listening carefully to small numbers of people.
To listen carefully, be mindful when someone speaks to you. Recognize when you get distracted—for example, by thinking about your weekend plans—and redirect your attention back to the other person. Once they’ve finished speaking, rephrase what they said in your own words to confirm that you understood them correctly.
Explaining Thoroughly
Practice explaining things. Fournier says miscommunication often occurs when you assume another person knows more than they do. This leads to confusion and errors. To communicate clearly, explain your expectations and feedback in detail. Managing software engineers requires that you not only have technical knowledge, but also have the ability to explain it to others.
(Shortform note: Productivity experts add that making assumptions when listening to someone can also lead to miscommunication. You think you understand their point, so you stop paying attention, leading to later conflict. To avoid this, listen to the other person’s entire message and ask questions to ensure you fully understand their expectations and feedback, as discussed above.)
As you’re promoted from software engineer to another position, there will be steps along the way that will give you the opportunity to build your skills. Acting as a mentor before transitioning into management is a good way to develop communication skills because your mentee is likely new to the company or even the industry. The questions they ask and mistakes they make can help you recognize which information you failed to share and correct these gaps, practicing thorough explanations. In turn, the tech lead level expands on this skill by allowing you to practice thorough explanations with a larger group.
(Shortform note: To improve your explanations, recognize when your lack of thoroughness caused your mentee or teammates to need more information or make a mistake. In The Oz Principle, Craig Hickman, Roger Connors, and Tom Smith say that acknowledging how your actions contribute to a situation is taking accountability. Many people struggle with this kind of self-reflection because it’s easier to blame others than yourself—blaming your mentee or teammates for their lack of knowledge or mistakes is more comfortable than blaming yourself for not explaining well. To overcome this reluctance, consider whether you’ve been in similar situations before. Who was responsible then? Could you have done something differently to stop it from happening again? After being promoted from software engineer to manager, you should start to prioritize self-reflection so that you don’t place unfair blame on your team.)
Skill #2: Strategic Planning
The second essential skill for a promotion in software engineering is strategic planning, which includes dividing projects into steps, assigning tasks to your team, and creating a schedule to complete them. A strategic plan accounts for the resources the project requires and accurately reflects your team’s work processes and availability, Fournier says, ensuring your projects are completed properly and on schedule.
(Shortform note: An important part of strategic planning is ensuring your team members have enough uninterrupted time to complete their tasks on schedule. While people often try to multitask, Brian Tracy explains in Eat That Frog, what they’re actually doing is task-switching—and every time you switch from one task to another, it takes your brain 17 minutes to focus on the new task. To work effectively, Tracy recommends dividing your schedule into 60- to 90-minute time slots and assigning a task to each slot. Managers can approach strategic goals this way and can give employees the space to do the same.)
Skill #3: Adaptability
The third essential skill for managing software engineers is adaptability, the ability to handle and create change. This is an important skill for people in the technology industry because the field is constantly evolving, and you must keep up with these changes to succeed. Fournier says adaptability is a skill you’re likely suited for because you’re already used to the technology industry’s constant evolution. After a promotion from software engineering, you can apply that mindset to your managerial style, helping your team and the company become more flexible and successful.
(Shortform note: Some business experts say adaptation is essential for all industries, not just the tech industry, because change is getting faster and more ubiquitous. It’s difficult for company leaders to guide their companies through such uncertainty— especially in industries that don’t continually evolve, as their leaders aren’t used to handling change. To adapt to fast, ubiquitous change, embrace continual learning: Learn new things whenever possible, and use that knowledge to improve the company. By modeling this behavior, you encourage your subordinates to do the same and make the whole company more adaptable.)
———End of Preview———
Like what you just read? Read the rest of the world's best book summary and analysis of Camille Fournier's "The Manager's Path" at Shortform.
Here's what you'll find in our full The Manager's Path summary:
- Why software engineering management is such a difficult field
- Engineering management advice from an engineer-turned-manager
- How to climb the six rungs of the engineering management career ladder