Should Aspiring Product Managers Acquire Coding Skills?
Written on
Chapter 1: The Coding Dilemma for Future Product Managers
A frequently posed question among those looking to enter product management is whether coding skills are essential. In this piece, I’ll share my perspective on this matter, hoping to guide individuals planning their career trajectories.
In summary, I firmly believe that new product managers should acquire coding skills, and I base this belief on two main factors: 1) the competitive nature of the PM role, and 2) the advantages that coding knowledge can provide in making informed Product Management decisions.
Section 1.1: Understanding the Competitive Landscape
Product Management has emerged as one of the most sought-after careers in the tech industry, celebrated for its engaging work, attractive compensation, and reasonable working hours. It has become a popular alternative for ambitious graduates from prestigious universities, transforming into a common exit path for individuals from consulting, software engineering, and investment banking backgrounds.
As a result, there is a surge of highly qualified candidates vying for a limited number of positions, with acceptance rates for PM roles often dipping below 1%.
To illustrate this for an undergraduate aspiring to become a PM...
Currently, around 50 tech companies offer Associate Product Manager (APM) programs for candidates lacking direct PM experience (while hundreds of non-tech PM roles exist, many typically seek experienced hires). Each of these programs usually accommodates about 40 individuals annually, with half of the slots allocated to undergraduates and the other half to experienced candidates or MBAs. Thus, an undergraduate will find themselves competing with peers across the country for approximately 1,000 positions.
The primary competition will be from other undergraduates hailing from top U.S. institutions, particularly those with technical degrees such as Computer Science, Electrical Engineering, Data Analytics, and Business Analytics. For the sake of this scenario, let’s assume that recruiters are mainly targeting the top 25 Computer Science schools, each with around 2,000 students, of which roughly one in four is qualified and interested in becoming a PM (this estimate is on the conservative side). This translates to around 12,500 qualified technical students from elite institutions competing for about 1,000 PM roles each year.
If you are a non-technical major from a less recognized school, you’ll find yourself up against about 12 qualified technical applicants from elite universities for every position. Therefore, it’s crucial to find ways to stand out, as other weaknesses on your resume won't help. (Speaking from experience, I also come from a non-target school and pursued a non-technical major.)
To succeed in product management, it’s essential to check all the boxes, including acquiring “coding experience,” which often appears on many candidates’ lists of qualifications.
Section 1.2: The Utility of Coding Skills
Moving on to the second point: I believe that coding knowledge can significantly enhance the effectiveness of a product manager. It's worth noting that there are numerous successful product managers without coding experience. It is feasible, and some products may be more accommodating for non-technical PMs.
To understand this, consider two critical factors: the type of PM role and the nature of the product.
Typically, PM roles are categorized as either Outbound PMs or Inbound PMs. Outbound PMs—sometimes referred to as Go-to-market, Strategy, or Product Marketing Managers—focus on how a product enters the market. They often collaborate with Sales, Marketing, and Release Management to make decisions about product pricing and packaging. These PMs usually do not manage a product roadmap directly, but they can influence its content based on their insight into current accounts.
Conversely, Inbound PMs, or Technical Product Managers, work closely with Development and Design teams to implement and scale the product roadmap over time.
In both roles, having coding experience is beneficial, as it helps in understanding the “technical debt” associated with features and the overall architectural scope of a product. For Technical Product Managers, coding knowledge is almost a requirement since it informs about 80% of their responsibilities, which involve collaborating with Development teams to enhance a product. For Go-to-market PMs, coding skills are less critical but still advantageous.
For example, consider Tasha, a Go-to-market PM at Walmart (which has a sizable APM program). Her focus is on online sales, and she frequently attends meetings with major retailers selling through Walmart’s platform. If one of these retailers expresses concerns about declining sales due to their products being buried in search results, they might ask Tasha three questions:
- How does your search algorithm operate?
- Why is it favoring certain products?
- What solutions do you propose to address this issue?
To answer the first two questions, Tasha needs a grasp of the technical aspects of the product. She must accurately and confidently explain the search algorithm's workings and the reasons behind any potential biases. The third question, however, is more challenging, as it requires her to assess whether there is a genuine issue and determine how long it would take to resolve it according to the current product roadmap. While someone without coding experience could tackle these inquiries, having coding knowledge would undoubtedly make it easier.
The second factor to consider is the product type, which we can simplify into Business-to-Business (B2B) and Business-to-Consumer (B2C) categories. In the case of a B2B SaaS product aimed at Data Scientists or Software Developers, having direct technical experience is invaluable, regardless of the PM role. Conversely, if you're working on a B2C product like Snapchat or Instagram, coding skills may be less critical.
As highlighted, the relevance of coding experience varies greatly depending on the PM role you pursue. You might wonder, “Corey, does this mean coding is overrated, especially for a Go-to-market PM?” I understand this sentiment, but the reality is that coding skills can only serve to benefit you, particularly in a competitive APM job market.
Chapter 2: Defining Coding Experience and Alternatives
If you studied a non-technical major during your undergraduate years, don't fret! I also came from a non-technical background and successfully transitioned into product management. Now, let’s discuss how you can acquire the necessary skills and showcase them effectively.
The key takeaway is to grasp the fundamentals of software architecture. In this case, aim for breadth over depth. Focus on gaining practical experience in full-stack development with a primary programming language, ideally JavaScript or Python.
You should be capable of passing basic coding assessments and familiar with various components of software applications. This includes knowledge of databases, SQL, backend development, APIs, machine learning, containers, microservices, frontend development, and even some basic graphic design.
Demonstrating this knowledge can take many forms; however, simply listing skills on your resume isn’t sufficient. Many candidates now claim proficiency in languages like R or Python, making such listings less credible.
In this context, "coding experience" is defined by either possessing a relevant degree or having substantial technical experience (jobs, projects, research) that can be highlighted on your resume.
I recommend gaining a practical understanding of these skills through platforms like Udacity and Coursera, then applying that knowledge to build tangible products, projects, and job experiences that you can feature on your resume. This could involve pursuing meaningful passion projects and including them in your resume’s “experience” section (for example, some of the most insightful statistical analyses of COVID-19 were conducted by Citizen Data Scientists who built models and shared their findings online) or creating a “Projects” section to highlight notable software initiatives undertaken during coursework, hackathons, or research.
The first video titled "Do product managers need to code?" explores the significance of coding in product management and shares insights from industry professionals.
The second video, "Do Product Managers need to know how to code?" delves into the necessity of coding skills for product managers and discusses various perspectives on the topic.