An Aspiring Product Manager’s Guide to Coding Interviews

An Aspiring Product Manager’s Guide to Coding Interviews

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.

Though coding can be important for Product Managers, it's not necessary to have strong technical capabilities to work as a Product Manager. But for those who do have a technical background, or are anticipating a coding interview, here are some tips.

If you’re looking to land a Technical Product Manager role, check out this guide on?The 3 Sets of Technical Product Manager Interviews

Do Product Managers Have to Go Through Coding Interviews?

shot of person from behind. they are wearing white, seated at a desk, coding, with three screens in front of them

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 often 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 companies may ask Product Management candidates to sit a coding interview for a few reasons.

  1. 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.
  2. The role itself is very technical.?In defense 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.
  3. 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.
  4. 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!

Want to specifically become a Google Product Manager? Here’s?a guide to the Google interview process.

What To Expect From a Coding Interview

person seated in a bright blue chair with a laptop on their lap, smiling and staring down at their screen

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.

Coding Interview Subjects

glasses in front of a screen with code on it

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.

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 improvise your way through a subject you don't know about. 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.

Check?codinginterview.com?to get a comprehensive list of Google coding interview questions.?Interviewbit?is another great resource for practicing coding questions.

How to Improve Your Technical Skills

person seated in front of desktop computer taking notes

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, I 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. Good luck!

要查看或添加评论,请登录

Carlos Gonzalez de Villaumbrosia的更多文章

社区洞察

其他会员也浏览了