A blog about trying to make yourself better at making and designing websites. Also about random shit.

The Human Parts

I've recently written about the some of the stresses that we face as web developers: there are new frameworks, new languages, new processes, and new tools being made every day, and it's super hard to keep up.

But I'll let you in on a secret: learning and being good with a piece of technology is the easy part. The toughest things that I had to learn as an engineer were the more human parts:

  • Learning to collaborate with designers and other programmers in the team.
  • Keeping people in the loop with what you're working on.
  • Being able to set expectations to other people about your work.
  • Being able to communicate what you're going to build with everyone.
  • Being able to sell yourself and your skills.
  • Being able to ask and question what your audience / client / boss / co-worker needs.
  • Being able to weigh pros and cons and make compromises on design and implementation.

The way programmers and designers are portrayed in the media just isn't true: they don't go off on their own and lock themselves in a room for weeks or months on end and come out with a finished product. Software requires a lot of sharing and collaboration.

You might shrug these off as just "soft skills" that you don't need, but I don't think that's true. A lot of your work as a web developer is communication.