In my opinion, a good software developer has decent communication skills. In the effect, she/he is capable of speaking with business stakeholders, external clients, and other developers.
Communication is often underestimated in our job. That's because when we start our journey with software engineering, we focus on the hard skills, such as backend language, frontend language, CI/CD, databases, infrastructure, and all the other sexy stuff. But as our seniority level increases, we need to start thinking about our soft skills as well. Communicating with other team members and business is crucial.
First of all, we need to be able to understand the business problem that we're solving. How to do that without communicating with people "on the other side", that shouldn't speak SQL or code to us (if they do, that's a warning sign 😅)
Second of all, once we understand the problem, we need to cooperate to solve it. It might involve a lot of discussions. We need to able to talk about the architecture of the solution, patterns that we want to use, make sure we have a mutual understanding of the problem.
Those are not all the situations that require good communication skills.
Why do you think communication is important for software engineers?