| 1 |
Introduction to System Design (Importance, Goals, Types of Systems) |
|
| 2 |
Requirements Gathering (Functional Requirements, Non-Functional Requirements, SLAs) |
|
| 3 |
High-Level Design Concepts (Components, Modules, Layered Architecture, Monolith vs Microservices) |
|
| 4 |
Low-Level Design Concepts (Classes, Interfaces, Data Models, ER Diagrams, Sequence Diagrams) |
|
| 5 |
Load Balancing (Types, Algorithms, Sticky Sessions, Reverse Proxy) |
|
| 6 |
Caching (Client-Side, Server-Side, CDN, Redis, Memcached, Invalidation Strategies) |
|
| 7 |
Database Design (SQL vs NoSQL, Data Modeling, Schema Design, Normalization, Denormalization) |
|
| 8 |
Indexing & Query Optimization (Primary, Composite, Full-Text, Query Plans, EXPLAIN) |
|
| 9 |
Replication (Master-Slave, Master-Master, Synchronous vs Asynchronous, Consistency) |
|
| 10 |
Sharding (Horizontal, Vertical, Key-Based, Range-Based, Hash-Based) |
|
| 11 |
Consistency & Availability (CAP Theorem, Eventual Consistency, Strong Consistency) |
|
| 12 |
Messaging & Queues (RabbitMQ, Kafka, SQS, Pub/Sub, Use Cases) |
|
| 13 |
Asynchronous Processing (Worker Queues, Background Jobs, Retry Mechanisms) |
|
| 14 |
Rate Limiting & Throttling (Token Bucket, Leaky Bucket, Sliding Log, Fixed Window) |
|
| 15 |
Search & Indexing (Elasticsearch, Lucene, Full-Text Search, Ranking Algorithms) |
|
| 16 |
Content Delivery Networks (CDNs, Edge Caching, Cache Invalidation) |
|
| 17 |
File & Object Storage (S3, GCS, MinIO, Storage Patterns) |
|
| 18 |
Monitoring & Logging (Prometheus, Grafana, ELK Stack, Alerts, Metrics Collection, Tracing) |
|
| 19 |
Caching Strategies (Write-Through, Write-Back, Cache-Aside, Lazy Loading) |
|
| 20 |
Websockets & Real-Time Communication (WebSocket Protocol, Server-Sent Events, Pub/Sub) |
|
| 21 |
Security (Authentication, Authorization, OAuth2, JWT, SSL/TLS, API Security) |
|
| 22 |
Scalability Patterns (Vertical vs Horizontal Scaling, Auto-Scaling, Partitioning) |
|
| 23 |
Design Patterns in System Design (Singleton, Observer, CQRS, Event Sourcing, Circuit Breaker) |
|
| 24 |
API Design (REST, GraphQL, gRPC, Versioning, Idempotency, Rate Limiting) |
|
| 25 |
Microservices Architecture (Service Discovery, API Gateway, Circuit Breaker, Sagas, Event-Driven) |
|
| 26 |
Serverless Architecture (AWS Lambda, Google Cloud Functions, Azure Functions, Use Cases & Limitations) |
|
| 27 |
Consistency Models & Distributed Systems (CAP, PACELC, Eventual Consistency, Strong Consistency) |
|
| 28 |
Queue vs Stream Processing (Kafka Streams, RabbitMQ, Kinesis, Use Cases) |
|
| 29 |
High Availability & Disaster Recovery (Failover, Replication, Backup Strategies, Multi-Region Deployment) |
|
| 30 |
Best Practices & Documentation (Code Readability, Design Reviews, Trade-offs Documentation) |
|