Topic hub
System Design Problems
Worked designs: URL shortener, rate limiter, chat, news feed, payments, ticketing and more.
Lessons
- Event-Driven Architecture · Software Architecture Foundations
Design systems around events, asynchronous workflows, and eventual consistency. - Microservices and Modular Monoliths · Software Architecture Foundations
Compare service boundaries with deployability, ownership, and operational cost. - Sagas, Outbox, and Consistency · Software Architecture Foundations
Coordinate distributed workflows without pretending one global transaction exists. - Resilient Service Integrations · API Architecture and Integration Design
Timeouts, retries, circuit breakers, bulkheads and graceful degradation. - Scaling Patterns · Caching and Performance Engineering
Stateless services, read replicas, sharding, queues and CDNs. - CAP and PACELC · Distributed Systems for Backend Engineers
What the theorems really say and how to use them. - Consistency Models · Distributed Systems for Backend Engineers
Linearizability, sequential, causal, read-your-writes and eventual consistency. - Distributed Transactions: 2PC vs Sagas · Distributed Systems for Backend Engineers
Atomicity across services and databases. - Real-World Architectures: DynamoDB, Spanner and Kafka · Distributed Systems for Backend Engineers
How production systems apply these ideas. - Delta Sync Protocols · Mobile API Best Practices
Sync only what changed: change tokens, tombstones and resync. - Orchestrating Orders, Inventory & Payments · Payments & Money APIs
Outbox, sagas and timeouts across order, stock and payment services. - Sagas with Messaging · Queues & Background Processing in Depth
Coordinate multi-service transactions using events or commands. - Multi-AZ, Multi-Region and Failover · Resilience Patterns
Redundancy across failure domains and how failover really works.
Decision guides
- Choosing a Transaction Isolation Level
- Full Sync vs Delta Sync vs CRDTs
- Hash vs Range vs Directory Sharding
- Scaling Reads: Cache, Replicas or Read Models?
- Strong vs Eventual Consistency
- TTL vs Delete-on-Write vs Event-Driven Invalidation