I bet that every engineering manager is guilty of at least 5 of those 10 behaviors:
Ignoring destructive behaviors
Trying to please everyone
Fighting too hard for your principles
Not spending time building relationships
Defining your role too narrowly
Forgetting your manager is a human being
Neglecting Personal Development
Only managing down
Only managing up
Never managing up
Today I’ll share how each behaviors make you ‘stuck’, and how can you ‘unstuck’ yourself.
The article is based on a chapter from Will Larson’s “An Elegant Puzzle: Systems of Engineering Management”, with some of my own changes and additions. All quotes (in blue) are from the book.
1. Ignoring destructive behaviors
Choose your favorite aphorism: Silence is consent. What you permit, you promote. The standard you walk past is the standard you accept. I found all of them to be true :)
Calling out the bad behaviors of your developers is VERY hard, especially if they are your former peers.
It can be anything, from small things such as:
Complaining about everything
Cursing
Being constantly late
To really destructive ones:
Constantly interrupting the junior developers
Talking shit about people in the company
The longer you ignore a behavior, the harder it is to talk about it. It’s much easier to give feedback for a ‘new’ behavior. When you prepare for a conversation about something the other person has been doing for months, the first question will be: “Why now? I always behaved like that!”.
Believe me, NOW is always the best time to have those conversations, no matter how much time has passed. You’ll always regret not doing it sooner. The developer won’t just magically change their behavior one day.
2. Trying to please everyone
Most decent human beings want to be loved by their environment.
Most managers are decent human beings.
=> managers want to be loved.
Our first instinct to be loved is to try to please everyone.
Does a developer have an idea? Encourage them even if you think it’s a bad one.
Your PM sets an unreasonable deadline? Agree to not disappoint them.
Your manager wants you to hire another engineer? Go for it even if you don’t feel it’s the right time yet.
You’ll have to learn to disappoint people and stand your ground.
3. Fighting too hard for your principles
I’m a morning person. I work at a company with a hybrid model, 2 days from home and 3 days from the office. In the office days, I arrive around 8:30, and our daily standup meeting is at 10 AM.
It used to drive me absolutely nuts that some people were not arriving in the office for the time of the standup and joining in Zoom… I mean, come on. It’s 10 AM. Our official hours (in the contract) are 9 to 6. Before the COVID days, there was no Zoom link, if you were late you missed the standup.
As you can see, I can get emotional about it 😅
I had a hard time accepting that some people are just not morning people, and I drove them hard to be on time.
Eventually, I understood it was just not worth fighting for. I asked myself: “Why is that so important to you?”. The answer was: “Because the meeting is more efficient when everyone is in the same room!”. But honestly? It doesn’t matter that much. If it’s easier for the people, why can’t I be flexible?
Note - in some cases, it’s worth the fight, you shouldn’t be afraid of insisting on what is important to you. For example, on the planning days, we start at 9:45, and I think it’s important we all be in the office. I just deleted the Zoom link. Everyone arrives on time in those days, in 100% of the cases.
4. Not spending time building relationships
An engineering manager usually focuses on 2 relationships outside their team:
Their manager
The PM
Those 2 are the most important ones, but it’s just the start!
What about:
Your peers
The technical support team
The customer success team
Your team’s impact depends largely on doing something that other teams or customers want, and getting it shipped out the door. This is extraordinarily hard without a supportive social network within the company.
This requires your focus and your time. Have 1:1 meetings with key people, and do what you can to help them.
5. Defining your role too narrowly
Every engineering manager has a ‘strength’, an area they are better at.
covered the 3 main areas in ‘The manager, the mentor, and the leader’.So if you are more into processes and also act as the scrum master, you might spend all of your time on that.
If your strength is technical, you might espace back to writing code any chance you get.
If you enjoy mentoring your team, you might neglect the process and the product-related work.
We fall in love with our strength, and start to define ourselves by it, such as:
I’m a people’s person
I’m a hands-on manager
My team always delivers on time (that’s mine)
To overcome it, you need to constantly assess what is currently the weakest area in the team, and dive deeper there:
Effective managers are often the glue in their team, filling any gaps. Sometimes that means doing things you don’t really want to do, in order to set a good example.
6. Forgetting that your manager is a human being
This one I’ve been guilty of in all of my past roles…
It’s easy to get frustrated with your manager when they put you in bad situations, forget to tell you something important, or commit your team to something without consulting you, but they almost certainly did it with the best of intentions.
To have a good relationship with your manager, you have to give them room to make mistakes.
7. Neglecting Personal Development
Your team is doing great. You deliver on every promise, and your people are happy. But what about YOU?
You become so focused on the day-to-day you forget to spend time on your own growth - leading to stagnation and burnout.
Everyone has their own favorite methods to learn and grow. Choose yours and make sure you spend time on it:
Industry conferences
Business trips to customers
Reading books and articles or listening to podcasts
Online courses to learn new technology
Hands-on tasks
8. Only managing down
This often manifests in building something your team wants to build, but which the company and your customers aren’t interested in.
I’ve seen it happen quite often, especially with newly promoted team leaders. You want to build the trust of your team, so you fight for their ideas, even if they don’t have any connection to the business.
Even if you ‘win’, and you get to do that 3-month refactor, it’ll cost you in the long run.
9. Only managing up
The opposite case happens when you have a very strong manager, who you respect and admire. They have some agenda they want to push, and you blindly follow along.
It might be ok if you believe in that agenda, but you must spend time communicating the reasons to your team. Say too many times “because the management wants so”, and there will be no team left.
Some managers focus so much on following their management’s wishes that their team evaporates beneath them.
10. Never managing up
It’s the last on the list, but very important!
Your team’s success and recognition depend significantly on your relationship with your management chain. It’s common for excellent work to go unnoticed because it was never shared upward.
You may be an introvert, who doesn’t believe in making a fuss. You hate attention, and you prefer to deliver great work behind the radar.
Remember, you don’t work in a vacuum. When you want to get raises or promotions for your team, if nobody knows how great they are - they won’t get it.
It’s your job to be the “Minister of Foreign Affairs” and make sure to find opportunities to showcase your team’s successes.
Noted this great quote for future reference: "The standard you walk past is the standard you accept."
Your article moved "An Elegant Puzzle" up in my reading queue.
Thanks for the shoutout, Anton!
Great points, Anton. I don't plan to return to a manager role, but when I led a handful of people, I was guilty of only managing down and not spending enough time to build relationships.
This second comes from the fact that I worked most of the time as a solo contractor with other solo contractors, and we kind of didn't care, but dynamics change inside a company when you're all employees.