Should Product Managers know how to code?
At first, it seems like a paradox. Aren’t product managers supposed to be good at technical stuff? But then PMs don’t code the product, engineers and developers do! As you can see, both answers look legit. Kind of a rabbit hole situation. And this is the reason why so many aspiring product managers ask the question and get confused.
However, the answer is simple. Product managers don’t need to know how to code. They can still do their job well. But before getting into the ‘how’, let’s talk about the ‘why’. Why this question arises.
Why do new PMs ask this question?
People looking to start a career in product management face this dilemma. And going over Quora, Reddit and other communities only makes it more perpetual. Different people favor different sides. For example, in this article, Why you need to learn how to code as a Product Manager, Jeremy Glassenberg, former platform lead at Box explains that you need to learn to code to better communicate with engineers.
While on the other side, people give the example of Steve Jobs… “Steve didn’t ever code,” writes Wozniak. “He wasn’t an engineer and he didn’t do any original design, but he was technical enough to alter and change and add to other designs.” And this is a pretty powerful argument because Steve Jobs is arguably the best PM of our time (although he was more than that).
Still no conclusion though. To find one, here’s a short answer.
The short answer
Ask this: What is the primary job of a PM? Product managers work at the crossroads of technology and business. They act as a coordinator between the two, translating business objectives to engineering teams and reporting on product development progress to superiors. For that, they must understand the market, define the product strategy, and communicate their ideas with the product team.
When it comes to coding, it can be helpful to achieve these goals, but it’s not the primary job description. So if you wish to apply for a PM’s job, not having coding skills shouldn’t be seen as a hindrance.
That being said, you don’t need to know how to code but you still need to understand how it works.
It’s not about writing the code, it’s about predicting the product
As a product manager, nobody expects you to code the product from scratch. However, you should be able to understand what developers mean when they use their jargon. In simple terms, you should be able to speak the language of a developer.
It’s useful if you learn coding skills that will help you to process data related to product usage, users adoption, and customer behaviors. So that you can make decisions based on these data-driven insights for the final product.
Understanding the technicalities might also make your job a lot easier. Here’s how:
It helps to solve one of the biggest problems — not being able to communicate with your developers and engineers. Once there’s better sync, you get the expected result from your developers. Remember that it’s not being the best programmer but being able to translate your ideas with your team.
It’s a lot easier to understand and manage customer input. Because you’ve got a knowledge and understanding of what is happening in the backend, you can tell your customers what to expect. You can let them know about the features and how these features are going to solve the problems.
When you can understand and communicate well with your engineers, they respect you and bond with you. You can help them out by proving constructive criticism and be more useful with the challenges they face. This creates not only a better relationship, but a product also.
But how exactly do you develop these skills? Start with the following.
- Understand Code Architecture
- Recognize and assist with debugging
- Learn about machine learning algorithms
- Experiment with the ‘Inspect Element’ command
- Understand CSS and tweak pre-written CSS codes
- Learn about wire framing
- Learn about the various components that make up a tech stack!
- Understand the fundamentals of various programming languages
- Have an idea about how your product works even if it’s vague
Why a PM doesn’t need to know how to code?
That was all the coding you will need as a product manager — It can’t be any clearer than that. And the list is not huge or complicated because you want to become a product manager, not a developer.
With that said, the more you ‘understand’ the technical jargon, the more efficient you become. This doesn’t mean that you need to have a technical background or degree in software engineering. It all boils down to your ability to understand how each team works and how you can help them to come up with better solutions.
You can achieve this level of understanding by staying curious and active. A product manager never stops learning because their responsibility is too many and too great. Be curious about small details, consume content-related to tech, and prioritize improving communication with the people who are helping you build the product.
But what if you already have a technical background?
Aspiring product managers who have a tech background would have many benefits. They can better leverage all the skills we mentioned above. However, the rules are going to be the same. We must come back to the same question: “What is the primary job of a PM?”
Therefore, you might already possess the coding knowledge but you still have to stick with the same responsibilities. As a product manager, you bring everybody together, you communicate with your team, and make sure that everybody is on the same page. That said, even if you have a software engineering degree, you still can’t decide the how the final technical architecture of the product should look like. It’s on your engineering team — perhaps they will build the final product. It’s simply because they have expertise in their own domain and you can only help them.
What if you want to learn coding to become a better PM?
As we said, the learning part never gets old for PMs. Learning code will definitely take you to better places. And if you enjoy it, you should do it.
But here’s the caveat though. You should focus on building a better product; you should still focus on trying to solve the base problem, and you should still do it so that you can communicate better.
For instance, if you’re unable to understand what the final product would be or what everybody is discussing, then you should give some time to understand the jargon and technicalities. Rather than jumping directly to code the product. Learn the terminologies and buzzwords so that you can better express your though or understand what your in-house developers are saying. There are many free resources that will help you. You can learn to write better user stories without coding as well.
The point is to find out the main problem as a whole that’s causing the trouble. Spend some time to crack the root problem — learning how to code will not solve that.
Let’s solve the riddle and end the discussion for good. The job of a product manager does not entail coding the product from scratch. It is about answering the simple but critical question: “How will the product solve the user’s problem?” They provide the expertise required to steer the product strategy in the right direction.
Yes, some coding skills we mentioned will make you better at your job. However, These skills will make sure that you make the right decisions by understanding the process better. So whatever skills you learn, you learn it to become better at product management. There might be some cases where PMs are required to have more technical knowledge, but always remember this. A PM who is good at communicating his ideas will always be preferred over someone who is great at coding.
Originally published at https://zeda.io on July 29, 2021.