Main takeaways:
-Why is System Design important to a Product Manager
-What is the level of System Design depth needed for a PM?
-How to be successful in the System Design part of the PM interview?
6. Key Topics
● Why is System Design important to Product Managers?
● What is the level of System Design depth needed for a PM?
● How to be successful in the System Design part of the PM
interview?
7. Who is this talk for?
● PMs who work with Engineering teams
● PMs driving early stage products
● PMs who represent their product and team in broader forums
● Aspiring PMs preparing for PM interviews
Product Managers can benefit from understanding System Design concepts, to
have effective conversation with Engineering and other partners
8. About me…
● Software Engineer -> Business Analyst -> Product Manager
● Experience designing and launching products from the ground up
● Built systems in the retail supply chain domain
● Can be reached at jagadish.mahadevan@gmail.com
9. What is System Design?
Basic building blocks for any system!
● Each block has a role in the system
● Each block interacts with other blocks
● Each block takes and input and gives an output
10. Example of System Design*
High-level design for YouTube
* Image representation from the course “Grokking the System Design Interview”
11. Why should PMs understand System Design
● PMs are expected to know the business and technical aspects of a product
● System Design understanding enables PMs to have effective tradeoff
conversations
● PMs can appreciate product complexity and make reasonable commitments
● PMs who understand their product feel confident representing it in broader
forums
Product Managers Ignore System Design at Their Own Risk
12. What is the System Design depth needed for PMs?
Classic MBA Answer - It Depends!
1. Customer facing products - Understand the blocks
2. Platform products - More depth - APIs, Scaling, Performance etc.
13. How to develop expertise in System Design?
1. Understand basic blocks and their purpose
2. Understand Input and Output parameters for each block
3. Understand how the system scales
14. How to prepare for System Design interviews?
● Questions can be ambiguous
● Have a framework for structuring the answer
○ Clarify Requirements
○ Define Success criteria
○ Create the high-level design
○ Identify the critical block for the system
○ Detail the blocks, starting with the most critical block
● Identify scaling bottlenecks
● Focus on mitigating critical scaling blockers
● If interested - talk about capacity estimations, APIs etc.
● Online material, Courses, Practice forums and Videos available