We often hear that apart from technical skills companies also look for 'good communication skills' in a software developer.
In your opinion, what are the attributes of someone having good communication skills? Also, if you are in hiring how do you test for the same in a candidate?
I do agree with some points that have been made so far. Not with all I see conflations of expectation and assumptions of behaviour but than ... I am not an inch better.
The participants usually decide how to communicate and having a membrane decide what others want or should want usually is some kind of censorship. Questions of values arise too, what is good and in what metric?
What do we measure?
This alone makes the question tricky and very subjective.
I personally like persons who swear openly as long as they don't personally attack people, others already feel uncomfortable with swear words.
It's a cultural thing so to say and we all bring in our own biases.
Back to the communication skill, I can give some observations, about ideas that I picked up over the years, most likely some are wrong.
Communication is complicated but lets be real for a second as a programmer you just need average communication skills. Usually we are in small team in a comfortable environment talking about things that should be done within 2 weeks or so.
And as I mentioned in the beginning it is highly subjective.
Good communication is hard to categorize. Different people will respond to different social cues. In order to have good communication skills, you need to be able to adapt to different personalities.
I like what the other commenters said about listening, and responding with relevant and insightful material, this is obviously a pillar of good communication.
There are so many ways to get your points, or questions, or requests across to the people you are trying to communicate with. In general, look people in the eye, don't interrupt them when they are speaking, and listen with the intent to understand, then it will be easier to respond with something of value to add to the conversation.
In an interview, get them to explain a very simple concept to you. If they can explain the simple concept well, chances are they are articulate how a more complex system works. Asking your candidate to walk you through a solution or a system, will force them to use their vocabulary, and maintain your attention.
Cheers.
In addition to what Sandeep Panda said, I'd also try to see how they respond to feedback regarding a given task, both positive and negative.
If people get angry or send a snappy comment, that usually means they don't take feedback and criticism well, and that makes it difficult to fit them in a team. If they thank you and try to make some improvements, you can expect them to behave in a similar way when you hire them.
In case you're not sending out tasks for hiring, you can try finding out how they solved problems before, how they react and what do they do when an issue arises, and whether they are willing to share some mistakes they made over time. E.g. you can ask them to describe how their last project post-mortem went. You should look for someone who doesn't point fingers at people but focuses on the problems that arose and makes a plan to prevent them in the future.
Sometimes HR goes through this, but you might want to test this yourself, to get a better impression of them.
Good communication skills doesn't mean that you should have fluent in speaking. It is what you understand and let understand others with your opinion.
You should grasp understanding the task requirement.
If you are in hiring how do you test for the same in a candidate?
If the candidate is able to understand what you ask and able to answer in his/her way, then you may know how proficient in communication.
Sometimes, I feel difficult understanding the requirement for the task. I ask repeatedly. Asking questions repeatedly is not a bad practice but it will be bad when you don't understand the same thing. It is a sign of poor communication. Poor communication can happen from both side. It doesn't mean that if candidate doesn't understand what you say due to his/her capability. It might be your own fault making people understand what you say about.
Thus, things to consider while having communication:
In my personal experience, I have faced such problem. So, I would like to suggest:
If candidate forgets the talks, that will also state a poor signal of communication. So, better to graph in mind and in written.
Good to see you here Prashant!
To me "good communication skill" means clarity of thought and the ability to explain your rationale succinctly.
When I am hiring I usually test for both written and verbal communication skills. You can easily gauge someone's verbal communication skills by having a conversation with them. Testing written communication skill can be a bit tricky, but not difficult. I make sure to converse a lot with any potential candidate over email so that I can gauge their writing skills. Some people are good at verbal communication, but fail to communicate effectively in written format. This is a big problem if you are building a remote team and spend a lot of time collaborating via Slack, emails etc. So, make sure you are chatting with the candidate, asking questions etc over email. In addition to this, I always pay special attention to the ReadMe in their assignment project. This is usually a good indicator of how good they are in conveying their thoughts in written format.
Hope this helps. 😃
Let me preface this answer by applauding all of the excellent answers in here! :) They cover the most important aspects, usual suspects if you may.
I'll go ahead and split the aforementioned modes of communication into two main categories.
📘 Informational Communication
🤓 Behavioural Communication
All formal communication, across both the verbal, and written channels — experientially speaking — fall into the above two buckets; either you are:
Often, it's a mix of both!
Sandeep's answer, and Milica's answer go into details on these modes of communication, and how/what they screen on these respective aspects.
Understanding this distinction, and improving on the corresponding characteristics, is what I would characterise as — working towards "good communication skills"!
🌟
One of the tools that I want to leave here for an aspirant on their way to becoming better at their skill of communication (especially communication during interviews), is The S.T.A.R. Method.
Hope this is of help! :-)