Some people seem to think that being smart and being really good at their jobs means that it’s okay to be a Grade-A Asshole. Like most of us, I’ve had the pleasure of working with a lot of smart people who are not assholes (and some who are genuinely nice), as well as the unfortunate burden of putting up with the opposite. This is not an attempt to skewer any individual now or in the past, although I definitely am drawing on real examples in my career. :)
Here are some common signs that indicate you may suffer from assholery:
You regularly think that other people are idiots, and probably say as much. You’ll probably comment on this post and say so.
You probably think that in any given room, you are the smartest person in the room. No. You’re pretty damn sure you are. You’re thinking you’re smarter than me right now, and probably just about everyone else who might read this — especially if they agree with me.
You don’t bother trying to understand and verify where someone is coming from, and quickly dismiss what they say as stupid if you disagree. You think I’m just writing this post because I’m not as smart as you and not as good at what I do. You’re so smart that you’re sure you can deduce others’ motivations (and their relative intelligence and knowledge about things) by reading one post by them, or looking at their code.
You don’t give people space to do it “wrong.” You work with them on a team. They have a job to do just like you, but if you disagree with the way they do something, it’s clearly “wrong” and “stupid” and requires you to drop what you should be doing to come in and “fix it.” Clearly, if you want it done right, you gotta do it yourself.
You don’t “have time” for people who don’t already grok everything that you do. I mean, it’s “so obvious!” What is wrong with these nimrods! You don’t have time to even read the next bullet point here.
Your first response (perhaps publicly, tweeted) to someone saying something you know to be factually incorrect is “Check out this f — king idiot who has no idea what he’s talking about.” And you think that’s a perfectly appropriate response. You must combat idiocy, after all. It’s a public service you are doing.
You can’t remember the last time you lost an argument. Obviously, this means you are smarter and better than everyone. It couldn’t be because people have just learned that you can’t be wrong. Ever.
You think that “being honest” means having no filter between your brain and your mouth. And you think that’s a good thing. You proudly and unapologetically can’t wait to honestly tell me this.
You think there’s nothing wrong with what I describe above.
The list could be vastly expanded, but that’s not the point. I’m not here to rant and vent. (Well not just to rant and vent.)
I know the signs of assholery because I have my own tendencies towards them. If you suffer from similar symptoms, I have good news. There is hope. You can get better. Here are some things I try to do to combat them.
Remind yourself daily (or more often — whenever you feel inclined to smirk at someone), that there are plenty of really smart, capable people in this world and, I mean, unless you are literally Einstein or Tesla or Musk or insert-renowned-smart-person-here, chances are, there are plenty of people as smart as you — and plenty who are even smarter, possibly even the person you are thinking is an idiot right now.
The same goes for being good at what you do. Unless you have, say, the most industry awards evar. (Most folks I’ve run into with this problem do not fall into this category, myself included.) I mean, you gotta actually believe this, but just telling yourself it at first may be enough of a start.
Remind yourself that being smart and great at your job is not the end all of life, the universe, and everything. Maybe, just maybe, simply being good to others is more important.
Instead of making a bunch of assumptions about someone, especially based on, say, one or even a handful of internet posts, actually personally engage. It’s best to do this 1–1, in private (i.e., not in a public forum) so that you can minimize the ego factor.
If you’re amazed at some terrible code, think about all the crap code that you’ve written. If you don’t have ready examples of this, you’re not improving. Think about that. Probably, they are just at another point in their career/experience/understanding than you are now. Maybe they are just you from a few months or years ago? (BONUS TIP: being self-deprecating does not give you carte blanche to bluntly criticize others. Saying “I used to write crap code like this, too” just doesn’t work.)
Breathe. Step back. Especially in situations where emotions are heated or you know you are in the right. Write up what you want to say right then. Save it. Sleep on it. Maybe even for a few days. Then come back. Most of the time, you’ll want to delete it, or at the very least, edit it. If you don’t feel that way, keep waiting. ;)
Re-read, slowly, what they wrote. See if they literally say what you took away from it. If not, there’s a good chance they did not mean what you inferred. This leads to…
Ask clarifying questions. Do so in a tactful way, though. The goal is to really understand more and more thoroughly, not to make a point or make yourself feel smarter. Avoid asserting what you think they mean in the question.
Put yourself in their shoes. Imagine if you were the one dealing with you. How would you react to what you are doing/saying? How would you want you to be?
Force yourself to help others, especially those less knowledgeable than you, regardless of your opinion of their relative intelligence. Go out of your way to volunteer your time to do this — keeping the above in mind as you do. Just going off and flaming people while “helping” them is not what you’re going for. :D
The next time you see someone doing something wrong, ask yourself if it’s really, really important for you to correct them. Hint: It’s almost certainly not. No. Really. Life will go on. The world will keep turning. There are very few things in this world where that is not the case. Is it really worth pissing that person off? Because unless they ask you, offering “free advice” or worse, stomping on/redoing their work for them, will surely do that.
Even if someone asks for help, if they don’t take your advice, don’t get mad. It’s okay. I promise. See above. Let it go. You did your part. Let them learn from their mistakes. (Heck, there’s a chance you might be wrong anyways.)
When engaging with someone, no matter who they are, ask yourself, “what can I learn from this person?” And try to find it. There will be something, I guarantee. And doing so helps to combat a sense of superiority.
If you believe in a higher power that wants you to be a better person, ask that higher power for help. Pray for humility, patience, and generosity. If you’re Catholic, go to confession, pray, and go to mass more often.
Cultivate self-awareness. Spend time at the end of each day reflecting on how you acted in relation to others. Especially if there were disagreements, analyze those in light of the suggestions here. Sometimes all it takes to improve is to make yourself more aware of how you’re doing — it’s a good goad to make you want to improve.
Read/learn about people who have unselfishly given their time or even their lives in service of others. Or maybe just someone you know who seems to be admirable in this way. Seek inspiration in the example of others. Just making yourself more mindful of others’ examples can help.
Years ago, very near the start of my career, a colleague recommended How to Win Friends and Influence People to me. I thought it was corny, but I read it. For the introverted, somewhat autistic types that seem to thrive in the software industry, I can’t recommend it enough. It has simple, time-tested advice that does more than help you not to be an ass; it can help in general in interpersonal situations.
Do you have recommendations that have helped you?
Step 1: Work on your people skills. See above. Most of the time, we need to work with others to achieve something greater, so learning to work well with others — and help others excel — is a key skill to cultivate. And for most of us, I suspect it really is something we have to work on. Others are just talented in this area, lucky them.
Step 2: Always be learning. This is doubtless important in most professions, but it is absolutely critical in software development. You should learn at least one new thing every day — and be able to talk about it and share it with others.
Step 3: Help others learn. As noted above, this is good to help develop one’s self interpersonally, but it also helps your own technical skills. Forcing yourself to explain something to others is a great way to learn, both about the subject but also about how others think — if you also get feedback from them on how you’re doing. Getting feedback also helps check yourself, that you are actually helping.
Step 4: Apply yourself, daily. Good programmers are lazy by nature — we are always trying to find ways to optimize performance and reduce effort for everyone. But no matter how smart you are, you ultimately still have to put in the time and effort to get and to stay better. You can’t rest on your laurels or you will fall behind.
Step 5: Take time to play and explore other things. If all you do every day is software software software, you will not be as awesome as you could be if you diversify your interests and enjoy other things. Your brain benefits from the off time, and you will learn things from other fields of interest that you can apply in your work that you never would have otherwise. You will see interesting and useful patterns to leverage. And anyways, it’s fun. Having more fun will make you a funner person, too.
Needless to say, this is not an exhaustive list. What would you add?
Send them a link to this. NO! I’m kidding. That would be a total jerk move. :) Sadly, I don’ think there’s much to be done at a peer level. Maybe they do need to be confronted. If you feel up to it, do it. Be ready for the blowback. And be ready for it not to help. Be ready for it possibly to make it worse.
Often I think the best you can do is hope they come across something that makes them wake up and realize they need to improve. Some people know they need to work on it, and just need gentle reminders. Others really don’t care. My opinion is that workplaces — managers — need to be better about recognizing and not putting up with it, particularly those that don’t seem to care.
The problem tends to be that these folks are often good at what they do, and it takes a very principled business person to sacrifice what they perceive as a good performer “just because” that person doesn’t play well with others. Of course, most business folks I’ve worked with would readily agree on a “no-asshole” rule and understand its value to the business. But I have found it rarer for that to actually translate into action and reality. “They are really good at what they do, after all.” And it is a tough market to find good people.
I think that, at least, a good manager/leader needs to be actively working to help difficult, high performers to work better with others. Sometimes radical candor is what you need. Sometimes people just need the experience of real consequences to wake them up. Taking action with such folks is not only good for your company holistically; it’s probably gonna be a good thing for that person, a wake-up call.
And dare I say that in terms of cultivating diversity in the workplace, this issue is even more important to work on? The “alpha male” mentality is actively hostile to creating an atmosphere in which people of all stripes can thrive.
What advice do you have for dealing with people like this, as a peer or a manager?
So there is always risk in writing something like this, risk of coming across as precisely what you are criticizing. But I think it’s worth the risk. The more we talk about this stuff, the more we let it permeate the industry, the more we will improve. Making ourselves collectively more aware can only help lead to action.
We, in software especially, have a real problem. We attract people who are not known for their interpersonal skills to begin with. We reward, more than anything, excellence in technical skillset. We sacrifice holistic good of teams and companies for the sake of top performers. I think we can be better.
As individuals, we can and should work more on cultivating our interpersonal skills. I promise doing so will only make you more successful. As company leaders, we need to help individuals cultivate these skills; we need to lead by example and demonstrate these skills; we need to reward these skills; we need to hire for these skills, and sometimes, yep, we need to fire because some individuals won’t or can’t develop them. It’s good for business, and it is the right thing to do.