How to Prepare for Google’s Product Management Technical round When You Are Not Technical.

Divya Dhar
Sep 26, 2019 · 5 min read

I recently went through Google’s Product Management interview and was offered the role. One round is dedicated to assessing technical competency. As someone without an engineering degree, this was one of the most challenging rounds to prepare for. To succeed, I broke down what I needed to learn into chunks and built my knowledge upon them. I did this fulltime over a 6–8 week period.

I firmly believe anyone can and should become technically competent. As “software eats the world,” it is in everyone’s best interest to learn how it works.

Google’s PM Technical Round no longer includes coding challenges. However, you may be required to explain how to solve a problem with an algorithm. I broke down the types of questions asked into the following five areas. The fifth area is personal to each interviewee, as it is expected you’ll have in-depth technical knowledge over your products.

  1. General Computer Science Competency — know-how of how it works
  2. Algorithms and data structures — how would you solve a problem in the most optimal way
  3. Systems Design — how would you architect an app or feature
  4. Prioritization — how would you choose what to build
  5. Your Current Product — be able to describe your tech stack and its design

Below you’ll find what to learn and a list of resources I used to understand this body of knowledge. Please note this is not an exhaustive list but should be a good starting point for most interview questions. I hope you’ll find learning these concepts just as fun and engaging as I did.

GENERAL COMPUTER SCIENCE COMPETENCY

History of Chips and the birth of Silicon Valley

  • History of Silicon Valley, the integrated circuit [video]

Fundamentals of Computer Science — Hardware & Software

Hardware has three major components, CPU, Memory, and Storage. Operating systems bridge between the hardware and application layer on top. Each computer or server can communicate with other servers, i.e. networking. As this occurs, the need for data to transfer efficiently and securely becomes even more critical. Below you’ll find a list of topics that will explain all these concepts in more detail.

Fundamentals of Programming

You won’t be asked to code, however, it’s important to know the fundamentals of programming so you can read and discuss code if needed. Python and SQL are great languages to learn as a Product Manager since much of your work will require data analysis. I found Dataquest was a great platform to learn from as the course is well structured and easy to follow.

  • Python (first 16 sessions are free and useful) [Dataquest]

How does the internet work?

It is crucial to understand how the internet works, and the frameworks and protocols it is built on.

ALGORITHMS

Below are the two most important types of algorithms to understand. You should know how they work, what their space-time efficiency is (i.e., BigO) and how to optimize them.

Datastructures and Databases

Here are the most critical data structures and database types to understand.

SYSTEMS DESIGN

System design questions are very relevant for Product Managers who often need to consider tradeoffs with the engineering team when designing the system, especially as it scales. Here are some topics you should become familiar with as well as know-how to design popular apps.

PRIORITIZATION

As a Product Manager, you will continuously have and want to do more than you and your team can. Hence, one of the most crucial parts of the job is to know how to prioritize. There are many frameworks on how to do this. One I’ve liked is RICE, explained by the following equation: (Reach x Impact x Confidence)/Effort. [RICE Framework]

TESTING YOURSELF

Ok, now that you’ve learned the fundamentals. How do you apply it to real software product challenges and problems? Below is a list of questions you should have a handle on answering. This list is not exhaustive; however, it will help you check in on your understanding to date.

  • What is MapReduce?
  • How does compression work for text, image, and video, and what are the differences?
  • What is the difference between latency and bandwidth?
  • How could you reduce load times?
  • How can you speed up an API call?
  • What are cookies and how are they used?
  • What is encryption? How does SSL communication work?
  • How do single sign-on work?
  • What is object-oriented programming?
  • How does search work? What is web crawling?
  • How do emails work?
  • Why does Gmail search take longer than Google search?
  • How does GPS work?
  • How does Chromecast work?
  • What is machine learning?

TIPS ON PRACTICING

Make sure you can explain all the fundamental concepts verbally. Practice this with a mock partner. For system design and many technical concepts, it is also essential to draw out the response in a structured manner on a whiteboard. This will ensure your interviewer can follow you and understand your logic.

PAST QUESTIONS

To get access to a past bank of technical interview questions, check out Glassdoor, as well as the popular PM interview prep books such as Decode and Conquer, Product Manager Interview or Cracking the PM Interview.

THANK YOU

I’m sure there are some concepts that I’ve missed here. If so, please feel to reach out. I hope we can make this a living document with an up-to-date list of resources to learn from such that anyone can become technically competent.

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade