I’m a new IT supervisor (lead). Not manager-level. I have over 14 years of enterprise development in various MS shops. This is my first supervisory role.
I have a developer that is quite enthusiastic about coding, to put it mildly. Let’s call him W. He will routinely stay up for days at a time coding on projects that aren’t even on the radar let alone an official project list.
The two issues I’ve got are:
- the quality of his code. Or, should I say that his code is the most over-engineered code I’ve ever seen in all my experience. It’s so complex that my team’s turn-around rate for defects has increased by 3. Both of the other guys are complaining about it. He’s a very intelligent guy, so I have a suspicion that it’s “Job Protection Code” as I have had plenty of experience in the past working with these types, and frankly I don’t tolerate it.
- W has literally re-coded 80% of the entire application (in the manner described in #1) on his own time, completely on his own). He’s gotten away with it because he did it in the scope of an officially-assigned project. It’s like re-designing the car because you want to replace a headlamp. This is causing some waves with the rest of the team, as there is no way they can compete in the workplace with someone who stays up for days at a time. They have families.
Basically, I need to tell this guy that his code sucks, and he’s demoralizing the rest of the team, and to chill out with the work-related code on his own time. But in a nicer, politically correct supervisory type manner that won’t make him want to quit.
Can any IT manager type with more experience provide some mentoring and insight?
Thanks in advance.