Please note for the record that I am not a communications expert. Everything I say here is based on 30 years (20 in tech) of professional experience, nearly half of that in various leadership positions.

There’s a giant elephant in the room. It’s huge, enormous even. It’s quite possibly the biggest flaw in the development community. And it really doesn’t get enough attention. Take the following real exchange taken from an email chain:

Email from me: Should we send anyone to the … training class? And if so, who do we send?

Response email: Yes

That’s it. Just… “yes”. Well, that answers the first part of my question, but not the important part. It’s just one symptom of a much larger problem in our industry: Poor communication skills.

Next example:

A few months ago I was interviewing a potential hire. Time and again he answered my questions by repeating answers to previous questions that had absolutely nothing to do with the current question. I decided about the third time he did this that we were going to pass and the interview was ended fairly quickly.

Side note: If your interview is scheduled for an hour and they cut if off at less than 30, you’re not getting the job.

Related: If you are the interviewer and you decide at some point during the interview you are going to pass, END THE INTERVIEW IMMEDIATELY. It isn’t polite or kind to drag the interview on. Quite the opposite. It’s more polite and kind to tell them up front: “Sorry, I don’t think you’re a fit, so we’re going to cut the interview off and not waste people’s time”. I don’t do this nearly often enough, but I’m trying to do better.

Example 3, also from the interview world

Candidate lives on the west coast and can only work later hours. He communicates this to the recruiter, who doesn’t pass it on to us. Position is supporting Eastern time clients and requires working normal Eastern zone business hours. We communicate this to the recruiter’s partner, who doesn’t pass this on. It isn’t until 45 minutes into the interview that I talk about the position and its requirements and we learn we have all wasted each other’s time.

So, three opportunities to avoid wasting nearly an hour of 3 people’s time for an interview with a candidate who can’t fill the requirement. Consider the hourly rates for the three people who are involved in the interview. Hundreds of dollars of wasted time could have been avoided at several points.

Example 4:

Company interviews and hires a “superstar” candidate to join an existing client project halfway through. You know the type. This guy knows all the things, answers every question perfectly, can refactor 1000 lines of code into a single 2 line function, et cetera, et cetera, et cetera.

Two days on the job, first meeting with the client, the “superstar” proceeds to trash the planned project and every choice the client and the team have made up to that point. Remember, this is halfway through the planned project already.

The client is obviously upset and wants to know why none of this was brought up before, afraid they have been throwing away money. The project team is upset, their talents being questioned by the “new guy”. The company leadership is upset, now having to apologize to the client and work long and hard, including heavily discounting the project cost, to salvage their relationship with the client. The “superstar” is shown the door.

The first three examples are from my own career. The last one was related to me by someone else, but I’ve seen a number of examples that were quite similar to my own experiences over the years. It’s led me to one inescapable conclusion. And that is, as a community, we as developers are not great with communication skills.

I don’t know if I can pin down a set of reasons for it. So much of what we do is communication. Every week we spend hours and hours in meetings, we send and read dozens–if not hundreds– of emails, we blog, we participate in forums and group chats, we attend user groups, conferences, and on and on. So much of what we do is communicate in one form or another. So why are we (using the royal we here) so bad at it?

Why?

There are a lot of theories that I’ve heard. Some people blame the stereotype: that we’re all geeks living in our parent’s basements who fear and shun contact with other human beings. I’ve been in the industry for nearly 20 years and have seen a LOT of other developers across numerous companies of various types and sizes.

Out of the thousands of developers I’ve worked with or met over that time, I’ve only come across 1 person that I felt met that criteria. He really was the stereotype. The problem is that he was an outstanding communicator. He didn’t talk much in meetings. But when he did, every comment was well thought out and reasonable. He could contribute more in two or three sentences than other people I knew who talk the entire meeting. He was the stereotype. He was also an exception.

Another theory is that we were never taught communication skills. While it’s true that a lot of developers don’t have college degrees, a lot still do. I don’t know about anyone else, but I know that my degree required that I take numerous language and communications-type courses. I have to assume most other people’s degree programs did as well. Maybe we as developers just didn’t do well in those classes? I don’t know. I do know that quite a few people I’ve met who do have those degrees aren’t all that great at communication.

Some people theorize that it is a direct reflection of how people outside of IT treat those in IT. It has been my experience on more than one occasion that salespeople and executives (i.e. the “beautiful people”) treat people in IT with disdain, or at least with a lack of respect and decency. I can see how this might have some influence on things.

I know that when I experience this behavior, it’s my natural tendency to not waste my good communication skills on such people, and thus reinforce the stereotype. I’m doing better, but sometimes my sarcastic nature gets the better of me and it still slips out.

Some people think that it’s because it’s not a priority, it doesn’t get any focus. As developers, we all speak multiple languages. And for most of those languages (i.e. the programming languages), the emphasis is on keeping things as succinct and simple as possible. And that might rub off onto our “natural world” languages. Maybe we’re writing our emails in the same mental pattern as we write our JavaScript, and people see that as poor communication when we see it as “efficient”.

Perhaps it’s because we are denizens of dungeons. I’ve worked at multiple places where the IT staff were located in the deepest, darkest corners of the office building. A couple of times I have literally been located in the basement. Could it be the lack of sunlight and vitamin D have a direct effect on communication skills? It’s as valid a theory as any I’ve heard.

Can we fix it? And do we need to?

That’s the real question, now, isn’t it? I’ve reached the point in my career as a manager where I’m more and more convinced that communication skills are more important than tech skills for a developer. What do I mean by that?

First, tech skills are generally easier for a dev to learn than communication skills. I don’t mean that I can hire someone off the street with no tech background. But if I hire someone with JavaScript skills, and need them to learn TypeScript or Python, that’s generally a fairly easy task. If I hire someone who can’t string words together into a coherent sentence, it’s much more difficult for them to learn proper grammar.

If I hire the “superstar” from our above example, it won’t be a problem to get them to learn a new tech stack. Getting them to not treat others with condescension and arrogance is a whole other matter.

But why do we need to fix it? And the answer to that is cost. Bad communication is costing companies a LOT of money in several different ways. The first cost is lost revenue. So many companies lose customers because the people that represent them offend or miscommunicate critical information to the client. There is no shortage of vendors who want to take away your clients. It only takes a few insults, miscommunications, or failures for them to go find someone else to give their money to.

Next, it costs you talent. If your “superstar” is pissing off the rest of the team and you don’t do anything about it, you’re going to lose a lot of your team members. Most of them won’t ever tell you they’re pissed. We’ve created a culture where communicating about things like money and happiness isn’t encouraged. Instead, it’s a culture of team members vs managers.

As a result, if there’s a problem, they’re just going to leave. You won’t know about it until they hand you their notice. Much of the time, they won’t even tell you the real reason they’re leaving. And with them will go a great deal of institutional knowledge that can’t be easily or quickly replaced. Replacing these people is expensive, both in salary and time lost while their replacement gets up to speed.

But can we fix the problem? The answer is, of course, yes, but only if it’s a management priority. Companies need to invest in their culture. And by that, I mean their people. It doesn’t matter what execs and HR say the company culture is. It doesn’t matter how many awards and pizza parties and team-building events a company has. What matters are the people.

That comes from the top down far more than from the bottom up. If management is open and communicating and treats people with respect, the team members will tend to do so as well. If, however, management is fostering a hostile or negative environment, if they do nothing about problem team members like our “superstar”, if they can’t be bothered to support the team members, then the team members will feel the same way. Company culture has to come from above because the team members know that they have a very limited influence on the matter.

It’s a fixable problem. But it needs to be a priority. Until leadership at the very top decide that it should be a priority, we’re not going to make much headway. And I don’t understand why it isn’t. It costs companies a lot of money. But for some reason, they just don’t see it.

There is a definite trend with employees pushing publically to change the attitudes of leadership. There’s also a growing trend of people openly pushing back against toxic coworkers. Those are good trends and I hope it’s starting to get more traction across the industry. If we can get those attitudes changed, the whole industry benefits.