Practice this topic in a realistic system design interview
Every system design decision optimizes for something and makes something else harder.
Choose stronger consistency and some requests may need to wait or fail during outages. Optimize reads and writes often become more complex. Keep the architecture simple and you may defer scaling work to later.
Interviewers are not looking for an idealized architecture. They are looking for judgment: which requirement matters most, what cost you are accepting, and when you would change the design.
This chapter covers the tradeoffs that come up most often in system design interviews.