Good engineering manager vs Bad engineering manager

Common characteristics of good and bad managers, inspired by @bhorowitz

Inspired by the great book by Ben Horowitz, The Hard Thing About Hard Things, and specifically by this post about good product manager/bad product manager, I felt the urge to re-write it — but this time about engineering managers. From my experience of leading, mentoring and growing dozens of engineering managers I believe there is a huge difference between good engineering managers and bad engineering managers. It might seem very small for some, but in reality only the former can actually build 10x engineering teams.

On conflict and being brave:
Good engineering managers will take the courageous decision even if it isn’t popular. Bad engineering managers will take the wrong decision just because it is socially right and their team suggested it. Good engineering managers focus on the road and the values they believe in, and not only on the wall they are currently facing. Bad engineering managers will choose best industry practices just because it will attract the ‘right’ talent.

Good engineering managers know to reflect ongoing status and strive for alignment and conflict resolution; they identify and explain to their employee what he is doing wrong - even when he is the best employee in the team. Bad engineering managers stay away from conflicts.

On new technology and hype:
Good engineering managers focus the team on the right technology that will bring business and product value. Bad engineering managers focus the team on hype, technology and new languages.

Good engineering managers will measure new technology against their product, business and internal culture. They know to evaluate impact on culture and learning curve. Bad engineering managers will use the buzz and spread the tech before evaluating the value or the price.

Good engineering managers are driven by ‘how success will look like upon completion’ and will think first about the story they want to tell the company and their managers by the end of the refactoring.

On product and dev partnership:
Bad engineering managers will always find ways to blame the product on their damn long estimations, on complex features and how someone didn’t explain this in the first place and changed their mind 10 times in the middle. Good engineering managers know to extract the essence from the user story, and focus first on the core capabilities and provide value and challenge the product as early as possible.

Bad engineering managers complain about the lack of visibility on the ideation process. Good engineering managers know to build such visibility and partnership, while providing several alternatives and bringing the product to the drawing table.

Good engineering managers know to challenge their teams to provide several alternatives for the same idea; they know to explain pros and cons without deep diving into tech level and buzzwords.

On influence:
Bad engineering managers look for places to make themselves more involved and more influential. Good engineering managers always keep thinking how their employees will feel they have influence even without the authority.

Good engineering managers know to separate between personal needs, team needs and company needs, they know to balance the right timing and place for the right need. Bad engineering managers think that they all need to be in one place.

On team growth:
Good engineering managers know to push their people out of their comfort zone and challenge them on stuff they didn’t even know they could do.

Bad engineering managers will fabricate challenges and ignore their employees’ real needs and dreams. They will do everything they can just to keep the talent for themselves. Good engineering managers know to identify bigger opportunities for their team members, even if they are outside of their team and company.

On managing yourself as a manager:
Good engineering managers find time for creating. Bad engineering managers are only orchestrating other people’s tasks.

Good engineering managers write down their decision and the decision-making process. Bad engineering managers don’t manage their thinking process at all.

Good engineering managers work on visibility and commitment for their own goals and tasks in front of their team members .Bad engineering managers do not plan their week and do not set personal goals.