A good while back, I was working a project with a guy who was a bona fide 10x programmer - brilliant guy, did his PhD in slightly under three years, was way better programmer than I was, exactly the kind of guy I like to have on my team.
One of the managers and I were talking about him being a true 10x, which then got us to talking about the “plus 1” programmers - the guys which if you had on your team, it was effectively like having another developer. And of course, as there weren’t a lot of those guys, we wound up also discussing “minus 1” programmers - the guys who if you had on your team was like being a man down.
Eventually, Dave, the 10x guy, happened along and on hearing us talk a bit said that we had overlooked a case.
The “minus two” programmer. This guy is so bad that he offsets two decent programmers on your team - one of them has to correct the colossal fuckups that he makes, and one has to do enough work to keep you from moving backwards on your deliverable timeline.
That’s what you don’t want to be, the “minus two” guy.
Of course, some programmers are so bad that their number is a lot worse than “minus two”.
Bad developers nearly universally suffer from not understanding how much they don’t know, and everyone suffers for it.
They’re usually well on the upward slope of the “how much I think I know” curve, and in reality near absolute zero on what they do know.
There are a bunch of answers running around Quora, reddit, StackOverflow about the most outrageous comments found in source code, and in every such thread there are always a pile of comments along the lines of “don’t fuck with this section. no matter how much you think you know, it’s not possible for you to understand what’s actually going on in here, so go away. oh, and if you did fuck with it and break everything, increment this counter”
The reason that’s a meme is that it’s actually what happens, nearly 100% of the time. The bad programmer - believing they’re the hottest hot shit that’s ever been shit - has absolute certainty that they can fix anything, make everything better, faster. And they’re inevitably wrong.
Moreover, they suck the oxygen out of the room. Your best staff, who are always keen to help develop a fellow developer’s skills, spend a huge amount of time trying to “educate” them. If you’re really, really lucky, some of it takes. If you’re not…
Maybe that should have been “minus five”.