It’s the real agony of working with Coding Heros, take heed!
Sometimes we don't need people with capes
Steve walks down a row of cubes. Out of the corner of his eye, he sees Ajit yelling at Laura. “Why did you check in this change?!!”
Laura sits in stunned silence. Ajit runs out the door. Steve asks her if she is okay.
Laura tries to say something. Then she closes her eyes. And thinks to herself, “Why is he such a jerk?”
Steve wonders what to say…
Ajit is a classic case of a coding hero. He wants to control everything in the project. Constantly changing others' code.
Ajit believes he is a coding superstar. Steve and Laura don’t agree with his inflated opinion of himself. He leaves a wake of frustration and broken builds in his wake.
Who is the superstar?
My wife and I are watching the HBO series, Winning Time. It chronicles the Los Angeles Lakers. They start by drafting Irvin “Magic” Johnson in 1979.
Magic comes in ready to take the team to the championship. He ruffles some feathers with his brashness. Similar to Ajit, Magic leaves a wake of consternation behind him.
Kareem Abdul Jabar was already an established All-Star and the team captain. Magic came in with plans to change everything.
Magic uses a few steps here to ensure he is on solid ground. Unlike our coding hero, Ajit, Magic becomes self-aware. He begins to realize where to press.
Where are we now?
Anytime you join a new team it is important to get a lay of the land. I have joined new teams with a willingness to change everything. The veterans react much like Kareem.
“Who does this new guy think he is!” This has been said about me and other coding heroes. Perhaps we think we have a cape.
What we really need is a dose of humility. Ask some questions first. Don’t make assumptions. Magic slowly comes to this realization. It took me more time to understand.
Here are the steps Magic used. Perhaps these can help some coding heroes out there.
Paint the Picture
Great leaders paint a vivid picture. We saw this with Martin Luther King Jr’s “I have a dream speech.” In the tense times of the civil rights movement, he looked forward.
Don’t be the developer who tells everyone they're wrong. Asking people who wrote this awful code doesn’t endear yourself to the team. I did that a few times.
We see Magic do this with the Lakers. He talks about winning championships. Also, then assistant coach Pat Riley does this as well. He gets the interim head coach Paul Westhead to see how close they are.
Challenge the team
A coding hero can come in and try and fix everything themselves. They change a lot of things. There is a wake that follows them.
There can be bugs and issues that crop up. A coding hero will blame this on others. They would never make mistakes.
Magic takes another path. He challenges Kareem first. In private they discuss Kareem’s effort.
Kareem at first bristles at this rookie. Then he begins to come around. We can challenge people. Make sure you know the right way.
I once remarked to a new boss about the code quality. Little did I realize that this was code he had written. Open mouth. Insert foot!
Learn to challenge people in a better way.
Switching Roles
In the season finale, Magic Johnson, who usually plays guard, has to play center. Kareem is injured and can’t play. Magic plays center and leads his team to a championship.
A coding hero can have a tough time switching roles. Perhaps they need to work on something less glamorous.
For instance, legacy code can be a place of disdain. Developers like to work on new things. Use new technology. A coding hero might have a duck fit if they need to work on legacy code.
If you have someone who can’t switch roles they might be a coding hero.
Are you the Coding Hero?
Could you be the coding hero on your team? Are you telling people what to do? Change is hard. As the new person, we don’t need to dictate orders.
Assume
Coding heroes will assume they know the answer.
Snatch
Coding heroes snatch up others' work.
Stifle
Coding heroes stifle their teammate's learning opportunities.
Remember these three to check if you are the coding hero. If so look at what the first letters spell out;)