<CodeChronicles/>
← All Study Plans

📚 45-Day System Design Master Plan

1.5 hours/day | Design Gurus | Complete LLD + HLD Coverage

0%
0
Days Completed
45
Days Remaining
0%
Progress

PHASE 1: SOLID Design Principles

Goal: Master the foundation of clean object-oriented design

Day 1Single Responsibility Principle (SRP)

📋 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

Day 2Open/Closed Principle (OCP)

📋 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

Day 3Liskov Substitution Principle (LSP)

📋 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

Day 4Interface Segregation Principle (ISP)

📋 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

Day 5Dependency Inversion + SOLID Revision

📋 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

Day 6OOD Interview Framework

📋 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

Day 7Design Patterns Part 1: Creational

📋 Topics

Factory, Singleton, Builder patterns

💻 Practice

Implement Factory, Singleton, Builder

📝 Notes to Write

Pattern summary cards with use cases

Day 8Design Patterns Part 2: Behavioral

📋 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

Day 9Design Patterns Part 3: Structural

📋 Topics

Decorator, Adapter, Facade patterns

💻 Practice

Implement Decorator for coffee shop

📝 Notes to Write

Decorator vs Inheritance, pattern summary

Day 10Parking Lot System Design

📋 Topics

Requirements, core classes, relationships, Singleton + Factory + Strategy

💻 Practice

Full class diagram and flows

📝 Notes to Write

Class list, entry/exit flows, edge cases

Day 11Elevator System Design

📋 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

Day 12Library Management System

📋 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

Day 13Hotel / Movie Ticket Booking

📋 Topics

Bookings, payments, cancellation, Builder + Strategy + State

💻 Practice

Class diagram, booking flow, concurrency handling

📝 Notes to Write

Class list, booking flow, concurrency strategy

Day 14ATM System Design

📋 Topics

Card, PIN, transactions, State + Command patterns

💻 Practice

State diagram, class diagram, withdrawal flow

📝 Notes to Write

State diagram, class list, transaction flow

Day 15Online Shopping System

📋 Topics

Catalog, cart, checkout, Observer + Strategy + Composite

💻 Practice

Class diagram, checkout flow, inventory management

📝 Notes to Write

Class list, checkout flow, inventory handling

Day 16Vending Machine Design

📋 Topics

Products, payments, State pattern for machine states

💻 Practice

State diagram, class diagram, purchase flow

📝 Notes to Write

State diagram, class list, purchase flow

Day 17Splitwise / Expense Sharing

📋 Topics

Users, groups, split types, balances, Strategy + Factory

💻 Practice

Class diagram, split calculation, debt simplification

📝 Notes to Write

Class list, split logic, simplification algorithm

Day 18OOD Revision + Mock Interview

📋 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

Day 19Scalability Basics

📋 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

Day 20Load Balancing

📋 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

Day 21Databases Part 1: SQL vs NoSQL

📋 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

Day 22Databases Part 2: Indexes & Optimization

📋 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

Day 23Caching Strategies

📋 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

Day 24Database Replication

📋 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

Day 25Database Sharding

📋 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

Day 26Message Queues & Async Processing

📋 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

Day 27CDN & File Storage

📋 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

Day 28Rate Limiting & API Gateway

📋 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

Day 29Search & Full-Text Search

📋 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

Day 30Observability: Logging, Metrics, Tracing

📋 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

Day 31CAP Theorem & Consistency

📋 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

Day 32HLD Fundamentals Revision + Mock

📋 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

Day 33HLD Interview Framework

📋 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

Day 34URL Shortener

📋 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

Day 35Rate Limiter (Full System)

📋 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

Day 36Notification System

📋 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

Day 37Chat Application

📋 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

Day 38News Feed / Social Feed

📋 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

Day 39File Storage System

📋 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

Day 40Video Streaming Platform

📋 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

Day 41Ride-Sharing System

📋 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

Day 42E-commerce Platform

📋 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

Day 43Distributed Key-Value Store

📋 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

Day 44Pastebin / Code Sharing

📋 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

Day 45Full Mock Interview + Final Revision

📋 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