Last time we talked about how important it is to make room on your team for different types of personalities. After all, everyone is different.

Have you seen this person?

Yes, everyone is different but some people are more different than others. Take the strange example of the toxic engineer. This is the person who is never wrong. Only undermined. If it works it's because they designed it brilliantly. If it doesn't it's because someone interfered with the brilliance. Once once or a couple of times, but Every. Single. Time.

To the toxic engineer there are only two kinds of code. The stuff they wrote and the crap. Crappy code figure largely in the conversation of the toxic engineer: the toxic engineer has seen a lot of crappy code, all of it the product of lessor minds. Talk to the toxic engineer and you will hear about one after the other of systems that were just wrong, of people who just could not comprehend the brilliance of their ideas, of the failures of other peoples' code. One can't help but marvel at the cruel fate which has landed the toxic engineer on so many projects that have ended up as large smoking holes in the ground.

Toxic not Different

Fortunately the devoted toxic is a fairly rare commodity. As I said in the last article, it's important to make room in your group for different kinds of people. Some of these folks will bore you, irritate you, or even tick you off, but that doesn't mean they are toxic. That person who is just not all that productive – they may be a drag but they are not toxic. The person who lacks many of those basic interpersonal skills, who just hides out in their office and codes? Probably not a toxic either. How about the character who always has a different view of how things should be done? Hey, that could be me.

No, a toxic engineer is not someone who doesn't want to talk to people, or doesn't know how to, or who just doesn't agree with you. A toxic does not want to agree with you or anyone else. They define themselves as being an outsider, as being different, and let's be honest, better, than the rest.

You can always spot the code that comes out of a toxic engineer. Somehow, someway it will look different from the rest of the system. It will be indented differently. The file names will not follow the project norm. If the project standard is for variables names to follow camelCase, your toxic engineer will_use_underscores or maybe some othr$systm. Frequently the code of a toxic engineer is surrounded by a shell of interfaces and adapters, armor plating that prevents any of that screwed up code, (your code!) from leaking in and contaminating their brilliant code. In extreme cases you will find two layers of adapter code: the inside one built by the toxic engineer to preserve code purity, and the outside one built by the functional members of your team, a layer whose purpose is to get that pure code to actually do something.

On any project it is easy to locate the office of the toxic engineer: Just swim up the stream of bad feelings.

The solution

There really is only one solution for a truly toxic engineer. Show them the door. Get this person off your team as quickly as possible. Pulling a software team together is like building a jet engine. Keeping a team functioning effectively is like keeping that engine running, doing all the maintenance, and watching for unusual wear and tear. An uncooperative, hostile engineer is like a foreign body sucked into the air intake of your shiny engine – not only does they not contribute, they are liable to damage the working parts. In my experience, there is no reasoning that will help, no mentoring that will improve, no consequence that will change the behavior of a committed toxic. There is only the blessed silence after they exit.

Toxic people frequently survive by becoming the expert on some part of the system – they are the only one who knows how the Left Handed Smoke Shifter (LHSS) module works. Since the toxic is unable to communicate anything but contempt to anyone else, they are destined to remain the sole LHSS expert. Don't fall for it. My experience is that the faster you get rid of your toxic problem, the quicker someone else can come up to speed. You may find that the LHSS was not such a big deal after all.

Next time we'll look at something you can do with all of the time freed up by getting rid of your toxic person: build some traditions.

– Russ