Software Engineering Architecture Lab

System Design Case Studies

System design case studies: marketplace, payments, ride-sharing, video streaming and SaaS billing. Watch the first architecture fail, then redesign it.

  • Global Marketplace — An Amazon-like e-commerce platform: orders, inventory, payments and distributed transactions. Topics: orders, inventory, payments, sagas, outbox, flash sales.
  • Payments Platform — A Stripe-like payment API: idempotency, ledgers, retries, consistency and failure handling. Topics: idempotency, double-entry ledger, retries, webhooks, consistency.
  • Ride-Sharing Platform — An Uber-like dispatch system: live location, real-time matching, geo-partitioning and event streams. Topics: real-time, geo-partitioning, event streams, hotspots, matching.
  • Video Streaming Platform — A Netflix-like streaming service: CDN, caching, microservices, resilience and personalisation at scale. Topics: CDN, caching, microservices, chaos engineering, resilience.
  • SaaS Subscription Billing — A subscription platform: DDD, bounded contexts, billing, invoices, domain events and service extraction. Topics: DDD, bounded contexts, billing, invoices, events, multi-tenancy.