I'll take the brilliant jerk any day. They can simply deliver in ways that others cannot.
I'll take the brilliant jerk any day. They can simply deliver in ways that others cannot.
Holy false dichotomy, Batman. I'd rather take neither of them and fill my team with adequate-to-exceptional devs who also happen to be decent human beings.
I'd rather drive a Ferarri.
I disagree on 'adequate' though. I'll take a truly brilliant a-hole over 'adequate'. 'Adequate' means I'm often fixing their mistakes, checking up on them, making sure they stay on track, etc. I'm ok with smoothing over issues from time to time if it means I can let them run wild on the thing I hired them for.
In which case, based on your budget, you'll have to settle with fewer and fewer desirable traits of lesser magnitude, or conversely, based on your budget, you can push more and more less desirable humans to lesser firms; one can imagine thinking the same with customers or clients as well.
You can have the nice paying client, or the jerk paying client, and a discerning firm might prefer nice paying clients over jerk paying clients (but of course, the most important discernment will be over pay), leading their competitors to have to deal with clients with a smaller set of desirable traits.
Says who? This has never been my experience. They are tolerated specifically because they deliver. If they're not delivering then why are they still around?
That extra throughput is also better spent because instead of 4 people discussing how to do things, there's 1 jerk bossing around 2 non-jerks. Cancel all team meetings!!!
Now, make the team size 15. Most of those will be 3x and 2x programmers as well. Seeded with a 5x, two 4x and the village idiot (VI, whom we will peg at 0.5x, just for the Lulz). So, the BJ has the VI kicked out, starts making much neglected changes, and everything seems to be going in the right direction. But then, your rank and file get demoted -1x because they also cannot cope with BJ's rapid changes. BJ might be seen as keeping the boat afloat, but in reality his productivity is neglected by everybody else's fuckups (which are BJ fault, because he cannot be bothered to let the team know what he's doing). 5x and one of the 4xs quit in disgust of the general chaos, and 6 months later, they are back with a competing product and poaching the big team clients.
So, it does not sound as if BJ "delivers" as much as you thought, does it?
I guess not, at least, within the context of your little story.
To be fair, I am thinking of small teams, and I can imagine how their value would decline in larger outfits.
That said, I don't hire people to write CRUD apps either. Truly brilliant people should be working on solving hard problems which lack a general solution, not data layers and library duct tape.