When your star coder won't behave, what's a manager to do? Do you catch the fly with honey, or do you get out the flyswatter? Here's advice from four managers whose approaches run the gamut.
If Shakespeare were alive in 2002, he’d be a technical writer, and his motto would be: “Kill all the developers.”
Whether they deserve it or not, developers are often stereotyped as having big egos and being hard to get along with. If you’re a project lead or development manager, chances are you’ve had to deal with a talented developer who had a less-than-pleasant demeanor. The challenge lies in finding a way to keep the star player in the lineup without alienating the other players on the team.
We asked four technical managers to tell us how they deal with difficult developers. The advice they gave us may surprise you.
How many developers does it take?
Why does it take two developers to change a lightbulb? Because one always leaves in the middle of the project.
Hard skills, soft skills
Mark Kimbell, president of Kimbell Associates, a training and consulting company, makes a living teaching people how to be better managers and employees. Kimbell, who has a background in programming and technical management, illustrates the relative importance of hard and soft skills with the “root canal” story. “I needed an emergency root canal on a tooth that was hurting so badly I couldn't stand the pain,” Kimbell said. “My regular dentist found a specialist who could work me in that day. I drove straight to this total stranger's office, plopped down in the chair, and emphatically said, ‘Ahhh!’ without asking a single question about his soft skills. All I cared about at that instant was fixing the problem and stopping the pain.”
Many development managers feel like Kimbell in that dentist’s chair. You just need a particular problem fixed—now. That may mean hiring (or retaining) a developer who has the hard skills you need but who lacks soft skills such as communication or a teamwork ethic. But ignoring the latter part of the equation can have a major negative impact on the rest of the team.
The effect of bad behavior on the team
According to Guy Wathen, who manages the programming department for a Midwestern manufacturing company, you can’t let soft-skills problems go unresolved. “If someone is causing problems within the team, you have to deal with the problem head-on. Talk to that person and try to get the conflicts resolved. Good coders aren’t worth keeping if they’re causing all sorts of other problems.”
Wathen once managed a developer who, knowing the people around her hated country music, would turn up the radio on a country station just to annoy her teammates. “It definitely affected her job performance and the performance of the other developers. People didn’t want to talk to her, so they wouldn’t go to her. The work wasn’t getting done.”
When confronted about the problems within the team, the country-music lover threatened to quit. “That’s like a hostage situation,” Wathen said. “I’m not going to let an employee hold me hostage. I had to let her go.”
An unorthodox solution for the problem child
Asked what advice he would give to first-time managers of developers, Wathen offered an unusual suggestion: “As ludicrous as it sounds, sometimes the way to get a prima donna to behave is to give them more responsibility.”
In Wathen’s experience, a developer may cause problems when he or she feels underutilized. “I’ve found that the way to keep some people happy is to give them more duties in the project, get them more involved.”
Instilling soft skills through mentoring
Norm Eberhardt has managed teams of developers and currently works as a project manager for one of the largest healthcare providers in the United States. Eberhardt has never fired a developer because of lack of soft skills.
“I run into the prima donnas all the time,” Eberhardt said. “In large companies, especially, there are so many [that work in] silos, developers too often ‘go for the jugular’ when dealing with others. If they need something from another department, they’re impatient. They won’t work with their peers. They’ll escalate it up the line, sending e-mail and copying the whole world, embarrassing the person who has the information they need.”
So how does one deal with the impatient developer? “Mentoring is the main thing,” Eberhardt said. “You have to teach the team approach. When a person is saying ‘I need this,’ I’ll suggest we try using a more diplomatic approach to dealing with teammates and people in other departments.
“You may win the battle [by being obnoxious],” Eberhardt said, “but you’ve still got to deal with people.”
As manager of information systems security for Kindred Healthcare, Jeff Luckett works closely with programmers, and he has managed several development teams during his IT career. When asked how he handles an employee who is technically gifted but has a less-than-helpful attitude, Luckett’s first response is “Fire ‘em.”
“I'd rather have a team of B-players who will do what I say than a superstar who is causing trouble,” Luckett said. “Teamwork above all else is most important. I've had people working for me who were gifted but they weren't worth the maintenance.
Mediating problems between showboat developers and aggravated teammates gets old too.
“It takes a lot of my time to listen to [the problem developer] whine or listen to other people complain,” he said. “It's just not worth it.”
Developing the right skills
Have you managed a talented developer who lacked good people skills? To share your experience and advice, please post a comment below.