10

I work in a small software team. we have this one brilliant programmer who has an opinion about everything. He often comes around looks at the peers' code and make rude comments like

"what kind of crap is that?"

"Write code like a professional not like a student?"

The top of all

"That is not how its supposed to be done"

but when asked about what he suggests he comments

"You have to know... That's why you are being paid".

It is hitting the team's confidence pretty hard. The management Knows about this and will not take any action since he is most productive.

  • 6
    Perhaps a formal code review would be a way to make him put up or shut up? ie make constructive suggestions rather than hide behind 'you should know'. – peterG Nov 9 '17 at 22:27
  • @peterG , that could be an entire answer instead of a comment – everyone Nov 10 '17 at 13:01
  • 12
    I'm not convinced that this guy is actually brilliant. In my experience, people that behave like this aren't very good and just talk a lot to make themselves sound good. A programmer who was actually brilliant would love to explain why he's criticizing the work. – 17 of 26 Nov 10 '17 at 15:06
  • 2
    @17of26 that's my experience too, corroborated by the fact that this is a small team of (possibly?) inexperienced programmers. Sounds like a slightly more "expert" developer acting like a diva. Brilliant programmers don't exist, only those that can work in team and those who can't. – BgrWorker Nov 10 '17 at 15:37
14

When I come across someone who is very good at their job I take this in my stride and think of it as constructive criticism and try and learn from it.

What he is doing is unprofessional, but may be useful. If someone more experienced than me said something was being done incorrectly, I'd research for the correct way for example. Take what you can from him, ignore the rest as an eccentric personality.

You can build yourself as a pro, or you can get involved with petty squabbles and personality clashes... the first is far better for you in the long haul.

  • 11
    Although I like what you say, I don't see how "what kind of crap is that?" can be taken as constructive criticism. Seems that the person also is reluctant to give feedback to OP and other teammates to actually be able to build themselves as pros. – DarkCygnus Nov 9 '17 at 20:41
  • 7
    "What kind of crap is that, you should use X for that, research this shit immiedately" is, while being kind of rude, actually constructive. "What kind of crap is that" offers no reasoning or alternative approach, and will in most cases only cause the accused person to take "defensive stance". – Yuropoor Nov 9 '17 at 22:52
  • 1
    @DarkCygnus you can get offended or not, that's a personal choice. I covered it in my second paragraph under 'ignore the rest'. – Kilisi Nov 10 '17 at 10:54
  • 2
    I agree, but I think in this scenario there's nothing constructive to be had. The dev in question is not offering any useful feedback and is just insulting people. I'm fairly certain the guy doesn't actually know what he's doing, otherwise he'd be explaining why the code is wrong. – 17 of 26 Nov 10 '17 at 15:47
  • 2
    To advance professionally you put yourself in a professional mind-set, you analyse the possible consequences of your actions and interactions, learn to deal with differing personalities and situations. The sooner people grasp that, the better. Complaining about the star performer looks like the jealousy of a petulant schoolgirl. Management already know he has a chip on his shoulder, but he is more valuable to the business then the plebeians. Eventually he'll run out of rope without you getting involved. If your morale is dependent on a colleague, then you have a lot to learn. – Kilisi Nov 10 '17 at 16:44
10
+100

One thing you could do is to ignore those rude comments if you can. They seem to have no use or whatsoever, so it is safe to ignore them. This, however, is a bit hard if the person keeps saying those things.

Another thing that you could do is to speak out to him in such situations, and say something like: "Hey, that was rude. Please try to keep it professional when giving your opinion."

This will be more effective if done in the presence of other teammates that also think his remarks are rude, so they can back you up if that person starts to complain or debunk your observation. It is more likely that he will try stop doing that when he sees several coworkers join the petition.

If nothing of this works, one last resort you could try is to escalate it (again?) to your boss, also making sure some or several coworkers join you when meeting your boss to talk. He may be the star programmer, but his personal skills and attitude are definitely not anywhere near that level (and this is what you should bring up if it comes to this).

Anyways, the key here is to have the support of other team members, so your arguments are more convincing and in a way so he feels the pressure to adapt his attitude. Hope you can sort this out, good luck.

  • 3
    My instincts are much less professional. I was thinking I'd start it out as if I wanted to deal with the tone of the criticism, which he must know is abrasive - "Fred, can I make a request about the way you offer feedback about my programming?....... If you could use some mouthwash in the future, I'd appreciate it." +1 for being a better human being than me. – PoloHoleSet Nov 9 '17 at 22:39
4

When I encounter annoying behavior in the workplace, I try to ask myself "Is the behavior adding value to the organization or me?" If the answer is "yes" then I try to focus on that and maybe learn something.

From what the OP has said, the jerk's behavior is not adding value at all, but rather destroying value in terms of team cohesiveness and efficacy. You might, as DarkCygnus has suggested, raise the issue with management again, but focus on the negative effects on productivity the jerk has. Be prepared for management to either (A) still not care or (B) tell everyone who has an issue with the jerk to look for work elsewhere. You will have a better chance of getting management to listen if you offer a solution like

Please tell the jerk that even though he's very productive he has to interact professionally with the rest of the team or he will be (demoted|replaced|disciplined).

Finally, in my experience (~30 years in Silicon Valley), when someone goes out of their way to criticize, then refuses to offer an improved solution, they are being a douchebag just for the sake of hurting others. This is completely unprofessional behavior and should be called out immediately and publicly as such, along the lines of

The fact that you refuse to offer a suggestion for improvement indicates strongly that you can't offer an improvement and are nothing but a (jerk|douchebag|asshole|choose a pejorative to fit your company culture) who doesn't care about making a better product or organization. Why don't you try helping for a change? And criticism without suggestion for improvement is not help... it's just being a (jerk|douchebag|asshole|choose a pejorative to fit your company culture), which is what you are.

Others may suggest that name calling is just as unprofessional, but I would argue that it's done with the intent of improving the office environment/culture for the majority and thus of value.

I have done this before and have not been fired for it, yet. Also, it has made a positive difference in terms of the offender at least holding back on the vitriol if not being more helpful.

  • 2
    This. In my experience, such people need to understand that work is not only about producing X. There is a minimum of social competence required: No matter whether the person is right or not, he is hurting morale and thus productivity. Constructive criticism is useful. Bashing others without offering advice is not. – bytepusher Nov 10 '17 at 6:56
1

Oh thanks for your absolutely unhelpful remark, maybe we could achieve better quality as a team if you acted like a professional instead of grunting around like a troll? As a grown-up you should know how to behave.

Once talking nicely with him or through management fails, I'd make it clear to him that his failures are far bigger than the potential failures of the remaining team. So, by all means, first attempt the very valid and more professional suggestions provided in the existing answers (talking with him, talking with management, taking his remarks as hints to improve where possible, trying to do code reviews). Yet, if he refuses to give any solid concrete and consistent advice as to how to improve your coding skills and continues to blatantly bully you, then I'd find it important for your own psychological well-being to keep in mind that he is far more disruptive with his remarks and shows total disregard for soft skills, while you seem all set to improve yourself if necessary in whatever skills are required. And he needs to be made aware of that as well.

If he doesn't take subtle hints at this fact, I find it okay to eventually point it out in his language (staying on a factual level, don't call him names that don't apply etc.). Don't let him make you think you are worth less or less capable than him. He may have more coding experience, but you certainly show a better attitude and better team skills. There are certainly individual programmers who are so experienced they can outsmart a lot of other coders when it comes to coding, but if you work together as a team, you can still achieve more than him fighting everyone else.

Sometimes a heated discussion can clear the air and (once all "nice" approaches failed) it's likely your relationship will be more strained over time any way. He needs to see that we all have flaws, him included.

And in the end, you need to stand up to bullies in some way to stop them - if the local authorities won't do it, you will eventually have to stand up for yourself in one way or another.

All that being said - this is a risky approach and it's not everyone's flavor.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.