Do Product Managers Need To Code?
Product Management today isn’t the same beast it was ten years ago. Processes shift, methodologies rise and fall, and new tools are constantly changing how we do things. One recent hot topic that tends to crop up on Reddit: Do Product Managers need to code?
I sat down with ProdPad’s Head of Product, Kirsty Kearney-Greig, to get her take on the question after gaining over a decade of experience in the tech field. Is coding a must-have skill for Product Managers, or just an added bonus in your toolbox?
So, should product managers learn to code?
Whether or not to learn how to code isn’t just about adding another skill to your repertoire; it’s about the need to understand the core of what makes digital products tick. But, as with most things Product, this isn’t a black-and-white issue.
A lot of people represent knowing how to code as some sort of superpower in our tech-driven world. After all, for PMs it promises a better understanding of the products we manage and a closer connection with the engineering teams.
However, how necessary code really is for PMs isn’t set in stone. Not all Product Management roles require much technical expertise, let alone being able to actually sit down and bash out lines of code. And there’s a beauty in focusing on what PMs do best: bridging the gap between business needs, user experience, and technology.
Kirsty was pretty direct when I asked her if Product Managers need to code:
“My general answer would be no, I don’t think that Product Managers do need to code. Unless you’re working in a specifically code-focused product. Of course, knowing and speaking those languages, understanding the difference between backend and frontend, databases, that kind of stuff is useful, I think.
“But I wouldn’t expect any of my PMs to sit there and, you know, write out some JavaScript. That’s not their job. Their job is to be defining problems, and understanding that side of things.”
When is knowing how to code useful for Product Managers?
Of course, there are always exceptions to every rule. When I asked Kirsty if there were times when having some specific coding knowledge would be a benefit for a Product Manager, she did have a pretty solid exemplar:
“Using one of our customers as an example, Liz Love, who used to work with us, now works at Secure Code Warrior. It’s a platform to learn how to code, basically. When they were hiring a PM, they obviously wanted someone specifically who had coding knowledge and experience, because part of the product is an interface in which you’re learning and editing code.
“So, if your product is about teaching people how to code or it has some sort of specific coding focus, then having some basic coding knowledge can be useful. But, as a general rule, I don’t think you need to know how to code.”
Chatting with Kirsty, it quickly became clear that the context of your product and company plays a significant role in how important knowing code is. If you’re working on a tech-heavy product or in a very early-stage startup environment, coding knowledge can be invaluable.
Of course, it also helps if you can speak the language of your Developers, and if you’ve got your head around the intricacies of how their development process works. But for many other Product Managers, especially those in less technical domains, the story might be different.
Learning your engineers’ languages
If you don’t need to be able to write code yourself, does that mean you can just go ahead and ignore that side of the Product knowledge base? The answer may shock you! (Spoilers: it won’t shock you.)
Of course you can’t just ignore it, you fool! Don’t be so damn lazy! I’ll let Kirsty explain why coding’s still something that needs to be on your radar:
“I don’t think you need hard coding skills. But what you do need to have is a technical understanding of your own stack and the product that you are managing, what it’s built on, and what it uses. That’s so you can speak the same language as the Engineering or Development team when they discuss what you’re working with.”
That having been said, it’s not just about being able to discuss things with the Devs and know what they’re going on about:
“It can also be useful to have a basic understanding of things like frontend code, HTML, and CSS, because it can allow you to speak the language of your designers as well. Having some SQL knowledge can also be quite useful for data analysis. But having enough of a working understanding to talk about something isn’t the same as needing to know all of the ins and outs.”
Staying in your lane
The essence of being a PM often lies in strategic thinking, problem-solving, and user advocacy, skills that don’t really require any specific coding prowess. PMs are the orchestrators who ensure all parts of the product symphony play in harmony, and sometimes that means leaving the coding to the experts.
As Kirsty puts it:
“A Product person’s job isn’t to have all the answers yourself, but to surround yourself with the people that know more than you do in a specific subject matter. And Developers do coding day-in, day-out. That’s their job.”
So, do Product Managers need to learn to code? Kirsty’s take is that most of the time you don’t need it, but there are exceptions to the rule. It’s more about aligning your skills with the needs of your product and team:
“There’s a very well-known Venn diagram where you have three circles: business, design, and tech. Of course, Product people are at the center of that diagram, but most people are aligned to just one of those circles, or a couple of them, rather than all three.”
Essentially, learning to code is a personal decision that hinges on your career path, interests, and the specific demands of your role. And, of course, all of those can always change!
What are the advantages of knowing code as a product manager?
According to Kirsty, and other fine Product folks out there, there are several compelling advantages of having some coding skills in your toolkit.
Firstly, enhanced communication with technical teams. Understanding the basics of coding can go a long way toward bridging the gap between Product Managers and Developers.
It’s like knowing a bit of the local language when traveling to a foreign country – it goes a long way in building rapport and respect, and it makes getting things done quicker and easier. Improved communication fosters a more collaborative environment where ideas flow more freely and technical constraints and possibilities are understood more quickly.
Another advantage is that you’ll have greater autonomy and problem-solving ability. Some PMs, especially those in fresher start-ups, might encounter occasions where a basic understanding of code will allow them to independently troubleshoot minor issues or understand the feasibility of a feature without needing to pick the brains of their technical team. It empowers Product Managers to make more informed decisions and makes for a smoother product development process.
Plus, a Product Manager knowing how to code could gain a competitive edge in the job market. As Kirsty pointed out in our conversation, while it’s not a mandatory skill, it’s certainly a valuable one. In some companies, especially those with a heavy tech focus, a Product Manager who can understand and contribute to technical discussions is a significant asset.
It’s important to be aware that these advantages come with a caveat. Coding knowledge is beneficial, but it’s just one part of a much larger skill set required for effective product management. And in Kirsty’s mind, it’s not always the most important area to focus on:
“In my opinion, it’s more important for a Product Manager or Product person to have a really good understanding of how to conduct research and problem-solve, and how to ask the right questions.
“Collaboration as a skill is way more important than coding, I think. Being able to multitask is definitely a big one too. Empathy is a huge one. All of those skills are way more fundamental than being able to write a line of code.”
The key, then, is to find a balance that works for you and your specific role.
Are there any disadvantages to knowing code as a product manager?
While discussing the merits of being able to code as a Product Manager, you also have to consider the potential downsides. There are a few scenarios where being too involved in the technical details can lead to some tricky challenges.
One notable problem is the risk of role blurring. Product Managers, especially those with a technical background, can find themselves drifting toward more hands-on coding tasks. This shift can distract from what should be your primary role – strategizing, understanding the market, and focusing on the user experience. There’s a delicate balance between understanding the technical aspects and becoming too engrossed in them – the old “woods for the trees” analogy.
Another concern is the possibility of narrow focus. A deep dive into coding might inadvertently give you tunnel vision, leading you to prioritize technical elegance over user needs or business goals. As a PM, your strength lies in holding a broader view, and synthesizing all sorts of diverse inputs to guide your product strategy. Squinting too hard at just the technical side can skew this perspective.
It’s also worth mentioning the large time and effort investment. Learning to code isn’t a trivial pursuit, or a quick fix. Unless you’re a savant of some sort, it’ll take a lot of your training time that could have been spent honing some of the other essential skills in Product Management. For some, this investment could have a big payoff, but for others, it might not fit with their career trajectory or what they actually spend their time doing day-to-day at work.
Basically, as a Product Manager, it’s important to give some thought to how much technical depth is going to be helpful with your specific role. If you’re going to get to grips with code, make sure it’s complementing, rather than overshadowing, your broader responsibilities.
What do Product Managers need to know about code?
Ok, coding might not be an essential skill for every Product Manager. But we’ve established that some technical understanding can help to make you a better PM. So, what exactly should PMs aim to know?
Learn your tech stack: It’s crucial to have a grasp of the technologies that underpin your product. This doesn’t mean you need to know how to build it yourself, but rather understand your tech’s capabilities and limitations. Knowing whether your product is built on HTML, CSS, JavaScript, or Python, for example, and why those differences matter, will help you with making informed decisions and communicating effectively with your engineering team.
Understand basic technical concepts: Familiarity with basic coding concepts, even if it’s just the fundamentals, can go a long way. Things like understanding what an API is, how databases work, or what the difference is between frontend and backend development. You’ll be able to have more meaningful conversations with your Dev team and can help them translate the technical details into more business or user-focused language.
Develop your data analysis skills: Everything is data now. Having some competency in data analysis is incredibly, and increasingly, valuable. This might involve basic SQL knowledge or understanding how to interpret user data to inform your product decisions. These skills enable you to draw insights from your data and then use them to guide your product strategy.
Ultimately, as Kirsty pointed out, the depth of technical knowledge you need as a PM really depends on your particular product, industry, and company size. In some cases, a deeper understanding of the tech might be helpful or even required, say if you’re a founder of a very early-stage start-up and need to knock up a quick MVP of the product.
In other cases, just being on nodding terms with code as a Product Manager might suffice, so you know what the Devs are saying without wanting or needing to teach them to suck eggs. The key is to focus on building the level of technical knowledge that’ll empower you to make better product decisions and communicate effectively with your team, without wasting your time going down the rabbit hole.
Will coding skills come up when interviewing to be a Product Manager?
Every business has its own definition of what a Product Manager’s job entails. Some don’t even use the same job title, for God’s sake! It’s almost impossible to know going into an interview exactly what your day-to-day at that company will entail, but you can easily hazard a guess depending on the vertical of the company you’re applying for.
To give a direct example, ProdPad is a SaaS B2B product company. Seems like a pretty techy, data-led environment, right? But we don’t expect our PMs to know code. Here’s our Head of Product Kirsty’s view on it:
“I wouldn’t expect there to be any coding questions in an interview. Unless, like I said, maybe the environment or platform or products you are interviewing for is specifically some kind of coding environment.
“One thing they may ask you about is what languages the previous products you’ve worked on have been built in, or what frameworks you’ve used. That’s just so they can establish whether your experience maps to what they’re using, to see if you already have a technical understanding of it. But that’s all I’d really expect in a typical kind of PM interview question.
“It’s not something I’ve come across as a common question at all, and it’s not something I’ve ever asked when conducting an interview either.”
In many product manager interviews, especially for roles that are not heavily tech-centric, coding skills are unlikely to be a primary focus. However, interviewers will still often be looking for an understanding of technical concepts, the ability to communicate effectively with technical teams, and a general awareness of the tech stack used in product development.
For roles that lean more towards the technical side, such as a Technical Product Manager, you can expect deeper discussions around technical topics. These might include questions about specific programming languages, technical challenges you’ve faced, or how you’ve worked with engineering teams in the past.
It’s also not uncommon for interviewers to ask about your problem-solving approach in technical scenarios. They could be interested in how you translate technical challenges into business impacts or UX improvements. This doesn’t necessarily require coding prowess, but a solid understanding of the technical side of Product Management will help you give a good answer to these sorts of questions.
Ultimately, while hardcore coding skills are very unlikely to be a deal-breaker for many Product Management roles, demonstrating some technical aptitude and a willingness to engage with more technical subjects could well stand you in good stead. It shows that you’re a well-rounded candidate capable of bridging the gap between the technical and the non-technical.
But again, it’s absolutely not vital!
What are the best coding languages for Product Managers who do need to code?
While there’s no one-size-fits-all answer, some languages are going to generally be handy for PMs wanting to improve their understanding and communication of the Dev process:
- HTML/CSS: Getting to grips with the basics of HTML and CSS is useful when dealing with web-based products. It helps you understand how web pages are structured and styled, crucial when discussing your design and user experience with your team.
- JavaScript: Another great string to the bow of Product Managers working on web applications, understanding JS can be extremely beneficial. It’s the backbone of many of the interactive elements on websites and it’ll you help make more informed decisions about your UX and UI.
- Python: Known for its simplicity and readability, Python is a versatile language for Product Managers wanting to dig into data analysis, automation, and backend development. It’s also widely used in machine learning and Artificial Intelligence, fields that are quickly becoming meshed with Product Management.
- SQL: For data-driven Product Management, SQL is a skeleton key. It allows you to query databases and extract insights that can inform your product decisions, helping make sure they’re data-driven.
Remember, you’re not trying to become a code master, you’re just trying to make sure you’ve got enough knowledge to be able to make meaningful contributions to technical discussions instead of just nodding and going “Hmm, yes, but how does that affect the stack?” as if you had any clue what the Developers were really talking about.
The choice of language to learn, if any, depends on what your product and team are working with, though of course personal interest and the direction you want your career to take should also play a role. You do you!
Where can PMs go to learn basic coding skills?
If your role or ambitions as a Product Manager means you do need to learn to code, there are numerous resources out there to help you get started, catering to different learning styles and schedules.
- Online courses: Platforms like Code.org, Codecademy (Kirsty’s favorite), Coursera, edX, Future Learn, and Khan Academy offer a wide range of coding courses, from beginner to advanced levels. They’re ideal for PMs who prefer structured learning and appreciate the flexibility of learning at their own pace.
- Bootcamps: For a more immersive experience, coding bootcamps like General Assembly or Le Wagon provide intensive, hands-on training. These are great for PMs looking to gain a comprehensive understanding in a short period, like before joining a more code-based product.
- University courses: Several universities now offer coding courses online. These courses often provide a more academic approach to learning coding, which might appeal to those who prefer a traditional educational setting.
- YouTube and blogs: For those who prefer a more informal learning approach, there’s a never-ending stream of YouTube tutorials and coding blogs that can provide valuable insights and practical coding tips.
- Community and networking: Joining local or online coding communities, like GitHub or Stack Overflow, could be helpful too. These platforms not only offer resources for learning but also provide opportunities to connect with other learners and professionals.
- Side projects: Applying what you learn in a practical project is one of the best ways to understand coding. Whether it’s building a simple website or a tiny app, learning by doing is a great way to go.
Again, keep in mind that the goal of learning to code as a Product Manager isn’t to become an expert code wizard. Instead, it’s about gaining enough understanding to enhance your product management skills, improve communication with Developers, and make more informed decisions about your product.
The ancient art of balancing code and Product Management
It’s clear that the decision to learn to code as a Product Manager is a nuanced one, and whether it’s necessary at all is very dependent on individual roles, products, and your own career aspirations. That’s what we get for asking a simple yes/no question!
Kirsty nails the point on the head though:
“It’s about understanding enough to talk about it, not necessarily about doing it yourself.”
So, as you navigate your career in Product Management, remember that your strength lies in your ability to blend technical understanding with strategic vision, empathy for your users, and a tasty sprinkling of business acumen.
So, final answer, no lifelines left: Do Product Managers need to code? Yes. No. Can I go 50/50? Damn. Ok… Sometimes. Final answer! But whether or not coding becomes a part of your personal PM skill set, remember to keep your eyes on the real prize: making the best product you can, and being the best damn Product Manager you can be!
Sign up to our monthly newsletter, The Outcome.
You’ll get all our exclusive tips, tricks and handy resources sent straight to your inbox.