System Design Concepts
System Design Concepts
Networking
TCP/UDP, DNS, HTTP, reverse proxy, load balancing, CDN, WebSockets, and API protocols
Storage & DatabasesIndexes, RDBMS internals, SQL vs NoSQL, Redis, Cassandra, S3, caching, and full-text search
ScalingDatabase sharding — hash, range, directory strategies and cross-shard operations
ReplicationLeader-based replication, read replicas, replication lag, and consistency models
Distributed SystemsCAP, PACELC, consistency models, idempotency, distributed locking, leader election, gossip, and quorum
Consensus & CoordinationTwo-Phase Commit, Raft consensus, log replication, and safety guarantees
Messaging & Event-DrivenMessage queues vs event streams, RabbitMQ, SQS, Kafka, consumer groups, and hybrid patterns
Rate LimitingFixed window, sliding window, token bucket, leaky bucket, distributed implementations, and Redis Lua scripts
Reliability PatternsCircuit breaker, bulkhead isolation, back-pressure, load shedding, and composing resilience patterns
API DesignPagination strategies, idempotency keys, API versioning, breaking vs non-breaking changes, and sunset lifecycle
ArchitectureMicroservices vs monolith, service discovery, API gateway, BFF pattern, and service mesh
Capacity EstimationLatency numbers, estimation framework, worked examples, peak load patterns, and interview worksheet