# System Design Overview

## Interview Checkpoints

Good questions are essential for clearing system design interviews. Preparing a mental map of everything required for designing a system will structure the thought process. Gere are few things to keep in mind while designing a system during an interview:

1. **Features:**
   * Minimum viable product by asking good questions
   * Differentiate between definitely required, what he cares about and what not he cares about
2. **Define APIs**
   * What are the APIs required to implement the feature
   * Or how the bigger problem can be broken into smaller
   * What are those APIs, who gonna call, how the call is going to be
3. **Availability**
   * If the host goes down or a database goes down, should the service still be available?
4. **Latency Performance**
   * If background job then latency is not an issue, but customer-facing request how is going to communicate or respond in case of latency
5. **Scalability**
   * With adding more and more users, is it going to be available and latency is not going to be an issue, need to be tackled
6. **Durability**
   * Data can be stored securely, not lost, and not compromised
7. **Class Diagram**
   * Design parking lot or lift, OOP principle you will use
8. **Security and privacy**
   * Not asked generally, but if asked authentication system then required
9. **Cost-effective**
   * If an alternative cost-effective solution is possible?

{% hint style="success" %}
Keep ADCD rule in mind while sitting in an interview

**A**: Ask good questions (What features to work on, how much to scale)

**D**: Don’t put jargons (use word/technologies only if you are aware well of it)

**C**: Clear and organized thinking (first define overall view before going into details)

**D**: Drive discussions (80:20, talk 80% of the time, and 20% time for interviewer)
{% endhint %}

## Youtube Channel for Further Understanding

* [**https://www.youtube.com/watch?v=UzLMhqg3\_Wc**](https://www.youtube.com/watch?v=UzLMhqg3_Wc)
* [**https://www.youtube.com/watch?v=vge7qwCR1dA\&list=PLt4nG7RVVk1g\_LutiJ8\_LvE914rIE5z4u**](https://www.youtube.com/watch?v=vge7qwCR1dA\&list=PLt4nG7RVVk1g_LutiJ8_LvE914rIE5z4u)
* [**https://www.youtube.com/watch?v=umWABit-wbk**](https://www.youtube.com/watch?v=umWABit-wbk)
* [**https://www.youtube.com/watch?v=QmX2NPkJTKg**](https://www.youtube.com/watch?v=QmX2NPkJTKg)
