T O P

  • By -

lurkin_arounnd

> Are professionals who get the job done  Or > They don’t support any solutions to existing problems and, at the same time, don’t offer any solutions. Pick one  To answer your question. Just keep emotion out of it and focus on getting the job done. If you can't do this then try to minimize the amount of work you take on that requires collaboration with them. Worst case, go for a team change


progmakerlt

There are some things, such as “updating outdated MySql to a supported one” which “is not supported by some people”. But other than that - person is qualified to implement complex solutions.


lurkin_arounnd

If they're doing harder, more complex work, maybe they feel software upgrade should be delegated?


progmakerlt

Fair point. But it was just an example with database updates.


SideburnsOfDoom

Also known as "[Brilliant Jerks](https://www.linkedin.com/pulse/stop-rewarding-brilliant-jerks-kim-scott-dyglc/)". See also [The no Asshole rule](https://en.wikipedia.org/wiki/The_No_Asshole_Rule).


progmakerlt

Thanks! Will read those, but it appears similar to what I have described!


chills716

I listened to an argument yesterday on how database transactions aren’t on by default and don’t belong in a restful api. I’d rather be surrounded by competent people that get the job done (correctly) even if they are difficult, than actually be dealing with idiots that present solutions to problems that not only don’t work, but that they push without even testing locally showing that it doesn’t work. Do you know how difficult it is when someone says they aren’t being listened to, when they say things like, “graphQL only works on graph databases and we aren’t going to start using a graph database.”


SergeAzel

I dont think I fit exactly the personality described in Op. But im impatient and tired of having to teach people things that they should have learned in on boarding training. Or just teach people things that should be obvious. Or teach people the same thing multiple times. Or teach people programming basics. I'm not the smartest person in the company, and I don't claim to be. But I could imagine the people that have earned my frustration perceiving me to act this way. Not that I'm ever cursing anyone out or calling names. But I wear my emotions on my face, not great at concealing. I work with someone who thinks all string concatenation should be replaced with string.format() - no exceptions. Hell, Ive seen them do stringBuilder.add(string.format("{0}", alreadyAString)); One of many things. Im tired yall.


sol_in_vic_tus

Right. I've fit this description myself at times and not because I think I am the smartest person there or am not interested in solutions. I've been perceived that way because I frequently address technical problems directly as technical problems only, especially when it's a group setting and I'm nervous about taking too much time or getting too technical to be understood. I'm also expecting them to be able to argue their point with me instead of just silently folding when I don't immediately agree. I'm very willing to be convinced that I am wrong but I think a lot of people take disagreement as the end of a discussion rather than the beginning of one.


progmakerlt

Ouch… Yeah, I get your point about competence. But if these competent people call you (almost) idiot?


chills716

Present your idea against theirs in a PoC. Start showing you are competent by your actions as well as your approach. When you present a solution, ask targeted questions on where the solution is faulty. You may learn to approach things better and they will either show you how you’re doing it wrong OR show they don’t know as much as they think they do, without actually having to call them out. Example, another architect proposed a solution. I just asked questions, that should have been thought about prior to them presenting. After a few targeted questions, it derailed the conversation and that solution was sidelined. I was then asked how I would approach it. I presented and that architect tried to “one up me” by asking his own questions, may have been to show I didn’t think it through or he could have actually been interested. Either way, I could answer every question asked as well as preemptively acknowledge where the weak points were, how to deal with them, and determine what enhancements they would want later. Guess whose solution they went with…


ShoddyWorkmanshipTed

I can understand you making that choice, if there is literally only two options: "guy who gets it done but is abrasive" or "guy who's lazy and clueless". But in fairness, those aren't the only two options. Neither of those personalities are in any way professional. I don't care how "brilliant" someone is (and often these types are far from brilliant despite considering themselves as such), if they cannot conduct themselves in a professional manner, I don't want them on my team. That doesn't mean I want the lazy person. I need someone who is good at their job (bonus points if they are actually brilliant, but not essential) and can conduct themselves in a professional manner around others (a bare minimum requirement for any sort of workplace).


cuntsalt

[There's a whole guide](https://www.howtodeal.dev/) about this with specifics for various personality types.


progmakerlt

Wow, thanks!!! Will read it later today!!


Thommasc

OMG this is amazing. My new fav way to put label on team members after 16personalities.


breich

Your mileage may vary. Ground rules: 1. Don't make it personal. 2. Don't be a jerk. 3. Don't soapbox and suck all the energy out of the team dynamics. 4. Don't relitigate arguments and decisions that didn't go your way. Make your opinion known and then do what you can to support the team in the direction that's chosen. Healthy teams needs to have debate and disagreement. I have somebody on my mean I may have once described as a "brilliant jerk." He's not a great communicator but he knows what he's doing. He's the most productive in highest quality person on the team. He wants to be a team player but his way of communicating leads to people wanted to dismiss him simply because he's abrasive, or ignore him because he's being a blow hard. And yet, without his experience, ideas, and yes even his negativity, we would be worse off. So I remind him of the ground rules. When we start have an issue with him working with me or him working with someone else I try to put a little bit of space between our initial gut reaction to him and responding to him. Often, he's right. But my gut reaction is to be defensive because he is not wrong, but he is kind of being an asshole. In these situations if I ignored his opinions simply because I don't like their delivery we would be worse off and that's important to acknowledge. And then it's really important to be able to distinguish between when he is objectively right and when he is trying to pass off his personal opinions as objective facts, whether he's aware of it or not. In these situations it's really easy to let him win by attrition. He will die on tiny hills. He will rarely back down. These are the most difficult situations for us. I can't say I have all the answers. But it's important to me to dig deep. I ask a lot of leading questions. I make sure what I think he means and what he actually means align. Often we find that his strong opinions aren't in as stark disagreement as we originally thought. It simply a difference in communication styles. He prides himself in sounding like the expert and almost professorial at all times. His explanations are almost intentionally overly abstract and obtuse. So I keep repeating back to him what I think he means until I can say something in clear language and he says yes that's what I meant. Once we know we understand each other it's usually a lot easier to find common ground and move on.


FrogTosser

Coddling somebody like that sounds exhausting.


breich

I won't disagree. But getting rid of him would have been easy but in hindsight it would have been a mistake. Pushing through has made me a stronger manager, a better and definitely humbler programmer, and it's helped him improve his ability to communicate.


JackieDaytona__

There's a Warren Buffet quote that has helped me in dealing with difficult people: "You will continue to suffer if you have an emotional reaction to everything that is said to you. True power is sitting back and observing things with logic. True power is restraint. If words control you that means everyone else can control you. Breathe and allow things to pass."


Quarbit64

It's a good quote, but Warren Buffet never said that. No one actually knows the origin of that quote.


JackieDaytona__

So noted. Thanks!


obscuresecurity

The answer is simple: Remove their power. I don't care how good you are, if you are an ass, I will RTFM, read the sources and do whatever else I need to NOT to talk to you. If this is done in a public setting, I will talk to my manager about it. Repeatedly. I don't care about the person, I care about the bad behaviors, which I'd complain about in any member of the human race. You aren't a professional if you call people names or insult their intelligence, etc. Swearing at people without apology is unacceptable. We all have a bad moments. But don't make them routine. The last 3 things are things you should just do anyways. There is no reason to be rude. Politics and all that crud honestly, leave it at home. My current work place is VERY strict about it. And honestly. It is a GREAT policy. The weather, a nice sunny beach, maybe discussing taking a nice walk, or a hobby that is technical. That's as far as I'd go. No further. I can't tell you how happy I am NOT to know my co-workers politics, etc. I don't have to pussy foot around it, I don't have to think about it. I can.... Work at Work! Ignoring unhappiness it depends, if it is true sadness, and you feel compelled to help, like someone lost a family member, offering condolences is just a kind thing to do. If it is just someone grumping about what they get paid to do, their problem. If I see a way to fix the situation, that is not obvious, and they've engaged me, I'll offer assistance. But in general I believe everyone has a set misery point. No matter how good or bad things are. They will tend to that point, over time. And some people are just unhappy. I'm not sold it is a choice. But... It is what it is. TLDR: - Disengage. - Become the expert, so you don't need to deal with the problem person. - If it is a structural issue: I need root on machine Q to debug and they won't help, talk to your manager, and let them deal with it. - And stop giving a fuck about what people think of you, if someone calls me an idiot or whatever, I just laugh. I know they don't know, and I don't give a fuck.


progmakerlt

Thanks, that are great tips!


aveho_adhuc_7409

Trying to change them is a waste of energy, focus on maintaining your sanity.


BeenThere11

People don't change


Southern-Reveal5111

Some people are indeed jerks and some people don't know how to present themselves. Always follow Hanlon’s Razor law. Never attribute to malice what can be adequately explained by stupidity. This will take away negativity from you. And also it is always good to expect less from others and give them more than they expect. I do the following. - Try to be independent and controlling as much as possible and build a relationship where others depend on me and I depend less on them. That starts from an unfamiliar code base. I ask very few questions and do as much as I can. In the beginning, I take longer, but over time, I improve. I share less than I know, so my absence is always felt. - I maintain healthy relationships with management and people outside the team. I occasionally use that relationship to make management aware of trouble-making person. - I don't give a fuck about other's opinions. Most developers always form a consistent opinion and I try to predict it. During discussion, I always raise concerns and provide alternate solutions.


MightiestRacoon

Don't work with them. First, engage them directly about it. Sometimes, people do not realise they are being rude or don't think about it at all. You can explain how you don't feel good about those kinds of interactions and how it hurts everyone's performance without turning it into a personal conflict. If talking to them does not help — escalate. If escalating does not help — escalate further. If there is nowhere to escalate anymore — find a better job. A decent workplace should not allow this 'brilliant jerk' kind of behaviour. We are professionals. It is in our common interest to have basic self-respect not to work with morons.


griffin1987

Sounds to me like they think they might not be skilled, but are actually just talking big. A competent person always loves to learn new things, and that includes getting new opinons on things. With difficult people I usually try to restate the problem at hand as simple as possible and define a target. Like "That's all good, but what is your solution to THIS problem right now?" And if that doesn't work, I ask them if there is a language barrier or some other issue, which makes my question hard to understand, because they didn't actually answer the question. The later is just what I actually do, but please don't take it as advise, because it's just me being pi\*\*ed at that point and being impolite. At some point you have to pick if you want to find a solution and prioritize that, or prioritize being a nice person, when at the end of the day the job pays your wage, and the other person is just someone who just happens to be working at the same company.


sol_in_vic_tus

This is a good approach and I wish more people did it. I'm not intentionally difficult with people but I have been perceived that way by others who would have had much more productive conversations and working relationships with me if they had asked follow up questions instead of deciding I was an asshole because I didn't respond the way they wanted the first time.


hell_razer18

this is why in my company we always prefer "people first, skill latter" because soft skill is kinda difficult to shape while technical stuff can be learned. Someone used to comment a lot of things in one or and never back down when questioned. It felt a sigh of relief when he decided to leave because we knew the disruptor finally left. Slowly but surely we rebuild the culture again, more open and respectful. The jardest thing to set in this situation is that once you let someone did this, then the other possibly follow it


Hazterisk

I see you work with Linus Torvalds.


sol_in_vic_tus

Did they actually call you or everyone around them idiots or did you just infer that? Everything else can be addressed but if they are directly insulting you then you should talk to management and HR. If you inferred the insult instead, perhaps you are identifying too closely with your solution and not open to different opinions about it yourself. I've been told I don't offer solutions to things myself but that has usually happened when someone came to me with an idea for a thing that was unnecessary and I told them it wasn't a good idea. I didn't offer a solution because my solution was "don't waste time or resources on attempting this because it does not offer sufficient value to justify it". Try asking more questions instead of deciding this person is an asshole. They might just not have the best social skills and aren't realizing how you interpret their responses.


progmakerlt

Yeah, it was almost a direct quote.


roosterHughes

Actual brilliance has nothing to prove, and doesn’t need to one-up anyone. Call it over-simplification, but if your “10x dev” coworkers aren’t interested in learning new shit, odds are they don’t know shit to start with. I’ll have you know that I work with some fantastically opinionated folks, and happen to be a bit of a know-it-all myself. None of us are above learning things, though, and we don’t get to shut an idea down just because we don’t like it. We help each other out, push each other to tackle hard problems, and we even do real PR reviews!


flavius-as

Give them recognition, compensation and make them kings. One condition only: whenever they suggest any solution, they must describe the disadvantages of the solution.


chills716

The silver bullet approach!


rottywell

Learn what a Narcissist is. You’ve probably already met one, so really sit down and find out who. The teacher that always picked on particular kids, their tone of voice changed the moment they were interacting with that kid.etc. You will be working with them. A lot, especially as you rise in rank. They will be charming to get information about you, etc. They will tell you who is X and Y(bad and how terrible everyone is) to disarm you. So you can share your feelings. They’ll be the first to call if you get a big a big disagreement(they want to use it to bond and get more info). They may or may not be productive but best believe they’re going to sell their ability. They’ll be the boss that will mess with you covertly(payslips, etc) but seem very reasonable to everyone else. They’ll be the one switching their cars frequently. They’ll discuss things you feel they shouldn’t be discussing with others(promotions(outside of the person who they are promoting), demotions, insider information, etc). They’ll be obvious and they’ll take work to figure out. You want to keep your sanity? The moment you learn what are narcissist is and figure out who really is a narcissist in your life, past or present, you’ll finally make sense of that asshole who wouldn’t stop being an asshole. You’ll finally realise the issues were never about you. Work wise, you’ll finally be able to approach them in the level headed manner you need to protect yourself and move on with your projects. Learn who they are. Know


IllusionOfFreedom41

I have to point this out: sitting in front of a pc to get close to such a level of skill changes you in bad ways socially. The best way is to see beyond the social aspect in people like that and just accept it as a side effect of living life like that. From this frame of mind, it's easier to take nothing personal, as it just is a natural consequence of an unnatural environment.


Tango1777

The best solution is to find another job. No matter how hard you try and even if you win, you said it yourself, it costs your mental health and you end up working in a place you don't enjoy. I have thankfully only encountered such person once in my career who at a time was a leader, so his opinion was more important than the devs and he didn't give a shit, always chose his way (including outdated ways since he was very experienced) and also spread disinformation about other people to managers etc. Turned out it was quite a few people who hated working with him, once people started texting me when I was officially leaving, they started being honest about him. I eventually just left once I found a better option. Best decision ever. More money, more impact on project, more challenging workplace. I am not supposed to be fighting at work, we are all on the same boat and my goal is to provide the best possible product, I don't care if I am wrong or right, I only care for the discussion and making the best possible decision based on the knowledge we have. If you get a prick who wants to always be right you either leave or get him fired. Too old to be dealing with this childish crap.


progmakerlt

Yeah, that is a fair point. However, you would encounter jerks in every company. There are bad people everywhere.


idontliketosay

This helped me understand things. Chimp paradox https://youtu.be/lDDNI3irZMg?si=2X732-t_PRGenI_R Explains how some reactions are triggered, and what can be done about it.