System Design Interview Resources — Shaurya Pratap Singh

Summary

Shaurya cracked Amazon, Salesforce, Microsoft, Oracle, and Adobe. His thesis: System Design isn’t hard, it’s poorly taught. 4 categories to master:

Key Concepts (the WHY)

  1. Scalability
  2. Latency vs Throughput
  3. CAP Theorem
  4. ACID Transactions
  5. Rate Limiting
  6. API Design
  7. Strong vs Eventual Consistency
  8. Distributed Tracing
  9. Sync vs Async Communication
  10. Batch vs Stream Processing
  11. Fault Tolerance

Building Blocks (the WHAT)

  1. Database
  2. Horizontal vs Vertical Scaling
  3. Caching
  4. Distributed Caching
  5. Load Balancing
  6. SQL vs NoSQL
  7. Database Scaling
  8. Data Replication
  9. Data Redundancy
  10. Database Sharding
  11. Database Indexes
  12. Proxy Server
  13. WebSocket
  14. API Gateway
  15. Message Queues

Architectural Patterns (the HOW)

  1. Event-Driven Architecture
  2. Client-Server Architecture
  3. Serverless Architecture
  4. Microservices Architecture

Low-Level Design Problems (Practice)

  1. Design Parking Lot
  2. Design Splitwise
  3. Design Chess Validator
  4. Design Distributed Queue / Kafka

0 items under this folder.