Charity Majors, founder and CTO of Honeycomb.io, gave a talk at QCon San Francisco about the pendulum of being a senior engineer and manager. She discussed the need for managers in technical teams to have engineering credibility and the value that comes from deliberately embracing both senior technologist and manager roles in your career, but not both at the same time.
She started by explaining that management is often seen as an alternative to progressing as an engineer, and that technologists have to choose to move away from their technical focus if they want to advance in their careers. She pointed to some assumptions that are often held about management roles:
- It is a one-way trip
- It is always a promotion
- You make a lot more money
- They should stop writing code
- It’s more prestigious than engineering
- It’s the only real option for career progression
- It’s the only way to have influence
- All managers want to be directors or VPs
- All managers would rather be writing code
- The best engineers make the best managers
She went on to debunk all of these assumptions and explain why the manager and the engineer roles are not incompatible.
She explained that a team deserves a manager who wants to be in the people leadership role, and who can help develop people in their own growth. The manager needs to be genuinely interested in the process, sociotechnical systems, and in nurturing the careers of their team. A manager in a technical environment needs to have coding skills that are strong enough, fresh enough, and modern enough to evaluate the work of the team and resolve technical conflicts.
A technologist growing their career deserves to have career advancement, a role that is challenging, interesting, and not a one-way street. They need to be able to keep their technical skills relevant while retaining options for the direction they want to move in. A career should be long and varied and become more enjoyable over time, not less so.
She said that in order to achieve this, technologists need to be able to build their technical skills, chose to move into a management role for a period of time, and swap back to having a technical focus. Technologists and technical leaders need both skill sets to reach their full potential, and doing so makes them better technologists and better leaders.
She made the point that you don’t have to choose to be one or the other, but that you must choose one at a time. You cannot be both a deep technologist and a manager at the same time. You need to deliberately step between these roles because the fundamental way work is done is different in each role:
Being a good engineer involves blocking out interruptions, focusing on learning and solving hard problems
Being a good manager involves being available to your team and interruptible, even being interrupt-driven
She made the strong point that you must start on the engineering track first – build strong and deep technical skills. You don’t have to be the best engineer, but you do need experience, confidence, and good judgment with enough years on the job that your skills won’t immediately atrophy.
She advised that when taking a management role, commit to it for a minimum of two years, but no more than five years if you want to retain technical credibility. If you plan to swing back and forth, do so before your skills decay to the point you become unemployable.
Talking about the manager as a team member, she said you need to keep your technical credibility, and one way to do that is to write some code. Ignore the oft-stated advice that managers should not write code. However, do not write code on the critical path; rather look for ways you can contribute in small and supporting roles. She suggested taking the on-call backup of first resort for support calls. It will give you insight into the quality of the code base, will let you see how the code is being maintained and will be supporting the team in a very concrete way.
From an organisational perspective, it is important that moving into management is not seen as a promotion so that moving back into engineering is not a demotion. Rather, both shifts are clearly about a career change.
She made the point that you can make the pendulum swing between technical leader and technologist a few times, but eventually you will come to a fork in the road where you need to choose to move into more senior management roles or remain at the technical coalface. Neither is necessarily better or worse than the other, and you must make a deliberate, informed choice about which path will be better for you.
She gave some advice for senior leaders looking to establish, a culture where moving between management and technology is accepted and seen as healthy:
- Don’t build a system where people have to be a manager if they want to be in the loop or have a seat at the table
- Drain authoritarianism out of your hierarchy. Command-and-control management is toxic to any kind of creative flourishing
- Management is overhead, management is a support function. Visualise your hierarchy upside down; support system, not dominance
- If you’re not happy as a manager, don’t do it. Your sacrifice will only hurt yourself and those around you
- Build a long, healthy, flourishing career by leaning into curiosity, love of learning and surrounding yourself with amazing people
She ended by saying that Only you get to decide what is right for you.