Product Manager Technical Interviews: Questions Engineers Ask Product Managers
By Dianna Yau
Summary
## Key takeaways - **Four Key Technical Interview Areas**: Engineers test collaboration with engineers, past projects like explaining architecture, Computer Science 101 questions such as what happens when typing google.com, and system design like building a dog walking service, from easiest to hardest. [00:52], [01:45] - **Include Engineers in Roadmapping Early**: At where we work, we include engineers very early on in data analysis and user research to figure out questions, shape strategy, brainstorm projects, size features, and prioritize based on impact. [03:15], [04:06] - **Bug Hard to Replicate Across Countries**: We spent multiple weeks trying to find and replicate a bug because engineers in Spain couldn't replicate it for users in Africa, and Android has many device versions with older ones causing specific bugs. [07:03], [07:34] - **Explain Tech to Five-Year-Old**: Google asks how you would explain a technical concept to a five-year-old or 85-year-old grandpa without a phone, assessing your ability to simplify for cross-functional teams as the translation layer. [11:07], [11:28] - **Load Balancer Handles Multiple Requests**: A load balancer balances incoming requests and delegates them to different system parts, often needing multiple balancers for high-volume products. [13:18], [13:52]
Topics Covered
- Include Engineers from Day One
- Master Past Project Architectures
- Simplify Tech for Non-Techies
- Practice System Design Frameworks
Full Transcript
your recruiter just told you that you're gonna have a technical component and if you're not the most technical you're probably freaking out
so in this video we're gonna share with you what they cover in technical interviews basically what skills and what questions that they're going to ask
so you can Ace your technical interviews if you're new to technical interviews you're probably asking what are they even gonna ask are they going to ask you
to code oh my God are they going to ask you difficult technical Concepts well let's go through the four key things that they're most likely going to ask and they're most likely testing from
easiest to hardest and when I say easiest it means questions that you're able to prepare ahead of time and that are more predictable so starting with
the easiest is testing how you collaborate with engineers and you'll get questions like tell me about a time that you worked with an engineer on a
roadmap the second type of questions is them asking about past projects so yoga questions like X explain to me the architecture of a past technical product
that you worked on and the third set of questions are what we call Computer Science 101 questions and yes these are some of those scary engineering questions but they're more basic than
the ones that would ask software Engineers so a question you might get is what happens when you type in google.com into the web browser or what are the
different types of load balancing algorithms and questions like these have been asked that companies like Google and for Facebook's TPM interview number
four are system design questions and these are questions that Engineers are asked in their technical interviews questions like how would you build a dog
walking booking service so these questions are really really testing two key things the first is do you know how to work with Engineers have you worked with them before and do you understand
and engineer's workflow and processes to empathize with them and secondly can you get technical which means can you have conversations with Engineers about
technical Concepts can you understand technical Concepts that enable you to make a strategic decision are you able to simplify technical Concepts to
explain to your cross-functional or leadership counter parts to enable them to get on the same complex as your team so let me break down now for these four
set of questions what you want to keep in mind when answering these questions and basically your best bet to learn how to answer these questions before your upcoming technical interviews so let's
start off with engineering collaboration so here they're going to ask you questions like tell me about a time you created a roadmap with an engineer maybe tell me about a time you had to push
back on certain estimates that Engineers gave you on features for the first question around Road mapping at where we work we include Engineers very early on
which means when we're doing things like data analysis to user research we include the engineers in figuring out what questions should we be asking they
are product partner of ours and then we as product managers shape the strategy based on what we're learning and make sure that we align the engineers on the
strategy and use that as themes and include engineers in the brainstorm of what projects or ideas that we should chase after to help us accomplish our
strategy then we get Engineers help in sizing the features we're thinking about so that we can compare it to the possible impact of what this project delivers and that
helps with prioritize what we work on for that quarter or for that six months then Engineers help us scope and architect what building out the feature
is going to look like and how long each component is going to take then we work with engineering to facilitate a collaboration amongst the other core product roles like product designers
content designers data scientists and also facilitate the teamwork and collaboration across other teams so a lot of times our Engineers have to build
on existing platforms that are built by other teams and sometimes we as PMS have to enlist their help so when you answer that first question tell me about a time that you worked on a road map with
Engineers you'll want to cover some of these key workflows and make sure that you're creating a theme of inclusiveness around Engineers versus one where you're
just throwing them requirements Engineers work best when they're included in the strategy from the very early onset and when they can deeply
empathize with the users the next thing under engineering collaboration is they want to know that you can empathize with engineers and understand their workflows
and what takes a long time what is complex so here Engineers Wrangle databases they have to work with other teams to build on their platform they're
doing testing they're figuring out pixels they're translating the requirements into actually defining the UI they're also even figuring out edge
cases of your product that your designer might have not thought about so your best bet here is to go talk to one of your engineers and have them explain to
you what is a typical workflow that you take when building these products and give me all the details all the granular details from figuring out the pixels the
challenges that they run into because as p.m one of our responsibilities is to
p.m one of our responsibilities is to also make work easier for our Engineers so they can operate faster and for us to remove roadblocks for them so for
example one of my product designers helped Engineers work faster by naming the specific components that she was using in her designs versus getting Engineers to go look for it themselves
in our company's design guide the second thing that they're going to be asking about is about past projects and here they want to get a sense that you
understood how the technical components of the product was built for example from creating databases to building apis
to managing microservices here you don't need to know every specific element but you will want to call out what are challenges that the engineering team had
in building the product what was extremely complex in the last product you built and what were some of the solutions that they came up with to solve that what were the components that
took the the most time and this can show that you can empathize with engineers and understand technical constraints trade-offs etc for example one time I
was building a product and we had spent about multiple weeks trying to just find the bug and replicate it and because our Engineers versus our users were in a
different country it was hard for the engineers to replicate the bug because they were in Spain versus the users were in another country in Africa at the same time when you're building an Android
there are so many versions of the devices and a lot of people using older versions that a lot of the times the bugs could be just to a specific device
so Engineers go through a lot of headaches edge cases Etc and here you'll want to talk to a past engineer that worked on a product that was technically
complex and really just have them whiteboard out to you what was the architecture what were some of the challenges had we solve for some of the challenges what were some of the
trade-offs that we had to make and make sure that you're taking rigorous notes taking a photo of their whiteboard architecture and that you've reproduce it yourself so in the interview you're able to draw those diagrams out for the
interviewer and here I want to emphasize for the PM world they're not expecting you to have the same technical expertise as an engineer but they want to assess that you can understand some of the key
challenges some of the key trade-offs that have to do with product decisions that might need to be made so for example in designing an MVP we might need to scope down the features because
there's a ton of technical complexity around building for ML AI models so next up we're going to talk about computer science 101 Concepts and these tend to
be the scariest for non-technical folks like myself because you really don't know what they're going to ask but what they're trying to assess here is that first you can get technical with
Engineers so that when they're talking about certain Concepts you understand what the heck they're talking about versus being totally lost for example things that are important to understand
is how does the internet work because you want to build a product that is high performing which means information gets the user fast versus this lag you know
the constant wheel of death that keeps churning and churning and hence you'll probably want to understand the components that help performance because that's going to influence your products
experience things like having multiple servers that replicate the same database so this is why understanding the technical Concepts is important because it does influence the product experience
and that is what they're trying to assess from your knowledge that you can Bridge how the technical complexity aspects of it will influence the product
experience so what is your best bet to prepare for this interview really it is to look up the most common type of questions asked at the company
you're interviewing for of their technical component so one common question that's going to be asked across companies is when you type google.com
into your web browser what happens and here you'll probably want to address things like knowing that IP addresses help the service route which local
server that they should be pulling information from to get you as the user your data the fastest so make sure to religiously research the questions that
your company that you're aiming for is going to be asking or even ask the recruiter directly so that you can prepare for these ahead of time because a lot of these questions these computer
science 101 questions is either you know it or you don't it's a bit hard to logically think through the answer for example if they ask you oh what are the different load balancing algorithms this
would be something that you would need to study up on beforehand I mean technically you might be able to think logically through it to say okay well first in first out the next part of
computer science 101 is they want you to be able to simplify technical Concepts so that you can explain it to cross-functional teams or even your leadership to get people aligned for
example a question that Google asked sometimes is how would you explain this technical concept to a five-year-old or to your 85 year old grandpa who doesn't have a phone they're really assessing
your ability to really understand a technical concept and explain it in different levels based on the audience and this is an important skill because
most times you as the product manager or program manager where the interface between cross-functional teams and our technical team so we are often the
translation layer between these two separate teams and number four they might be testing system design questions and emphasize on might some companies
that are a bit more technical do ask these questions because these questions are usually relegated to Engineers but some companies that are very API dependent or companies that usually
expect their product managers to be more technical well asked to some design questions so companies like Google companies like stripe so here what are they going to be assessing first that
you can architect a design at a high level that you know the major components of what it takes to build a product from things like building databases to
how you handle multiple requests to how to scale products and how different systems talk to each other how to do things like storing large media
files and again what you really want to understand in these key components isn't so much all the technicalities of it but it's more so how those technicalities
will influence the product experience at the end for the users so what is your best bet to prepare for these questions start off by watching a couple of example videos of people
tackling system design questions you'll probably notice them throwing out a bunch of technical Concepts like load balancing sharding Etc and your crowd is going to be like oh my God I'm
overwhelmed but in that instance make sure you take notes of the technical Concepts that you're not familiar with because then the next step is to start googling those Concepts and what they
mean so you would Google okay what does load balancing mean and make sure you understand it and translate into Layman's talk a load balancer kind of like what it's called balances the
different requests that you're coming in and basically siphons and delegates them to different parts of the system and oftentimes because a certain product or service is getting so many requests
you're gonna have to have multiple different load balancers in order to handle and process all the requests and after you understand the technical Concepts a bit better you'll want to use
a framework that I crafted for system design questions on how to tackle them because there's a process with tackling system design and then lastly you'll put it together by answering the questions
on your own and make sure you do multiple example questions because that's how you're going to get comfortable answering system design questions it's not sufficient enough watching a bunch of videos because
that's more of a passive activity versus during the interview you're gonna have to produce some output on answering the actual question and one other part for the system design
question is that you can think through trade-offs and edge cases and that you can figure out how to navigate them and how to prioritize their own trade-offs so what is your best bet to prepare for
those well again you want to do the practice questions make sure you have them written down and complete a architecture or design of how you would build a certain service then from there
take that to one of your engineering friends or engineering co-workers and then have them ask you questions about different trade-offs and edge cases that you might not have thought of and going
through a couple rounds of these is really immensely going to help you come up and proactively think of these trade-offs and edge cases that you might not even be aware of so if you're
looking for a framework come check out this video that I produce to help you guys tackle the system design question and I will see you guys in the next video
Loading video analysis...