Skip to content

How to Design Large Scale Systems

Step 1: Clarify the goals

Make sure you understand the basic requirements and any clarilying questions.

Step 2: Determine the scope

Describe the feature set you'll be discussing in the given solution, and define all of the features and their importance to the end goal.

Step 3: Design for the right scale

Determine the scale so you know whether the data can be supported by a single machine or if you need to scale.

Step 4: Start simple, then iterate

Describe the high-level process end-to-end based on your feature set and overall goals. This is a good time to discuss potential bottlenecks.

Step 5: Consider relevant DSA

Determine which fundamental data structures and algorithms will help your system perform efficiently and appropriately.

Step 6: Describe trade-offs

Describe trade-offs while explaining your solution to show you understand large-scale systems and their complexities.