See It Flow
See how engineering works.
Every area below is an interactive experience: watch the behavior, change the conditions, and understand the trade-off behind the decision.
Learning
01 · Fundamentals
Pick a technology to start. Each one moves from what it is, to how it behaves, to what happens when it's pushed.
Designing stable contracts between clients and services.
HTTP semantics, resources, and stateless design.
Typed Protobuf contracts and HTTP/2 multiplexing.
Bounding API responses for scalability and consistency.
Safe retries without duplicate side effects.
Learning
02 · Core Patterns
Pick a technology to start. Each one moves from what it is, to how it behaves, to what happens when it's pushed.
Exponential backoff and jitter prevent retry storms.
Stop calling a failing dependency before it takes you down.
Token buckets enforce per-client request budgets.
Flow control signals when consumers can't keep up.
Isolated resource pools prevent one workload from starving another.
Deliberately reject low-priority work to protect the critical path.
Learning
03 · Asynchronous Systems
Pick a technology to start. Each one moves from what it is, to how it behaves, to what happens when it's pushed.
Decouple work submission from execution with at-least-once guarantees.
Publish once, let independent consumers react without coupling.
Explicit job lifecycle with lease-based crash recovery.
Atomic business record + event — no dual-write failures.
Park unprocessable messages safely for inspection and replay.
Learning
04 · Distributed Patterns
Pick a technology to start. Each one moves from what it is, to how it behaves, to what happens when it's pushed.
TTL-backed ownership prevents duplicate work across instances.
Hash rings minimise remapping when nodes are added or removed.
Compensating transactions restore consistency across distributed steps.
Separate command and query models when their needs diverge.
Append events, derive current state by replay, build any projection.
Learning
05 · Real-Time Systems
Pick a technology to start. Each one moves from what it is, to how it behaves, to what happens when it's pushed.
Ask the server periodically — simple, stateless, and robust.
Hold a request open until data is available — then respond instantly.
One-way push over a persistent HTTP connection with auto-reconnect.
Full-duplex persistent TCP connection for bidirectional low-latency messaging.
Heartbeat + TTL model — online status derived, not stored.
Learning
06 · Database Concepts
Pick a technology to start. Each one moves from what it is, to how it behaves, to what happens when it's pushed.
How databases store data, execute queries, guarantee durability, and handle concurrent access.
Entities, relationships, normalization, denormalization, and access-pattern-driven schema design.
How indexes work, when to use them, and the write-cost trade-off.
ACID guarantees, isolation levels, locking, MVCC, deadlocks, and optimistic vs pessimistic concurrency.
Vertical scaling, read replicas, connection pooling, caching, sharding, hot keys, and rebalancing.
Replication models, partitioning, quorum, network partitions, distributed transactions, and data locality.
Search, time-series, geospatial, graph, OLAP, events, object storage, and key-value — when and why to use each.