> A “No Jerks” Policy Must Be Built Into Your Culture. It is entirely possible to be extremely passionate (and even brilliant) without being a jerk. A “no jerks” policy must be preached and practiced from the highest levels.
Following simplistic rules like this is usually what leaves us knee deep in the proverbial.
Maybe I've been lucky, but I've never worked with anyone who's as much of a jerk as described in the article. In my experience, talented developers are usually intelligent enough that they can make up for their shortcoming in the social area by consciously adapting their behaviour. They're not "normal" but they function well enough to work with others.
I've worked with plenty of jerk-ish, abrasive, opiniated, "take no prisoners" people who can be very fiery in meetings and can be highly critical of other people's work. Yes, they can be a giant pain in the arse - they're just so damn challenging. But in my experience they're normally challenging because they want the company to do better.
But I've seen many times (mainly in large companies) teams that were populated and led by people who were very consensus-based, had superb social skills, and had a genuine drive to succeed - but didn't because there was not enough fire in the team to make the right choices.
To me, the business of software development is way too complex to apply a simple "no jerks" policy. Brilliant jerks are often to be found at the beating heart of successful software.
I'd rather have a brilliant jerk than a regular jerk.
But regular jerks abound at work because they at least don't make you feel stupid and insulted.
And you hit the nail on the head with your experiences. In high school I was neck-and-neck academically with a brilliant jerk. He went to Harvard, is now a millionaire (without inheriting it) and a much nicer person. Competing with him was one of the most formative periods of my life. He made me better, because I learned not to take harsh criticism and hectoring so seriously. Look at what they do (for you), not what they say (to you).
I actually wish there were a brilliant jerk like him in my workplace. But there are just regular jerks.
> In my experience, talented developers are usually intelligent enough that they can make up for their shortcoming in the social area by consciously adapting their behaviour.
That's orthogonal to the issue mentioned in the article. For the purposes of "not being a jerk", it doesn't matter if that comes naturally or if you have to devote conscious effort to it; only the resulting behavior matters.
> Brilliant jerks are often to be found at the beating heart of successful software.
Survivorship bias. Strange policies or properties are often found in successful companies/projects, who often write up articles about them as though those policies contributed to their success, never considering the possibility that they succeeded in spite of them. The same goes for jerks: some companies/projects succeed in spite of the jerks in (or running) them.
I agree... usually when a truly brilliant developer is causing more harm than good, it's because they aren't being effectively managed. That doesn't mean managing them is easy, but you want to pick and choose what problems you give them, who they work with, and how they work with customers. Of course, that's not my job :^)
My first senior engineer was a "brilliant" jerk. He had decades of experience, but when I started digging into his work I realized that he was useful mainly because he was offering solutions to problems that he created. I've heard some people say that a good engineer will eliminate the need for his/her own job. This guy was actively creating a need for himself by causing problems without management realizing it.
About 1 out of every 10 ideas was a good idea, but you had to know how to filter out the bad ones. If you said "no" to one of his bad ideas, he'd say that you weren't listening to his input and complain to your manager.
He was abrasive, condescending, and dominated every meeting. If you said anything to management, their response was "Oh that's just Bob, what a crazy, quirky, eccentric guy!" What they refused to realize was that being Bob's peer was very different than working for Bob. What management perceived as a quirk, was a character flaw that made life hell for anyone working underneath Bob.
And to echo other comments, nothing was done about Bob because management didn't want to take responsibility for the culture of the company. Why risk negatively impacting profits by actually managing your employee when you could blame it on millennials being whiny and you believe that engineers are interchangeable?
No they don't; mediocre 'nice guys' do though. Every 'brilliant jerk' I've worked with and led has been a net positive over the long haul. Every mediocre nice guy has been dead weight that costs everyone around them time.
I'll take the brilliant jerk any day. They can simply deliver in ways that others cannot.
In my experience this type of person can only exist in your organization if their manager is below average. I have come across my share of them and every time if their manager was a dud the whole company suffered, if their manager was on the ball they would put structure around the jerk to achieve a net improvement in productivity without the negativity.
Steve Jobs, Bill Gates, Larry Elison and Jeff Bezos each nurtured that sort of person (and were themselves that sort of person). They utterly steamrolled the kinder and gentler companies in their respective markets.
Sometimes reality and what you want to be true are not the same.
spot on, I have seen people like this who you wouldn't even call brilliant but excellent Prototype-Masters. usually they flourish because they can provide cover for some deep seated insecurity of their bosses (like knowing you are technically incompetent). the problem is that such people are credit suckers because their quick & dirty prototype can pass for the real thing in the eye of 'innocent bystanders'. Overall it just lowers morale of the team as nothing seems worthwhile anymore.
It's always possible the brilliant jerk is just being taken advantage of so his boss can take it easy. Exploiting ego isn't hard and you don't need to be better than him at his own game to do it. If his manager is insulated from the rest of you, it's probably not worth enduring the brilliant jerk though.
This has been my experience as well, if the manager does not stay on top of it the person is toxic. With sufficient incentives, they can be managed to lift up the team.
I've met two kinds of "brilliant jerks" in my working life. One is insufferable and makes the lives of his (it's usually a he) co-workers such a nightmare that they end up quitting. The other is abrasive but pushes his co-workers to achieve a higher level. I've even worked with one developer who was both and, while I hated every moment of working with him, I'm undoubtedly better at what I do now for having worked with him.
When I see opinion pieces like this, my first thought is always of the book "multipliers" which put forward (huge over-simplification) that you should strive to hire people who make their co-workers more productive. A jerk is often a strong individual contributor who detracts from the work of those around him. And to that extent, jerks should be avoided. But when a jerk is also a multiplier, they can drive achievement far greater than what would otherwise be achieved.
A good example of this is Steve Jobs who, by all accounts I've read, was a bit of a jerk, was abrasive and demanding, but also pushed his people to achieve amazing things, not just at Apple, but also Next and Pixar.
If you avoid the brilliant, jerky multipliers, you just might fail in the most enjoyable way possible.
> I've met two kinds of "brilliant jerks" in my working life.
I think this is a key point, along with ianbicking's observation that jerkness is often an environmental (rather than innate) phenomenon. Here's a quote many here might recognize.
"Extremism in defense of liberty is no vice"
Substitute "quality" or "progress" for "liberty" and you might see what I'm getting at. Some people are just jerks, full stop, end of story. They won't stop being jerks. They will continue to bring everyone down, so they're best gotten rid of. However, there are others who can exhibit many of the same outward behaviors because of context. Most often, the context is that people aren't listening. In an organization where there's a strong emphasis on empirical results, and even more so in one where there's a strong focus on learning, this "situational jerkness" doesn't occur. On the other hand, when people persist in doing things that are wrong despite every prior proof that it's wrong, others might get frustrated enough with them to start being jerks. Examples from my own experience might include:
* Repeatedly deferring fixes to a known serious problem, while resources are devoted to less important things.
* Re-submitting the same proposal or patch without fixing already-identified flaws.
* Persisting in collaborative anti-patterns such as pulling rank or announcing decisions made without all stakeholders present.
I've been a jerk myself, when faced with these kinds of situations. I'd have to be some kind of jerk not to push for change, when experience tells me that the status quo leads to a bad place. Sometimes passive aggression needs to be met with active aggression. When faced with being a jerk for good or a jerk for evil, I'll choose being a jerk for good. It's not a decision to be made lightly, and if it happens often then we're probably back in "permanent jerk" territory, but sometimes it's a decision that needs to be made anyway.
>One is insufferable and makes the lives of his (it's usually a he) co-workers such a nightmare that they end up quitting. The other is abrasive but pushes his co-workers to achieve a higher level.
See, the first guy is just a Junior Brilliant Jerk. He's slowly learning and will eventually turn into the Senior Brilliant Jerk if you give him enough time. The Senior Brilliant Jerk is the one that stays just within people's tolerances. But you can't become a Senior without being a Junior first, so sorry, you were just the one to give him some experience. :)
I might describe them as a "selfless jerk" vs a "selfish jerk". A selfless jerk cares about the company and team, and while is abrasive is always doing it for the right reasons, and is trying to be effective for the company. A selfish jerk is just a jerk who cares about themselves.
I read articles like this somethings and think "holy shit I hope I'm not a jerk" - but then I relax when I realize I'm not brilliant enough for that to matter.
Well, let's look at it from the "the jerk"'s perspective.
How would feel if other people accomplished 1/10th what you did? What if they got paid 80% of what you got paid too?
What if teaching them took so much of your time that it was faster to do it yourself than hand-hold them through the process?
What if, despite producing more than the rest of the team combined, management saw you as a problem, and wasn't interested in your perspective now that you had a reputation?
Have you asked "the jerk" to be more polite about his feedback? Have you explained why it's important? Have you listened to his perspective?
You work to raise your teammates up. Full stop. Productivity for a team is in aggregate - it's the entire teams productivity that's at stake, not an individual contributor's.
Why would you be concerned about coworkers making "too much" in relation to you? I mean, if the company were going to close as a result of pay, then I'd potentially be concerned (more that it's a failing company or a failure of management), but I can't imagine a scenario where I would look at a fellow coworker and have it harm me any that they're getting paid well.
There's an implication later that he might have been 10x because he was cutting other people down – turn everyone else into a 0.1x developer and the 1x developer starts looking good.
I'd take that claim skeptically. But another consideration is that more than half of a team's work isn't code. You have to write the right thing, not just something, and that requires time and communication. So he might have been a 10x coder and a 0.1x communicator – indeed since he seemed to have little interest in interpersonal relations, some amount of his performance may have been due to his own time allocation choices.
Two of those people together would perform very poorly on some projects. And very well on others, depending on the clarity of the project and the amount of technical challenge it presented.
No matter how much two such folks might deserve one another, I'm not sure companies could afford to watch their final two coders refuse to cooperate over trivial shit like line length.
I was thinking the same thing. There are diminishing returns with most jerks if they are marginally better than the rest of the team, but if they are 10x better, maybe you just need a team of 1.
Maybe, but it's also true that cranking out code is not the same as qualify software development. Lots of people can churn out code, that's the easy part.
It just sounds like that person was not a good match for the company culture. Many shops will appreciate that kind of drive and attention to detail, as well as the ability to tolerate potentially biting criticism that comes with it. I would have happily hired him away from the author's company.
> ability to tolerate potentially biting criticism that comes with it
I wonder if this is the issue really. Some people can't take criticism unless wrapped in sugar. If it's really, and especially if it comes with potential alternatives it should be socially fine, but it's not.
Nothing in that story suggest ability to tolerate potentially biting criticism from other people. The story suggest ability to dish it out.
The dude presented opinions and preferences as facts. Is there any reason to think he would easily accept when one of juniors called him on it? Because if he would be able to accept the criticism, one of colleges would be able to convince him that some of his criticism is wrong. To me it sounds more like he used the biting criticism to keep the "top dog" position.
People who can tolerate potentially biting criticism wont present preferences as facts all that much, because there would learn from people criticizing them for that in the past.
People that lie, who are dishonest, lazy, don't wish to work hard and look out for their interest before the company's interest are the worst kind of jerks. These jerks are seriously threatened by any kind of person who is not afraid to speak up and call them out to their shenanigans.
I've seen this before, where the team was building a skyscraper with cardboard boxes, and the "brilliant jerk" called them out and they fumed and morale was low. The jerk left and the team supposedly started meeting their goals and was releasing faster.
Well of course they were! the lone voice that was the gatekeeper was gone and all sorts of garbage was being committed to the code base. The skyscraper went up faster, and one day it came crashing down never to go up again. I was a consultant that saw this. So I always take "jerk" with a grain of salt. Of course, people should be kind, diplomatic, and caring, but they should also tell the truth and the bitter truth. I'm conflicted on the entire training thing, I believe that senior developers should teach, however, unless the company is willing to budget time for that, it is on each person to learn and shore up their skill. The company should train their developers if they are not up to par.
Work is were work happens, if you wish to learn and grow, study furiously outside of work. It's your responsibility as someone that represents themselves as a professional and asks to be paid a fair wage to learn. Some of these lessons the "senior developers" can teach are worth hundreds of thousands or millions of dollars, I don't see junior developers cutting checks to them for those lessons. Let me reiterate, work is were work happens. If you are fortunate to find a mentor that is willing to teach you, be grateful for you are blessed. If you apply for a job and the company never talked about training you, it's your responsibility.
The only "10x" developer I have worked with taught me not only a ton about agile teams, but also about the liberal use of interpersonal skills in advancement of that goal. We routinely worked with education administrators (former teachers) who all had classroom experience and professional interpersonal skills training.
It was amazing to work with people you could simply expect respect from, even when everyone was well aware of the simmering annoyance and disagreement available below the surface. You just can't build the kind of momentum we saw with people who many any team member feel unsafe in their role.
"Where a normal review would often contain a handful of comments and suggestions, he would regularly end up in the hundreds"
geeze. This is either a ridiculous hyperbole or telling of a more deep-seated problem. You should not regularly be posting changes that have room for hundreds of comments, and if you do post a change that massive, it should not be considered normal to only elicit a "handful" of comments/suggestions.
I work in a company with a strong code review culture. When I'm less confident in the correctness of what I'm doing, I'll ask for a review from someone who I know will use a fine-toothed comb. This necessarily means dealing with what seems like personal preference, but that's a small price to pay for added assuredness you're doing the right thing. Some reviewers pretty much just rubber stamp your work. That can be useful if I'm highly comfortable with the code I'm working with, but overall I don't think that is a positive or makes them less of a jerk. If anything, not taking the time to provide meaningful feedback is the jerk move.
If this article were actually true, Apple wouldn't exist as the company it is today. Steve Jobs, while not a developer, was undoubtedly brilliant, and most definitely a jerk.
It's unhelpful to pigeonhole people and then extrapolate out their actions from there, because for the most part people don't conform to whatever mental model of that stereotype you've built in your head. People are complex beyond imagining.
Besides, what's the author's sample size here? One? Two? It's an anecdote worth relating, to be sure, but I think it'd be better served by leaving the "Brilliant Jerk" bit out, and leaving it as a story about team morale being more important than the contributions of any single team member.
I think the argument is that most guys like Jobs or Gates aren't jerks. They might be a little abrasive but people often want to work with them over long periods of time.
I honestly enjoy working with those "brilliant jerks", if they are actually brilliant I will learn from them. And debating with them is very entertaining.
Same, it accelerates your growth. Can you believe OP? There he has a brilliant dev taking his valuable time to critique his and other people's mediocre work, and all he gets for it is self-protective and defensive reactions from everyone else. OP has admitted that the brilliant jerk had good reasons behind all his comments, yet here he is still complaining about it (ego much?).
This could be turned around: Nice Mediocre People Cost More Than They Are Worth.
I've seen a lot that socially desirable behavior is evaluated and preferred rather than people doing excellent work. Group dynamics quickly exclude these by creating a consensus of what is accepted and what the goal of the group is. This is especially easy because these brilliant people are always -by definition- a minority,
Interesting article. Definitely something to keep in mind when hiring. It's crazy how much damage one person can do to a team (and vice-versa, I've seen one person change entire team dynamics).
It's also really important to be careful with jerks who think they are brilliant, even if they are. There's always someone smarter out there and clever solutions aren't always the best solutions if no one can understand them.
Alternatively, we could stop forcing the jerks to work in tightly cooperative teams. Their skills might have been useful if they would be allowed to work mostly alone.
to call anyone a "jerk" is something that only jerks do, but everyone looks at themselves as holier than thou. We're all flawed in some way. Labeling people (or attacking people) as "jerks" is in profound violation the principle of non-violent communication, to say the least, and, by the way, so is down-voting those who are critical of the prevailing opinion here without a civil counter argument ;-)
Here's the thing: some people are jerks. Calling a jerk a jerk is fine, IMO. (Some people are racists; calling a racist a racist is also OK.)
Avoiding calling someone exhibiting a negative behavior by the accepted label for that behavior is healthier than tiptoeing around and pretending that Hannibal Lecter just has different dietary preferences and that's OK.
Brilliance is not universally recognized. That is, in this case, very few people can accurately evaluate a programmer's skill.
Previously, I thought myself to be exceptionally good at my craft, and I let that define who I was as a person. Recently, however, I reconnected with an old, vagabond friend. No one in his circle could evaluate my programming competence or even cared about it. To them, I was a socially awkward, single-dimensional guy. That really shattered my bubble.
This post is full of contradictions and vagueness.
> Its[sic] not that he was wrong — he rarely was
> He had good reasons, and he was more often right than not
> He just stated his opinions as fact. It was clear that he saw the world in black or white — no gray areas — and we were all wrong.
So the author agreed that he was right almost all of the time, but he should allow for gray areas? Makes no sense.
Later on:
> A funny thing happened almost immediately after he left: morale increased steadily and we actually began to meet our goals even faster with one less person on the team.
But the "jerk" was always right and "slaughtered" the code reviews of his peers, so what kind of code were they producing to meet their goals?
Maybe this guy was a jerk and didn't work well on the team, but it also sounds like the other people involved were terrible at their jobs and should either get re-educated or find another career.
[+] [-] beachy|9 years ago|reply
Following simplistic rules like this is usually what leaves us knee deep in the proverbial.
Maybe I've been lucky, but I've never worked with anyone who's as much of a jerk as described in the article. In my experience, talented developers are usually intelligent enough that they can make up for their shortcoming in the social area by consciously adapting their behaviour. They're not "normal" but they function well enough to work with others.
I've worked with plenty of jerk-ish, abrasive, opiniated, "take no prisoners" people who can be very fiery in meetings and can be highly critical of other people's work. Yes, they can be a giant pain in the arse - they're just so damn challenging. But in my experience they're normally challenging because they want the company to do better.
But I've seen many times (mainly in large companies) teams that were populated and led by people who were very consensus-based, had superb social skills, and had a genuine drive to succeed - but didn't because there was not enough fire in the team to make the right choices.
To me, the business of software development is way too complex to apply a simple "no jerks" policy. Brilliant jerks are often to be found at the beating heart of successful software.
[+] [-] gregtran|9 years ago|reply
But regular jerks abound at work because they at least don't make you feel stupid and insulted.
And you hit the nail on the head with your experiences. In high school I was neck-and-neck academically with a brilliant jerk. He went to Harvard, is now a millionaire (without inheriting it) and a much nicer person. Competing with him was one of the most formative periods of my life. He made me better, because I learned not to take harsh criticism and hectoring so seriously. Look at what they do (for you), not what they say (to you).
I actually wish there were a brilliant jerk like him in my workplace. But there are just regular jerks.
[+] [-] JoshTriplett|9 years ago|reply
That's orthogonal to the issue mentioned in the article. For the purposes of "not being a jerk", it doesn't matter if that comes naturally or if you have to devote conscious effort to it; only the resulting behavior matters.
> Brilliant jerks are often to be found at the beating heart of successful software.
Survivorship bias. Strange policies or properties are often found in successful companies/projects, who often write up articles about them as though those policies contributed to their success, never considering the possibility that they succeeded in spite of them. The same goes for jerks: some companies/projects succeed in spite of the jerks in (or running) them.
[+] [-] kurthr|9 years ago|reply
[+] [-] analogwzrd|9 years ago|reply
About 1 out of every 10 ideas was a good idea, but you had to know how to filter out the bad ones. If you said "no" to one of his bad ideas, he'd say that you weren't listening to his input and complain to your manager.
He was abrasive, condescending, and dominated every meeting. If you said anything to management, their response was "Oh that's just Bob, what a crazy, quirky, eccentric guy!" What they refused to realize was that being Bob's peer was very different than working for Bob. What management perceived as a quirk, was a character flaw that made life hell for anyone working underneath Bob.
And to echo other comments, nothing was done about Bob because management didn't want to take responsibility for the culture of the company. Why risk negatively impacting profits by actually managing your employee when you could blame it on millennials being whiny and you believe that engineers are interchangeable?
[+] [-] EpicEng|9 years ago|reply
I'll take the brilliant jerk any day. They can simply deliver in ways that others cannot.
[+] [-] ChuckMcM|9 years ago|reply
[+] [-] xiaoma|9 years ago|reply
Sometimes reality and what you want to be true are not the same.
[+] [-] DesiLurker|9 years ago|reply
Thank god I dont work there anymore!
[+] [-] FLUX-YOU|9 years ago|reply
[+] [-] whatupmd|9 years ago|reply
[+] [-] curun1r|9 years ago|reply
When I see opinion pieces like this, my first thought is always of the book "multipliers" which put forward (huge over-simplification) that you should strive to hire people who make their co-workers more productive. A jerk is often a strong individual contributor who detracts from the work of those around him. And to that extent, jerks should be avoided. But when a jerk is also a multiplier, they can drive achievement far greater than what would otherwise be achieved.
A good example of this is Steve Jobs who, by all accounts I've read, was a bit of a jerk, was abrasive and demanding, but also pushed his people to achieve amazing things, not just at Apple, but also Next and Pixar.
If you avoid the brilliant, jerky multipliers, you just might fail in the most enjoyable way possible.
[+] [-] notacoward|9 years ago|reply
I think this is a key point, along with ianbicking's observation that jerkness is often an environmental (rather than innate) phenomenon. Here's a quote many here might recognize.
"Extremism in defense of liberty is no vice"
Substitute "quality" or "progress" for "liberty" and you might see what I'm getting at. Some people are just jerks, full stop, end of story. They won't stop being jerks. They will continue to bring everyone down, so they're best gotten rid of. However, there are others who can exhibit many of the same outward behaviors because of context. Most often, the context is that people aren't listening. In an organization where there's a strong emphasis on empirical results, and even more so in one where there's a strong focus on learning, this "situational jerkness" doesn't occur. On the other hand, when people persist in doing things that are wrong despite every prior proof that it's wrong, others might get frustrated enough with them to start being jerks. Examples from my own experience might include:
* Repeatedly deferring fixes to a known serious problem, while resources are devoted to less important things.
* Re-submitting the same proposal or patch without fixing already-identified flaws.
* Persisting in collaborative anti-patterns such as pulling rank or announcing decisions made without all stakeholders present.
I've been a jerk myself, when faced with these kinds of situations. I'd have to be some kind of jerk not to push for change, when experience tells me that the status quo leads to a bad place. Sometimes passive aggression needs to be met with active aggression. When faced with being a jerk for good or a jerk for evil, I'll choose being a jerk for good. It's not a decision to be made lightly, and if it happens often then we're probably back in "permanent jerk" territory, but sometimes it's a decision that needs to be made anyway.
[+] [-] FLUX-YOU|9 years ago|reply
See, the first guy is just a Junior Brilliant Jerk. He's slowly learning and will eventually turn into the Senior Brilliant Jerk if you give him enough time. The Senior Brilliant Jerk is the one that stays just within people's tolerances. But you can't become a Senior without being a Junior first, so sorry, you were just the one to give him some experience. :)
[+] [-] brendangregg|9 years ago|reply
[+] [-] AlexC04|9 years ago|reply
[+] [-] throwawaymsft|9 years ago|reply
[+] [-] obilgic|9 years ago|reply
[+] [-] kristopolous|9 years ago|reply
[+] [-] unknown|9 years ago|reply
[deleted]
[+] [-] zug_zug|9 years ago|reply
How would feel if other people accomplished 1/10th what you did? What if they got paid 80% of what you got paid too?
What if teaching them took so much of your time that it was faster to do it yourself than hand-hold them through the process?
What if, despite producing more than the rest of the team combined, management saw you as a problem, and wasn't interested in your perspective now that you had a reputation?
Have you asked "the jerk" to be more polite about his feedback? Have you explained why it's important? Have you listened to his perspective?
[+] [-] jayroh|9 years ago|reply
[+] [-] daviross|9 years ago|reply
[+] [-] xiaoma|9 years ago|reply
If this is true, it sounds like the best option would have been firing the rest of the team and looking for another like him.
[+] [-] ianbicking|9 years ago|reply
I'd take that claim skeptically. But another consideration is that more than half of a team's work isn't code. You have to write the right thing, not just something, and that requires time and communication. So he might have been a 10x coder and a 0.1x communicator – indeed since he seemed to have little interest in interpersonal relations, some amount of his performance may have been due to his own time allocation choices.
Two of those people together would perform very poorly on some projects. And very well on others, depending on the clarity of the project and the amount of technical challenge it presented.
[+] [-] jldugger|9 years ago|reply
[+] [-] seoknucklehead|9 years ago|reply
[+] [-] rootusrootus|9 years ago|reply
[+] [-] mjfl|9 years ago|reply
[+] [-] jimktrains2|9 years ago|reply
I wonder if this is the issue really. Some people can't take criticism unless wrapped in sugar. If it's really, and especially if it comes with potential alternatives it should be socially fine, but it's not.
[+] [-] watwut|9 years ago|reply
The dude presented opinions and preferences as facts. Is there any reason to think he would easily accept when one of juniors called him on it? Because if he would be able to accept the criticism, one of colleges would be able to convince him that some of his criticism is wrong. To me it sounds more like he used the biting criticism to keep the "top dog" position.
People who can tolerate potentially biting criticism wont present preferences as facts all that much, because there would learn from people criticizing them for that in the past.
[+] [-] segmondy|9 years ago|reply
I've seen this before, where the team was building a skyscraper with cardboard boxes, and the "brilliant jerk" called them out and they fumed and morale was low. The jerk left and the team supposedly started meeting their goals and was releasing faster.
Well of course they were! the lone voice that was the gatekeeper was gone and all sorts of garbage was being committed to the code base. The skyscraper went up faster, and one day it came crashing down never to go up again. I was a consultant that saw this. So I always take "jerk" with a grain of salt. Of course, people should be kind, diplomatic, and caring, but they should also tell the truth and the bitter truth. I'm conflicted on the entire training thing, I believe that senior developers should teach, however, unless the company is willing to budget time for that, it is on each person to learn and shore up their skill. The company should train their developers if they are not up to par.
Work is were work happens, if you wish to learn and grow, study furiously outside of work. It's your responsibility as someone that represents themselves as a professional and asks to be paid a fair wage to learn. Some of these lessons the "senior developers" can teach are worth hundreds of thousands or millions of dollars, I don't see junior developers cutting checks to them for those lessons. Let me reiterate, work is were work happens. If you are fortunate to find a mentor that is willing to teach you, be grateful for you are blessed. If you apply for a job and the company never talked about training you, it's your responsibility.
[+] [-] spacemanmatt|9 years ago|reply
It was amazing to work with people you could simply expect respect from, even when everyone was well aware of the simmering annoyance and disagreement available below the surface. You just can't build the kind of momentum we saw with people who many any team member feel unsafe in their role.
[+] [-] gydfi|9 years ago|reply
[+] [-] bagacrap|9 years ago|reply
geeze. This is either a ridiculous hyperbole or telling of a more deep-seated problem. You should not regularly be posting changes that have room for hundreds of comments, and if you do post a change that massive, it should not be considered normal to only elicit a "handful" of comments/suggestions.
I work in a company with a strong code review culture. When I'm less confident in the correctness of what I'm doing, I'll ask for a review from someone who I know will use a fine-toothed comb. This necessarily means dealing with what seems like personal preference, but that's a small price to pay for added assuredness you're doing the right thing. Some reviewers pretty much just rubber stamp your work. That can be useful if I'm highly comfortable with the code I'm working with, but overall I don't think that is a positive or makes them less of a jerk. If anything, not taking the time to provide meaningful feedback is the jerk move.
[+] [-] hug|9 years ago|reply
It's unhelpful to pigeonhole people and then extrapolate out their actions from there, because for the most part people don't conform to whatever mental model of that stereotype you've built in your head. People are complex beyond imagining.
Besides, what's the author's sample size here? One? Two? It's an anecdote worth relating, to be sure, but I think it'd be better served by leaving the "Brilliant Jerk" bit out, and leaving it as a story about team morale being more important than the contributions of any single team member.
[+] [-] novembermike|9 years ago|reply
[+] [-] latenightcoding|9 years ago|reply
[+] [-] phaed|9 years ago|reply
[+] [-] astrodust|9 years ago|reply
[+] [-] cateye|9 years ago|reply
I've seen a lot that socially desirable behavior is evaluated and preferred rather than people doing excellent work. Group dynamics quickly exclude these by creating a consensus of what is accepted and what the goal of the group is. This is especially easy because these brilliant people are always -by definition- a minority,
[+] [-] st3v3r|9 years ago|reply
[+] [-] technologyvault|9 years ago|reply
True brilliance includes the ability to recognize and govern how you are affecting others.
[+] [-] dimgl|9 years ago|reply
It's also really important to be careful with jerks who think they are brilliant, even if they are. There's always someone smarter out there and clever solutions aren't always the best solutions if no one can understand them.
[+] [-] watwut|9 years ago|reply
[+] [-] w00tw00tw00t|9 years ago|reply
[+] [-] sokoloff|9 years ago|reply
Avoiding calling someone exhibiting a negative behavior by the accepted label for that behavior is healthier than tiptoeing around and pretending that Hannibal Lecter just has different dietary preferences and that's OK.
[+] [-] wott|9 years ago|reply
What about people who call "jerks" people who call someone a jerk?
:-D
[+] [-] bdueicnen|9 years ago|reply
Previously, I thought myself to be exceptionally good at my craft, and I let that define who I was as a person. Recently, however, I reconnected with an old, vagabond friend. No one in his circle could evaluate my programming competence or even cared about it. To them, I was a socially awkward, single-dimensional guy. That really shattered my bubble.
[+] [-] ahallock|9 years ago|reply
> Its[sic] not that he was wrong — he rarely was
> He had good reasons, and he was more often right than not
> He just stated his opinions as fact. It was clear that he saw the world in black or white — no gray areas — and we were all wrong.
So the author agreed that he was right almost all of the time, but he should allow for gray areas? Makes no sense.
Later on:
> A funny thing happened almost immediately after he left: morale increased steadily and we actually began to meet our goals even faster with one less person on the team.
But the "jerk" was always right and "slaughtered" the code reviews of his peers, so what kind of code were they producing to meet their goals?
Maybe this guy was a jerk and didn't work well on the team, but it also sounds like the other people involved were terrible at their jobs and should either get re-educated or find another career.