I’ve led software engineers for the last ten years. I have mentored or promoted around a dozen developers to team lead, management, and leadership roles.

In my experience, there are a few common pitfalls with new managers.

Pitfall #1: Failing to treat management like a technical skill you must learn

As with software development — in management there are frameworks, practices, even languages. Often new managers fail to dive into studying management the way they might learn a new framework or language.

You are effectively an apprentice manager. Even though you may be senior or experienced to others — your skills are the equivalent of a junior in your role.

The activities to learn your new role are also similar to a junior developer:

Role-playing & Observing Others

Pair programming and code reviews are common parts of training junior resources. Both provide an immense level of value when done properly. In management — these are similar to role-playing and observing others to learn.

  • Who am I as a manager? How should I act?
  • What should my day look like now that I am a manager?
  • What is the type of manager I want to try to be?
  • What are the things I need to care about?
  • What are weaknesses I need to start working on?

One of the most difficult parts of management is people leadership. For new managers you might not even know where to begin.

Every manager finds their own voice and style. The process can take a long time. But — when you are a leader you immediately have a megaphone attached to your voice. Whether you are ready or not.

As an employee how many times have you been stressed out because of something a leader said? Or not said? Now people will be looking at you.

Your words and actions will be analyzed in detail — because you are now responsible for your team and a large part of their future.

Where do you start when you have zero experience?

My first developer management role was a complete accident. A manager left when I was two months into a much lower job and no one else on my team wanted his job. I was the most junior person on my team and had zero idea what I was doing. I didn’t find my voice as a manager until three years later.

Identify people and their behaviors you aspire to learn.

  • Trying to prove my individual value rather than focus on the team
  • Speaking too much and listening too little
  • Failing to celebrate victories

As a strong introvert my whole life, I didn’t have a lot of people skills. Looking back I see many mistakes I made as a new leader. My personal sins were:

  • My father: A traditional southern bank leader — friendly and generous. I admired him because I watched him develop a personality with almost infinite patience. He radiates a feeling of calm and deep care for his team.
  • Our VP of Engineering: I had never seen someone so loved by his team while being honest and authentic. That behavior helped drive a fantastic culture throughout our team. It was one of the highest level performing departments I have ever seen.
  • A Business Analyst Peer: He had an incredible ability to break down ideas, understand different components, and then to communicate them in a simple manner. He helped teach me the importance of simplicity and clarity.
  • As someone with almost zero social skills, I didn’t know where to start. So I looked at people I admired and broke down why I admired them.

The people and behaviors you aspire to are part of your voice.

Spend time reflecting on a number of different leaders and people I admire. In a way you are creating a composite — a combination of the people and traits you admire.

For you — Consider what you aspire to and what you need to improve on.

For myself — I selected these people because I want to be a someone who radiates calm in a crisis, communicates complexity well, and drive a culture of positive improvement with authenticity.

Practice finding your voice by role-playing with a peer or manager

Often when training a new manager as a trainer you run into a unique problem — how do you teach someone how to do something that has no idea what to say?

Even though it can be awkward, role-playing is one of the most powerful ways to help new managers.

What is role-playing and how can you use it?

Role-playing is verbally practicing scenarios that you are about to encounter with a peer or manager.

It is similar to asking a junior developer to whiteboard an example of a system design. In this case you will verbally walk through your conversation.

Some things sound better until you say them out loud to someone else. These give you a way to find your own style of communication. Essentially A/B tests for conversations in a QA environment with test users.

New managers benefit from having practice in a few areas:

  • Performance conversations
  • Annual (or periodic) reviews
  • Rare and visible presentations to leadership
  • Having one-on-ones

It is vital to create a safe place for failure and experimentation. This only works with a foundation of trust. As a new manager it is going to take you a few tries to get what you want to say and can feel embarrassing. Finding your voice is not easy, and requires experimentation and failure.


Many engineering managers can quickly cite the latest framework they have learned or their favorite go to technical resource (other than Google).

Now you need to learn resources for management and leadership.

My favorites from self-study:

An Elegant Puzzle: Systems of Engineering Management by Will Larson Accelerate: Building and Scaling High Performing Technology Organizations by Nicole Forsgren and Jez Humble The Truth About Employee Engagement by Patrick Lencioni As with writing code, the experiences of others can inform and guide you to a point. In order to progress you need to experiment and try different styles as a manager.

Getting feedback from your boss As a manager it can be difficult to get feedback from leaders above you. And often that feedback lacks clarity. Generally, the higher up you go, the less your own boss will understand the details about your day-to-day job.

A skill to develop is how to consistently ask for feedback in the right way. Many leaders avoid critiquing managers under them. Especially in software, it isn’t uncommon for leaders to be somewhat disconnected from the day-to-day. Often that is a business reality. In the same way many developers are overworked, so are managers, and leaders.

The easiest way to seek feedback from other leaders and peers is by asking for feedback for your team. People are usually comfortable talking about how teams can improve in general and how they feel individual people are performing.

And since you are a manager, feedback for your team is feedback for you. You are no longer a leader of one. You need to be as dedicated to your team’s personal development as your own.

Pitfall #2: Repeating what made you successful

One of the most common engineering manager stereotypes is the brilliant jerk: a person who was brilliant in an individual role, but can’t and doesn’t care to manage people.

You might be a brilliant developer — but you aren’t a developer anymore.

“One of the greatest mistakes of successful people is the assumption, “I am successful. I behave this way. Therefore, I must be successful because I behave this way!” The challenge is to make them see that sometimes they are successful in spite of this behavior.” — M. Goldsmith, What Got You Here Won’t Get You There

You are a manager (or maybe you want to be one).

Google started something called Project Oxygen in 2008. They conducted a more than ten year study of what makes a manager great. Google identified ten consistent behaviors in their research.

Project Oxygen identified 10 consistent behaviors of their best managers.

Out of ten — only two revolve around technical skill:

  • Is a good coach
  • Has key technical skills to help advice the team

Managers who spend their time looking at code alone should reflect if they are doing what is best for their team.

You can’t amplify your team while heads down.

As a developer, when it was crunch time you focused on writing code. When it is crunch time as a manager, it is easy to just repeat what you did as a developer.

That is a path to a quick death as a manager. At minimum your organization and team expect more.

As a new manager, you will need to work to identify what your organization and your team need from a manager. Those are the traits you will want to focus on developing.

Pitfall #3: Avoiding difficult conversations

Almost every new manager either avoids difficult conversations, or uses them as a stick to hit people with. These conversations often include subjects like:

  • Compensation
  • Employee performance or feedback
  • HR or administrative conversations
  • Growth opportunities (or lack thereof)

Similar to the story of Goldilocks and The Three Bears, it is challenging to find the right balance in these conversations as a new manager.

For example, one year I had to personally lead 25 annual reviews.

Being in charge of decisions that impact people’s ability to provide for their families is stressful. How do you handle communicating raises if your company has a bad financial year? How do you handle telling top performers you cannot pay them what you would like to?

The issues new managers usually face quickly are:

  • What should you say if your employee reveals something very personal?
  • How much should you speak?
  • What if your employee disagrees with what you say?
  • How should I expect my employee to act or respond?
  • One of the more difficult parts of being a manager is having to have a lot of these emotional conversations.

Having those conversations can be hard when you don’t have a starting place.

In Difficult Conversations: How to Discuss What Matters Most, Douglas Stone does a great job explaining how a manager needs to handle emotional conversations:

“You can’t move the conversation in a more positive direction until the other person feels heard and understood. And they won’t feel heard and understood until you’ve listened….If they level accusations against you, before defending yourself, try to understand their view. Whenever you feel overwhelmed or unsure how to proceed, remember that it is always a good time to listen.”

When you are new, focus on having the conversations — but spending the majority of time asking questions and learning. Once you feel you have a more comfortable grasp of the situation and have heard them well, then openly provide your own perspective.

Each time you have these conversations, pick the biggest thing you feel like you can improve on and focus on it for the next one.

Consistently do that, and you will see meaningful progress over time.

Originally posted to My Medium Blog.