System Design
Design scalable systems: load balancing, caching, microservices, and distributed architecture.
API Gateways
Read →Understand API gateways as the single entry point for microservices. Learn routing, authentication, rate limiting, request/response transformation, and circuit breaking.
Caching Strategies
Read →Learn different caching patterns and when to use them to improve application performance and reduce database load.
CAP Theorem
Read →Master the CAP theorem: understand why you can only guarantee two of Consistency, Availability, and Partition tolerance. Learn real-world trade-offs and examples.
CDN Design
Read →Understand Content Delivery Networks (CDNs), how they reduce latency, edge caching strategies, cache invalidation, and designing a CDN architecture.
Circuit Breaker Pattern
Read →Learn the circuit breaker pattern for fault tolerance. Understand states (closed, open, half-open), implementation, and preventing cascading failures.
Consistent Hashing
Read →Learn consistent hashing for distributed systems. Understand how it enables efficient data distribution, handles node failures, and minimizes data movement during rebalancing.
CQRS
Read →Master CQRS (Command Query Responsibility Segregation): separate read and write models, when to use it, and implementation patterns.
Database Sharding
Read →Master database sharding strategies: horizontal partitioning, shard key selection, cross-shard queries, rebalancing, and handling failures in sharded systems.
Event-Driven Architecture
Read →Master event-driven architecture: event sourcing, CQRS, event streaming, event choreography vs orchestration, and building scalable event-driven systems.
Event Sourcing
Read →Learn event sourcing: storing state changes as events, rebuilding state, event replay, and when event sourcing is the right choice.
High Availability
Read →Design for high availability: redundancy, failover strategies, health checks, circuit breakers, and achieving 99.9%+ uptime in distributed systems.
Horizontal vs Vertical Scaling
Read →Understand the difference between horizontal (scale-out) and vertical (scale-up) scaling, their trade-offs, and when to use each approach.
Indexing Strategies
Read →Learn database indexing strategies: B-tree, hash indexes, composite indexes, covering indexes, and how to design indexes for optimal query performance.
Load Balancing
Read →Distribute incoming requests across multiple servers to improve performance, reliability, and scalability.
Message Queues (Kafka, RabbitMQ)
Read →Compare message queue systems: Kafka for event streaming vs RabbitMQ for traditional messaging. Learn use cases, patterns, and when to choose each.
Microservices Architecture
Read →Master microservices architecture: service decomposition, communication patterns, data management, deployment strategies, and challenges like distributed transactions.
Monolith vs Microservices
Read →Compare monolithic and microservices architectures. Understand when to choose each, migration strategies, and the trade-offs involved in architectural decisions.
Rate Limiting
Read →Learn rate limiting algorithms (token bucket, leaky bucket, sliding window), distributed rate limiting, and how to implement rate limiting in high-traffic systems.
Redis Caching
Read →Master Redis as a caching solution. Learn Redis data structures, persistence options, replication, clustering, and common patterns for distributed caching.
Replication Strategies
Read →Learn database replication strategies: master-slave, master-master, synchronous vs asynchronous replication, and handling replication lag.
REST vs GraphQL Design
Read →Compare REST and GraphQL API designs. Understand when to use each, their trade-offs, and how to design efficient APIs for different use cases.
Retry & Backoff Strategies
Read →Master retry strategies: exponential backoff, jitter, maximum retries, and how to implement robust retry logic in distributed systems.
Reverse Proxying
Read →Learn how reverse proxies work, their benefits (SSL termination, load balancing, security), and how to configure them. Understand the difference between reverse proxy and forward proxy.
Saga Pattern
Read →Learn the Saga pattern for managing distributed transactions. Understand choreography vs orchestration, compensating transactions, and handling failures.