The next chapter is which questions can you expect? And now after you know if the system design interview applies to you and which kind of question exists, again, the logical consequence is to find out which of those questions actually apply for you. And therefore, I want to go back to the previous example questions and sort them by technical complexity. And as you can see, we have again our vending machine, Dropbox, the file synchronization service, and the CDN. And they are all sorted by technical complexity, the simplest being the vending machine. Then we have Dropbox, then the file synchronization service, and finally the CDN. And to clarify, of course, we're not talking about the actual Dropbox implementation like the real world one out there. It's more about the question of designing Dropbox because the real world one is obviously more complex than a single service or a single CDN. Overall, you can say that high-level design questions include less technical complexity than low-level ones, especially the generic high-level questions are not very technical. And on the opposite end of the scale, we have the generic low-level design questions, and those are the real deal when it comes to technical complexity. That's why we have the CDN in there as an example. But how do you find out which questions you should prepare for? And there, the biggest impact on which questions you can get is first your seniority, then your role, and then the company you interview with. And this is not only the tier of companies I talked about before, but this is also the kind of systems the company builds. Let me explain those factors in a little bit more detail. Let me explain those factors in a little bit more detail. First, impact of seniority and the degree of technical complexity in the question correlates with your seniority. A well-seasoned principal engineer doesn't have to fear to be asked how to design a vending machine. However, if you are a junior engineer and the company you interview with happens to conduct system design interviews also for entry-level positions you are very likely to get such a generic high-level question. The most common question is actually the real-world high-level design one and you can come across those at any level. And, of course, what's considered a good answer depends heavily on your experience. This is for sure. Even though seniority has a big impact on the technical complexity of questions, it's obviously also limited. Otherwise, companies would have to ask the most technically complex questions to all their applicants for a CTO role, for example. That's not the case because we also have role as an impact factor. And let's look at that one as well. And here you see a visualization of the impact of role on the technical complexity of questions. Front-end engineers, for example, or machine learning, data engineering roles, they're most likely to see real-world, high-level and low-level questions. And the same is true for technical leadership roles like engineering managers, technical program managers, these kind of roles, while backend engineers in general and even more deeply technical backend-focused roles like distributed system engineers, which are the true experts on system design, they are the most likely ones to get the really beefy, generic, low-level design questions like the CDM. But at the same time, they also can get really beefy, high-level design questions. They're just adapted to the expected technical skills such roles come with. And another factor which is critical to assess which questions you are expected to get is the company you're interviewing with. I mentioned it before. And here we see companies love to ask system design questions that apply to their own product range. And there's actually three things why they like to do that. First, they want to assess your system design skill, sure. But they also find out by doing that if you did your homework researching their company and their products. And also a third bullet is that they actually can check the degree of transferable knowledge you come with by doing that. So let's look at three examples to make this clear. Netflix will most likely ask questions about streaming systems, while Amazon will rather ask you about e-commerce or marketplaces. And Google probably won't ask about JetGPT because, well, that's a very successful product of one of their competitors. We can now actually wrap up this chapter already again and define a strategy based on those learnings, how you can actually prepare best for the interviews. And here it goes as follows. You should basically start evaluating your personal profile, then the tiers of the companies you interview with, and then learn about their product range. And then you start your learning by focusing on the most likely category of questions. And you prioritize the systems within those categories that are related to the company you interview with. Therefore, you extend basically and from there you extend your preparation by venturing into less and less likely systems.