Have you ever been on a team with someone that was the “Hero?” When things went bump in the night, he was there, when someone committed un-reviewed code, he was there, when customers couldn’t log in to production accounts, HE WAS THERE. This sounds great. In the beginning, it is.
You get delegated all of the easy tasks. Which at first is fine. You are new, you are trying to poke around the code and get an idea of what is going on. You start to realize that after some amount of time, you still aren’t being given any “meat.” This guy is taking all the harder work. He is staying up nights, working 60 hour weeks to get it all done.
Management loves this guy because he works so hard and gets so much work done. What this means for you is that you don’t get any meaningful work. You get to fix bugs and run interference for this guy. You stagnate.
Some reasons why having these people on a team can lead to high churn:
No fun projects
It is really hard to find things to work on that by working on you can grow. The Hero probably already has taken all of the interesting problems and solved them last night while you were spending time with your family. This is no fun. I don’t know about everyone, but I like working on interesting projects.
Not very helpful
Often the Hero is not interested in giving feedback or helping others around them grow, they would just rather do it themselves, or tell you the solution without helping you think through it. They can also give you answers that are about as helpful as this:
You run defense
On top of not being able to work on interesting problems, you probably are relegated to fixing bugs so the Hero can work on the interesting problems. No one wants to be the “bug-fixer” guy. Heros get special privileges and others have to pay to protect them.
They get sick of all this and leave
With all this going on, this is not a team that developers (particularly younger, inexperienced and ambitious ones) they get sick of this and leave. They don’t feel they are growing, that things are stagnating, and that work is a slog.
It will be tempting to hire them. They are great engineers, they get a lot done, but your teams will suffer. Some may flourish on a one-man team where they can own everything that goes on, but on larger teams, morale will suffer. It is an easy trap to fall into. Hiring someone without thinking about the impact these people have on teams is a mistake that is easy to fall into given some of the Hero’s individual contribution potential.
Hopefully, this helps you think more about teams more holistically and people as people instead of “production units” that can be plugged into a machine.
Check out other articles in my “Why developers leave” series: