Learning about common system design patterns
As a TPM, you split your time between the high-level scope, which spans multiple systems, and the weeds of a specific feature design. It’s due to this breadth and depth that system design is one of the most important technical skills a TPM can have.
It’s important enough that it shows up in every interview loop for the big tech companies and is starting to show up in more and more companies across the industry. I’ll cover the aspects of system design that you need to consider, ensuring that your design is well thought out.
When we think about system design, we often conjure up a diagram of multiple services, each covering a single function or area of concern, working together to power the ecosystem as a whole, for instance, the entire e-commerce stack for an online store. However, system designs come in many different sizes and complexities. At a small scale, a feature design, such as a feature to add a new...