STEP 1: Talk on Features and Expectations (2 minutes)
- It is very important to have a clear understanding of the requirements of the problem.
- List down all the features you think the system can support.
STEP 2: System requirement and Scalability (2-5 minutes)
The second step is very important. Know the System Capability.
- Know the number of users.
- Amount of data to store per day
- Rate of growth of data per day
- If the most important data can be fir on a single machine, then caching can be done.
- Whether Sharding required or not? Example: Sharding not required if total data can be stored in a single machine.
- Know the Machine type (RAM and Storage)
STEP 3: Design Goals (1-2 minute)
- Know the important goals of the systems
STEP 4: Design skeleton (4-5 minutes)
- Start high level
STEP 5: Solve the question (20-30 minutes)
- Deep dive into details
Post a Comment