📚 45-Day System Design Master Plan
1.5 hours/day | Design Gurus | Complete LLD + HLD Coverage
PHASE 1: SOLID Design Principles
Goal: Master the foundation of clean object-oriented design
📋 Topics
What is SOLID and why interviewers care; SRP definition and examples; Identifying violations; Refactoring techniques
💻 Practice
Refactor bloated Invoice class into separate responsibilities
📝 Notes to Write
SRP definition, 3 violations, refactoring checklist
📋 Topics
OCP definition; Strategy pattern; Extending without modifying
💻 Practice
Design discount calculator using Strategy pattern
📝 Notes to Write
OCP definition, Strategy pattern structure, when to apply
📋 Topics
LSP definition; Square-Rectangle problem; When to use composition vs inheritance
💻 Practice
Fix Square-Rectangle LSP violation using interfaces
📝 Notes to Write
LSP definition, common violations, inheritance vs composition
📋 Topics
ISP definition; Fat interface anti-pattern; Multiple interface implementation
💻 Practice
Split Worker interface for Robot compatibility
📝 Notes to Write
ISP definition, signs of fat interface, how to split
📋 Topics
DIP definition; Dependency injection; Review all 5 SOLID principles
💻 Practice
Refactor service with dependency injection; Explain all SOLID out loud
📝 Notes to Write
DIP definition, complete SOLID cheat sheet, personal examples
PHASE 2: Object Oriented Design Interview
Goal: Confidently design LLD systems with clean class structure
📋 Topics
7-step OOD framework; UML basics; Relationships and cardinality
💻 Practice
Draw class diagram for Library Management System
📝 Notes to Write
OOD framework, UML cheat sheet, common mistakes
📋 Topics
Factory, Singleton, Builder patterns
💻 Practice
Implement Factory, Singleton, Builder
📝 Notes to Write
Pattern summary cards with use cases
📋 Topics
Strategy, Observer, Command patterns
💻 Practice
Implement Strategy for payments, Observer for notifications, Command for undo/redo
📝 Notes to Write
Pattern summary cards, real-world use cases
📋 Topics
Decorator, Adapter, Facade patterns
💻 Practice
Implement Decorator for coffee shop
📝 Notes to Write
Decorator vs Inheritance, pattern summary
📋 Topics
Requirements, core classes, relationships, Singleton + Factory + Strategy
💻 Practice
Full class diagram and flows
📝 Notes to Write
Class list, entry/exit flows, edge cases
📋 Topics
Requirements, state management, dispatching algorithm, State + Strategy patterns
💻 Practice
Class diagram, state transitions, dispatcher logic
📝 Notes to Write
Class list, state diagram, algorithm comparison
📋 Topics
Books, members, borrow/return, fines, Factory + Observer
💻 Practice
Class diagram and borrow/return flows
📝 Notes to Write
Class list, key flows, multiple copies handling
📋 Topics
Bookings, payments, cancellation, Builder + Strategy + State
💻 Practice
Class diagram, booking flow, concurrency handling
📝 Notes to Write
Class list, booking flow, concurrency strategy
📋 Topics
Card, PIN, transactions, State + Command patterns
💻 Practice
State diagram, class diagram, withdrawal flow
📝 Notes to Write
State diagram, class list, transaction flow
📋 Topics
Catalog, cart, checkout, Observer + Strategy + Composite
💻 Practice
Class diagram, checkout flow, inventory management
📝 Notes to Write
Class list, checkout flow, inventory handling
📋 Topics
Products, payments, State pattern for machine states
💻 Practice
State diagram, class diagram, purchase flow
📝 Notes to Write
State diagram, class list, purchase flow
📋 Topics
Users, groups, split types, balances, Strategy + Factory
💻 Practice
Class diagram, split calculation, debt simplification
📝 Notes to Write
Class list, split logic, simplification algorithm
📋 Topics
Review all patterns; Review all LLD problems
💻 Practice
Design 2 LLD problems from scratch, 30 min each, speak out loud
📝 Notes to Write
Weak areas, comfortable patterns, summary table
PHASE 3: System Design Fundamentals
Goal: Master all HLD building blocks with depth
📋 Topics
Vertical vs horizontal scaling; Stateless vs stateful services
💻 Practice
Sketch architecture before and after horizontal scaling
📝 Notes to Write
Scaling comparison table, stateless vs stateful examples
📋 Topics
Types, algorithms (round robin, least connections, IP hash), health checks, failover
💻 Practice
Design load balancing layer, choose algorithms for scenarios
📝 Notes to Write
Algorithm cheat sheet, Layer 4 vs 7, health checks
📋 Topics
ACID vs BASE, relational vs document/key-value/column/graph, decision framework
💻 Practice
Decide SQL vs NoSQL for 10 systems with justification
📝 Notes to Write
Comparison table, ACID vs BASE, decision tree
📋 Topics
B-tree/hash indexes, query optimization, N+1 problem, normalization vs denormalization
💻 Practice
Add indexes to slow queries, fix N+1 query
📝 Notes to Write
Index types, optimization checklist, normalization guide
📋 Topics
Cache-aside, write-through, write-back, LRU/LFU eviction, invalidation
💻 Practice
Design cache layer for product catalog
📝 Notes to Write
Caching patterns comparison, eviction policies, invalidation strategies
📋 Topics
Primary-replica, sync vs async, failover, multi-primary, replication lag
💻 Practice
Design replication architecture, handle primary failure
📝 Notes to Write
Replication types, failover process, lag consequences
📋 Topics
Range/hash/directory sharding, consistent hashing, resharding, hotspots
💻 Practice
Shard user database with 1B users, handle celebrity problem
📝 Notes to Write
Sharding strategies comparison, consistent hashing, when to shard
📋 Topics
Kafka/RabbitMQ, at-most/at-least/exactly-once delivery, idempotency, DLQ
💻 Practice
Design notification system with queue, handle worker crash
📝 Notes to Write
Queue use cases, delivery guarantees, idempotency strategies
📋 Topics
CDN edge caching, object storage (S3), upload/download flows, pre-signed URLs
💻 Practice
Design image upload system with CDN
📝 Notes to Write
CDN benefits, object storage vs file system, flow diagrams
📋 Topics
Token bucket, leaky bucket, sliding window, distributed rate limiting with Redis
💻 Practice
Design rate limiter for 1000 req/hour per user
📝 Notes to Write
Algorithms comparison, when to use each, distributed architecture
📋 Topics
Elasticsearch, inverted index, autocomplete with Trie, fuzzy matching, ranking
💻 Practice
Design product search with filters and autocomplete
📝 Notes to Write
Full-text vs LIKE, inverted index, autocomplete strategies
📋 Topics
ELK stack, Prometheus/Grafana, Jaeger, alerting, SLA/SLO/SLI
💻 Practice
Design observability for microservices
📝 Notes to Write
Three pillars comparison, tools, SLA/SLO/SLI definitions
📋 Topics
CAP theorem, CP vs AP systems, strong/eventual consistency, consistency models
💻 Practice
Classify 10 systems as CP or AP with justification
📝 Notes to Write
CAP with examples, CP vs AP guide, consistency models
📋 Topics
Review all building blocks from Days 19-31
💻 Practice
Design Twitter using all building blocks, 40 min, speak out loud
📝 Notes to Write
Building blocks summary, personal weak areas
PHASE 4: System Design Interview
Goal: Solve real interview problems end-to-end with confidence
📋 Topics
8-step framework: requirements, scale estimation, APIs, data model, architecture, bottlenecks, scaling, failure handling
💻 Practice
Apply framework to URL shortener, 35 min
📝 Notes to Write
Framework checklist, common mistakes
📋 Topics
Requirements, scale (100M URLs, 10B redirects), Base62 encoding, caching, sharding
💻 Practice
Full design with 8-step framework, 35-40 min
📝 Notes to Write
Architecture diagram, Base62, collision handling
📋 Topics
Distributed rate limiter with Redis, token bucket, Lua scripts for atomicity
💻 Practice
Design distributed rate limiter, explain algorithm, 30 min
📝 Notes to Write
Distributed architecture, Redis structure, fail open vs closed
📋 Topics
Push/email/SMS, priority queues, user preferences, retry with backoff, DLQ
💻 Practice
Full notification system with queue, 35 min
📝 Notes to Write
Architecture, priority handling, retry strategy
📋 Topics
WebSocket, 1-on-1 and group chat, online presence, offline messages, Cassandra + Kafka
💻 Practice
Full chat system, message flows, 40 min
📝 Notes to Write
Architecture, 1-on-1 and group flows, presence mechanism
📋 Topics
Fanout on write vs read, hybrid approach for celebrities, Redis caching, feed ranking
💻 Practice
Full feed system with fanout decisions, 40 min
📝 Notes to Write
Fanout comparison, hybrid strategy, architecture
📋 Topics
Chunking, deduplication, sync, versioning, conflict resolution, S3 + CDN
💻 Practice
Full file storage with upload/download/sync flows, 40 min
📝 Notes to Write
Chunking strategy, sync flow, conflict resolution
📋 Topics
Transcoding, adaptive bitrate (HLS), CDN, recommendations, massive storage
💻 Practice
Full YouTube-style platform, 40 min
📝 Notes to Write
Upload/transcode/stream flows, adaptive bitrate
📋 Topics
Geospatial indexing (Quadtree, Geohash), matching algorithm, location tracking, surge pricing
💻 Practice
Full Uber-style system, 40 min
📝 Notes to Write
Matching with geospatial index, location tracking, surge
📋 Topics
Catalog, search (Elasticsearch), cart, checkout, inventory locking, saga pattern
💻 Practice
Full e-commerce with checkout flow, 40 min
📝 Notes to Write
Checkout with inventory locking, distributed transactions
📋 Topics
Consistent hashing, replication, quorum, gossip protocol, hinted handoff
💻 Practice
Design Redis-style KV store, 35 min
📝 Notes to Write
Consistent hashing, replication and quorum, failure handling
📋 Topics
Similar to URL shortener with expiration, syntax highlighting, S3 for large pastes
💻 Practice
Full pastebin system, 30 min
📝 Notes to Write
Architecture, expiration strategies
📋 Topics
Revisit all 12 systems; Practice 3 random systems from memory; Full 45-min mock on complex system
💻 Practice
Design Twitter/Uber/YouTube without notes; Self-critique; Final checklist
📝 Notes to Write
Confidence level, top 3 weak areas, personal template