Design systems that survive the real world.
Work from product requirements to the decisions that keep software correct: data models, transactions, races, queues, security, observability, and scale.
Three systems. Three kinds of difficulty.
Begin with transactional commerce, realtime coordination, or correctness around money.
E-commerce Platform
Catalog, inventory, checkout, fulfillment, and returns without overselling.
Open case study →Ride Hailing Platform
Match riders and drivers under location churn and acceptance races.
Open case study →Payment Platform
Safely orchestrate provider payments, idempotency, ledger entries, webhooks, and reconciliation.
Open case study →Project explorer
Each case study makes its own domain tradeoffs. Filter by the engineering problem you want to understand.
E-commerce Platform
Catalog, inventory, checkout, fulfillment, and returns without overselling.
- Database
- PostgreSQL
- System traits
- Queue · Payments
Food Delivery Platform
Coordinate customers, restaurants, couriers, menus, dispatch, and live delivery state.
- Database
- PostgreSQL + PostGIS
- System traits
- Realtime · Queue · Payments
Ride Hailing Platform
Match riders and drivers under location churn and acceptance races.
- Database
- PostgreSQL + PostGIS
- System traits
- Realtime · Queue · Payments
Hotel PMS
Property operations, room inventory, reservations, folios, and housekeeping across time zones.
- Database
- PostgreSQL
- System traits
- Queue · Payments · Multi-tenant
Appointment SaaS
Multi-tenant scheduling with availability rules, holds, reminders, and calendar sync.
- Database
- PostgreSQL
- System traits
- Queue · Payments · Multi-tenant
Project Management Platform
Tenant-safe projects, tasks, comments, permissions, activity, and collaborative updates.
- Database
- PostgreSQL
- System traits
- Realtime · Queue · Multi-tenant
Video Streaming Platform
Ingest, transcode, package, authorize, and deliver on-demand video globally.
- Database
- PostgreSQL + Object Storage
- System traits
- Queue
Social Network
Create social graphs and feeds while controlling fan-out, abuse, and privacy.
- Database
- PostgreSQL
- System traits
- Realtime · Queue
Cloud File Storage
Secure resumable uploads, hierarchy, sharing, versioning, and background scanning.
- Database
- PostgreSQL + Object Storage
- System traits
- Realtime · Queue · Multi-tenant
Payment Platform
Safely orchestrate provider payments, idempotency, ledger entries, webhooks, and reconciliation.
- Database
- PostgreSQL
- System traits
- Queue · Payments · Multi-tenant
Learn the decisions between the boxes.
Model the invariant
Identify the rule that must remain true under retries and concurrent requests.
Place the transaction
Decide which state changes belong in one commit and which must converge.
Design failure behavior
Handle timeouts, duplicate delivery, stale caches, and interrupted workers explicitly.
Draw the security boundary
Connect actors and objects to authorization, isolation, and audit requirements.
Observe the workflow
Measure the domain signals that reveal stuck, slow, or incorrect work.
Evolve with evidence
Add partitions, replicas, and specialized stores only when workload pressure justifies them.
Learning paths
Move through case studies in an order that builds the relevant mental model.
Backend Foundations
Transactions, APIs, data models, and practical background work.
- E-commerce Platform
- Appointment SaaS
- Project Management Platform
Distributed Systems
Retries, ownership, asynchronous convergence, and failure recovery.
- Payment Platform
- Ride Hailing Platform
- Video Streaming Platform
Realtime Systems
Location streams, live collaboration, fan-out, and stale state.
- Ride Hailing Platform
- Social Network
- Project Management Platform
SaaS Architecture
Tenant isolation, roles, scheduling, and operational workflows.
- Appointment SaaS
- Hotel PMS
- Project Management Platform
Engineering library
Patterns explain when not to add complexity. Edge cases begin with the failure you will actually meet.
17 engineering patterns
Minimal examples, selection criteria, and honest tradeoffs.
30 edge cases
Failure mechanism, resulting bug, and concrete mitigation.
Connected search
Find a concept across projects, patterns, and edge cases.
Architecture comparison
Contrast shared concepts and domain-specific decisions.
Improve the engineering reference.
Correct an invariant, add a missed failure, sharpen a diagram, or propose a domain-specific case study.