grokking-system-design

Github stars Tracking Chart

Grokking System Design Interview

Source: educative

Interview Process

  • Scope the problem
    • Don’t make assumptions.
    • Ask clarifying questions to understand the constraints and use cases.
    • Steps
      • Requirements clarifications
      • System interface definition
  • Sketch up an abstract design
    • Building blocks of the system
    • Relationships between them
    • Steps
      • Back-of-the-envelope estimation
      • Defining data model
      • High-level design
  • Identify and address the bottlenecks
    • Use the fundamental principles of scalable system design
    • Steps
      • Detailed design
      • Identifying and resolving bottlenecks

Distributed System Design Basics

System Designs

Overview

Name With Ownertuliren/grokking-system-design
Primary LanguageShell
Program languageShell (Language Count: 1)
Platform
License:
Release Count0
To the top