One of the most common questions aspiring Product Managers have before they take the leap is “do I need to know how to code?” One of the biggest myths surrounding the product industry is that, because it’s a role within the tech industry, that you need to have deep technical knowledge and coding abilities.
We’ve already talked about why coding is important for Product Managers, and the fact that you don’t absolutely need to have strong technical capabilities to work as a Product Manager.
On the flip side, there are those who do have a technical background who want to use it to their advantage to get the more technical roles. There are also certain companies, like Google and Apple, where tech know-how it a must for landing any job in product.
If you’re looking to land a Technical Product Manager role, check out our guide on The 3 Sets of Technical Product Manager Interviews
Do Product Managers Go Through Coding Interviews?
The answer here is both yes and no, for a variety of reasons. A candidate for a Technical Product Manager role should absolutely expect to have some kind of technical challenge/homework posed to them at the interview stage. And this is because their technical abilities will be a core element of their role.
A candidate for a Product Manager role can usually safely assume that they won’t be tested on their coding knowledge. The role is more about other skills like leadership, strategic thinking, industry awareness, etc. As you’re guiding a team of technical people, it can help to speak their language, but you’re not doing any of the actual building yourself.
But a companies may ask product management candidates to sit a coding interview for a few reasons.
- The company only wants to hire tech people. In the case of Google and Apple, they can have their pick of prospective Product Managers! This allows them to be more discerning in their applicant selection, and the more tech knowledge an applicant has, the better positioned they are to work at a tech giant.
- The role itself is very technical. In defence of Google and Apple, it’s not about snobbery at all. There are some roles, and some products, which simply require the candidate to have a lot of technical knowledge. There’s no point hiring someone who can’t write algorithms to a job that requires them to do so.
- It’s a small company. When you’re at a small company, especially very small startups in the early stages, everyone has to roll up their sleeves pitch in. If a company has the choice between hiring a non-technical product manager and two developers, or a technical product manager and one developer, they might opt for the latter and more cost-effective option.
- They want to test your analytical abilities. Some companies, rightly or wrongly, use coding interviews as a way to test your analytics skills.
So if you have a technical background, and you’re looking to get a more technical role, you’d better start preparing for some kind of coding interview.
The topic is somewhat controversial, as some believe that coding interviews for Product Managers are entirely unnecessary, while others think that they’re a decent enough way for companies to gauge technical abilities. Either way, those coding interviews are out there and it’s best to be prepared!
How To Land (and Ace!) an Interview
First things first…landing the interview. When you’re hunting for your first PM role, interviews and endless versions of your resume become your life! Job hunting is exhausting, draining, and demoralizing…but the pay off is always so worth it.
To make this process a little easier to navigate, here are all of our best resources for getting an interview and landing a job:
- First, check out why it’s so hard to get a job in product management.
- Start building up your experience by building a side project.
- See our checklist for getting a product management interview.
- Want to specifically become a Google product manager? Here’s our guide to their interview process.
- Familiarize yourself with the most common product management interview questions.
- Prepare some questions to ask your interviewer.
Finally, learn from Gayle McDowell, the leading authority on cracking the PM interview:
What To Expect From a Coding Interview
If you’ve never done one before, you might be wondering what the difference is between a coding interview and a regular interview.
A coding interview fits into part of the longer interview process which involves many rounds with different people. In your initial interview, the recruiters cares about how many requirement boxes you check. In your second interview the hiring manager cares about the level of experience you have. When you meet your team, they care about your personality and culture fit.
In a coding interview, the interviewer wants to assess your technical abilities, and not much more.
Of course you still need to impress, so showing up in dirty sweatpants and swearing like a sailor isn’t going to pass.
They’ll always be conducted in person, or in a video call. If you’ve only got a phone interview, then you’re probably in the earlier stages and shouldn’t need to worry about anything too technical coming up.
Coding Interview Subjects
One of the things you might be tested on is your knowledge of data structures and algorithms.
Testing a candidates understanding of data structures is a great litmus test for their overall CS understanding. By testing your ability to write algorithms, the interviewer gets to test your analytical skills as well. This style of product management interview is becoming less frequent, but still pops up and it’s good to be aware of it.
They want to see if you can write code which is not only functional, but efficient as well.
Far more commonly, you’ll be tested on your CS design knowledge.
This style of interview is becoming more and more favored by Microsoft, Uber, and Google interviewers, and is known as a ‘system design interview.’ You’ll be asked a diverse set of questions to make sure you understand how to build a large-scale system.
You might also be interested in: How to Get a Product Management Job at Apple
This style of interview gauges your overall understanding of CS, and helps the interviewer to understand how well you understand the technology you’d be working with. Depending on the company and the role, they may be looking for a high level of competency. For other roles, they might just be trying to get a feel for where you’re at, technologically speaking, so don’t stress if you have to say “no, I don’t a lot about caching.“
No matter what your interview is about, it’s always better to be honest, and not try to blag your way through. Even if the interviewer doesn’t see through it (and they probably will), you don’t want to land yourself a job you’re not technically capable of doing.
Potential Coding Interview Questions
The questions you’re asked and the tasks you’re set in a coding interview will vary wildly depending on your experience, the company, and the product, but it’s always good to familiarize yourself with previously asked questions:
- Write an algorithm that detects meeting conflicts.
- Write a Scrabble-like algorithm that finds playable words, given a set of letters.
- Given an array, find the contiguous subarray with the largest sum.
- Given the roots of two binary trees, determine if these trees are identical or not.
- Given an array of integers and a value, determine if there are any two integers in the array whose sum is equal to the given value.
Unlike other ‘most common interview questions’ lists, technical interviews are more complicated than a straightforward Q&A. Technical questions require more complicated answers, which means you may want to practice beforehand.
How to Improve Your Technical Skills
There’s no need to despair if you already have your degree and it wasn’t in CS, you don’t have to go back and re-do your college years. There are plenty of ways to gain new knowledge and improve your technical skills whilst maintaining a full time job and without breaking the bank.
You might also be interested in: 10 Courses For Product Managers – From Data to Design, and More
To get a complete foundational understanding of CS, we always recommend CS50. CS50 is an introduction to computer science and programming, taken from Harvard’s real lectures. The course is free, and taken by literally millions of people worldwide. The online CS50 community is thriving, with a very active Slack channel where lecturers pop in for office hours.
If that’s too time-consuming, you can start getting a foundational understanding of code through Codecademy, which is also used by millions of people. It’s free with a premium subscription option available.
What The Community Says
We’re not ones to run away from a controversial topic! Our community on Facebook had a lot to say about coding interviews for Product Managers in the tech industry!
Want in on the conversation? Join our Facebook group for Product Managers.