5a. Should you learn how to code?

Really, should you?

In earlier chapters, we discussed how technical the job of a PM is – PMs aren’t expected to code (except perhaps at a very small startup), but are expected to be able to talk about technical topics with their engineers. So, is it worth it to learn how to code, particularly for the sake of the PM job hunt?

To cut to the chase – yes, it’s probably worth it to dive into this world at least a little bit, for both the job hunt and the actual job itself.

What are the benefits of learning how to code?

There are a few reasons why you should consider learning how to code:

  • Being able to pass a technical interview for the PM job hunt
  • Having background knowledge that will help you on-the-job as a PM
  • Building empathy with engineers, who you’ll have to work with
  • Knowing a skill that allows you to create your own apps or websites, if you’re interested
  • Providing more background on new technical developments, which might impact your future company or product

Also note that as more and more people apply for PM jobs, having the technical skills shifts from being a differentiator to being a prerequisite – it’s effectively an arm’s race. This shift is taking place over a long timeframe however, so remember that there are still plenty of PM jobs out there that do not require a technical background. Despite this, I would still argue that it doesn’t hurt to know at least a bit of coding, and that the time investment is worthwhile up to a certain point.

Things you’ll need:

Time…

Learning to code, as with learning any skill, takes time. This is more challenging when you’re working a full-time job, but learning to code does not require attending a full-time bootcamp. You will probably have to put aside a couple hours every day or two to have some time to focus on your curriculum.

A curriculum…

There are so many good resources online nowadays about learning how to code – the trick is picking one of the good options and just diving right in. As mentioned previously, I’d recommend CS50 or one of the introductory programming courses on Coursera or Udacity. Any introductory programming course from a reputable source is fine to choose; just pick one and stick with it.

Patience…

Be patient with yourself! It may have been a while since you’ve taken a class in school. It may have been even longer since you’ve learned such a technical, hands-on skill like coding. Patiently follow the curriculum and let your knowledge build up slowly. There may be a time when things begin to “click”, but don’t get frustrated if that time doesn’t come quickly.

Perspective…

It’s useful to remember that you’re not learning how to code in order to depend on this skill for your livelihood. Your aim is to learn how to code enough that you better understand how software engineering and modern web apps work. Your knowledge doesn’t have to be complete (if such a thing is possible), but you should let yourself chase your curiosity and look more into topics that come up that interest you.

How far down rabbit hole should you go?

There is so much to learn when it comes to coding, but as a budding PM, you don’t have to go too deep! You should certainly keep going along content areas that interest you, but your first goal should be to know enough to pass the technical interviews of the companies you’re interested in (if they have them). Read the earlier chapters about the technical interview, and remember that it’s probably more useful for you to learn applied topics (e.g. how to create a website), as opposed to going deep on theoretical topics (e.g. algorithms).