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 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