Former senior Googles Yonatan Zunger has a pretty good rebuttal to that Googler’s Manifesto that’s been going around.

Essentially, engineering is all about cooperation, collaboration, and empathy for both your colleagues and your customers. If someone told you that engineering was a field where you could get away with not dealing with people or feelings, then I’m very sorry to tell you that you have been lied to. Solitary work is something that only happens at the most junior levels, and even then it’s only possible because someone senior to you — most likely your manager — has been putting in long hours to build up the social structures in your group that let you focus on code.

As I’ve advanced through my (relatively very short) career, I’ve found this to be truer and truer. When I started out, I was a pretty good software developer that could competently engineer solutions to well-bounded problems, but I had no idea how to work with others to actually engineer solutions to business problems. While I continually strive to get better at ‘coding’, the much more valuable skills I’ve developed over the past few years are those of collaboration and communication.

A lot of the reason I started this blog was so that I’d have an excuse to routinely work on my communication skills, and I can’t overstate how important those skills are in non-trivial software development.