System Design
I. Beginner
1. Introduction
2. Design Thinking
3. Requirements
4. Functional vs Non-Functional
5. CAP Theorem
6. Scalability
7. Latency & Throughput
8. Availability & Reliability
9. Load Balancing
10. Caching
11. Databases
12. SQL vs NoSQL
13. Replication
14. Partitioning
15. Beginner Exercise
II. Intermediate
16. Message Queues
17. Event-Driven
18. Microservices
19. Service Discovery
20. API Design
21. Rate Limiting
22. Auth & Authorization
23. Consistency
24. Distributed Transactions
25. Observability
26. Logging & Monitoring
27. Fault Tolerance
28. Circuit Breaker
29. Intermediate Exercise
30. System Review
III. Advanced