Daily Infrastructure / Platform / System Design Learning Track
Audience: Nick knows the basics of apps and product work, but is a novice in infrastructure/platform/system design. Each lesson should explain terms from first principles, avoid assuming prior infra knowledge, and explicitly connect back to previous lessons.
Role orientation: balance fundamentals with practical leadership relevance. Nick still wants to learn the basics of Kubernetes, observability/Datadog, Kafka, Redis/caching, databases, networking, and distributed systems from first principles. Do not skip the beginner explanations. The Coinbase manager/technical-leader angle should be an added lens: after teaching the concept clearly, explain how it helps with reading existing systems, asking better design/reliability questions, understanding incident reports, making tradeoffs explicit, improving runbooks/observability, coordinating across teams, and spotting operational risk before it becomes customer impact.
Cadence: one email per day. The order below is the default path. Start with Track A, a short Coinbase outage concept series, beginning tomorrow. After that focused series, continue into foundations and the other topic tracks. Do not make every future email about this one incident; reuse it only when it is a natural example. Do not repeat completed entries in sent-index.md or digests/.
How each digest should reference the sequence
Every lesson should include:
- Where we are in the track — e.g. “Track A / Lesson 1: Coinbase outage overview.”
- Previously — 2–4 bullets tying this lesson to prior lessons.
- Beginner foundation first — explain the basic concept from first principles before discussing leadership/operational implications.
- Why this matters in Nick’s Coinbase role — after the basics, explain how the concept helps a manager/technical leader in established systems: better questions, better risk assessment, better incident follow-up, better cross-team execution.
- Today’s mental model — one simple analogy.
- Core concept — novice-friendly explanation.
- Real-world example — from the Coinbase outage, large-company incidents, popular system design books, SRE/DDIA concepts, or realistic Coinbase/trading/social-app scenarios.
- Why this matters for prediction markets/trading/social apps — make it relevant to Nick’s interests.
- Common failure modes — what breaks in production.
- Technical-leader checklist — questions Nick could ask in design reviews, planning, incident reviews, or operational readiness reviews.
- Mini design exercise — one small prompt to think through.
- Terms to remember — glossary.
- Next time — preview the next lesson and how it builds on today.
---
Track A — Start here: short Coinbase outage concept series
This is the first sequence to send, starting tomorrow. Use case-studies/2026-05-07-coinbase-multi-hour-service-disruption.md as the anchor source for a focused opening series only. The goal is to use one real Coinbase incident to introduce several high-value concepts, then move on to the broader fundamentals tracks. Do not turn the entire course into Coinbase-outage commentary.
- Incident overview: what failed, customer impact, timeline, and why the incident matters
- Reading incident reports: symptoms, root cause, contributing factors, mitigation, follow-ups
- Latency vs availability and fault domains: why single-zone primaries exist and how blast radius works
- Observability during the incident: quote failures, Sev1s, monitors, dashboards, and customer-impact signals
- Kubernetes draining and stateful vs stateless systems: why many workloads moved quickly but exchange/Kafka did not
- Matching engines and quorum: order books, leader election, safety, and why blocking trading can be correct
- Kafka and balance streams: brokers, partitions, replication, lag, delayed freshness, and no-data-loss recovery
- Disaster recovery and safe market reopening: runbooks, validation, cancel-only mode, product-state audit, auction mode
After Track A, continue to Track 0 and the topic-specific tracks. Later lessons may reference this incident only when it genuinely clarifies the concept being taught.
Track 0 — Foundations for thinking about production systems
These come before deeper tools. They establish the vocabulary used by Kubernetes, Kafka, observability, and large-scale app design.
- Client/server basics, requests, responses, and APIs
- Latency vs throughput vs availability
- Processes, ports, hosts, and networking basics
- DNS, load balancers, TLS, and reverse proxies
- Stateless vs stateful services
- Vertical vs horizontal scaling
- Caches and why they make systems faster but trickier
- Databases: primary keys, indexes, transactions, and replication
- Queues vs synchronous requests
- Failure as a normal design input: retries, timeouts, backoff, idempotency
- Consistency basics: strong vs eventual consistency
- Capacity planning and back-of-the-envelope estimates
Track 1 — Kubernetes from zero
Kubernetes is one major topic/path, not the whole curriculum. Nick knows almost nothing about it, so start with basic container and deployment concepts.
- Why Kubernetes exists: running many services on many machines
- Containers vs virtual machines: the packaging problem Kubernetes builds on
- Images, registries, and immutable releases
- Pods: the smallest deployable unit
- Deployments and ReplicaSets: desired state and self-healing
- Services: stable networking for changing pods
- Ingress and gateways: exposing services to the internet
- ConfigMaps and Secrets: configuration without rebuilding images
- Resource requests/limits: CPU, memory, scheduling, and noisy neighbors
- Health checks: liveness, readiness, startup probes
- Rolling deployments, rollbacks, and canaries
- Namespaces, labels, and selectors: organizing clusters
- StatefulSets and persistent volumes: why databases are harder
- Jobs and CronJobs: one-off and scheduled work
- Autoscaling: HPA, cluster autoscaler, and scaling signals
- Kubernetes failure modes: CrashLoopBackOff, pending pods, bad rollouts
- Observability in Kubernetes: logs, metrics, traces, events
- Security basics: RBAC, service accounts, network policies
- Platform teams and internal developer platforms built on Kubernetes
- Coinbase/trading/social-app example: deploying a market data API safely
Track 2 — Observability, Datadog, monitoring, and production debugging
Nick knows next to nothing about this. Teach conceptual foundations first, then Datadog-style products.
- Why observability exists: knowing what production is doing
- Monitoring vs observability vs alerting
- Metrics: counters, gauges, histograms, percentiles
- Logs: structured events, correlation IDs, and search
- Traces: following one request across many services
- The three pillars and why “pillars” are not enough
- SLIs, SLOs, SLAs, and error budgets
- Dashboards: useful views vs vanity graphs
- Alerts: symptoms, thresholds, paging, fatigue, and runbooks
- Datadog mental model: agents, integrations, tags, dashboards, monitors
- Application Performance Monitoring (APM): spans, services, flame graphs
- Infrastructure monitoring: hosts, containers, Kubernetes, databases
- Log pipelines: ingestion, parsing, indexing, retention, cost
- Distributed tracing for trading/social app request flows
- Incident response: detect, triage, mitigate, postmortem
- Observability for Kafka and queues: lag, throughput, consumer health
- Observability for Kubernetes: pod health, node pressure, rollout debugging
- Observability cost control: cardinality, sampling, retention, indexes
- Coinbase/trading example: detecting stale prices or delayed settlement
- Social app example: debugging notification delivery delays
Track 3 — Kafka, streams, queues, and event-driven systems
Kafka and related topics are another learning path. Start from “why async?” and build toward real-time trading/social systems.
- Synchronous APIs vs asynchronous messaging
- Queues vs logs: SQS-style queues vs Kafka-style event streams
- Kafka mental model: topics, partitions, offsets, brokers, consumers
- Producers and consumers: delivery contracts and retries
- Consumer groups and parallelism
- Partition keys: ordering, hot partitions, and scaling
- Retention and replay: why event logs are powerful
- At-least-once, at-most-once, exactly-once, and effectively-once processing
- Idempotency and deduplication in event-driven systems
- Schemas: Avro/Protobuf/JSON, compatibility, schema registries
- Stream processing: Kafka Streams, Flink, materialized views
- Backpressure and consumer lag
- Dead-letter queues and poison messages
- Event sourcing vs using Kafka as a pipe
- CDC: change data capture from databases into streams
- Market data pipelines: price updates, order book deltas, sequence numbers
- Social app pipelines: feed events, notifications, ranking signals
- Monitoring Kafka: broker health, ISR, lag, throughput, disk usage
- Disaster recovery and multi-region Kafka tradeoffs
- When not to use Kafka
Track 4 — Redis, caching, and fast data access
Redis and caching are another dedicated learning path. Start from why caches exist, then build toward production failure modes, Redis data structures, and use cases in trading/social apps.
- Why caching exists: avoiding repeated expensive work
- Cache-aside mental model: app, cache, database
- Redis from zero: in-memory key-value store, commands, TTLs
- Cache hits, misses, evictions, and expiration
- Cache invalidation: why it is famously hard
- Read-through, write-through, write-behind, and cache-aside patterns
- Preventing cache stampedes: locks, jitter, request coalescing, stale-while-revalidate
- Hot keys and uneven traffic distribution
- Redis data structures: strings, hashes, lists, sets, sorted sets, streams
- Redis for rate limiting: counters, token buckets, sliding windows
- Redis for sessions, auth tokens, and ephemeral state
- Redis for leaderboards, rankings, and social-app feeds
- Redis Pub/Sub and streams: when Redis is messaging, and when Kafka is better
- Persistence and durability: RDB, AOF, and why Redis is usually not your source of truth
- Redis replication, Sentinel, Cluster, and failover basics
- Consistency risks: stale data, lost writes, split-brain, and read-after-write surprises
- Observability for caches: hit rate, latency, memory, evictions, key cardinality
- Caching in trading/prediction markets: prices, order books, balances, and what not to cache
- Multi-layer caching: browser, CDN, edge, app cache, database cache
- When not to use Redis or a cache
Track 5 — Trading, prediction markets, and financial platform design
- Order books, bids/asks, spreads, and matching
- Matching engines: determinism, sequencing, fairness, and latency
- Market data fanout: snapshots, deltas, sequence numbers
- Idempotency keys in trading/payments APIs
- Double-entry ledgers and balances as derived state
- Holds, reservations, settlement, and reconciliation
- Risk checks, limits, and kill switches
- Circuit breakers and market halts
- Consistency tradeoffs in balances, orders, and fills
- Audit logs and compliance-driven system design
- Hot/warm/cold wallet architecture as platform design
- Prediction market architecture: markets, outcomes, resolution, settlement
Track 6 — Social apps and large-scale product systems
- Feed architecture: fanout-on-write vs fanout-on-read
- Ranking systems: candidate generation, scoring, serving
- Notifications: preference fanout, dedupe, batching, quiet hours
- Realtime chat/presence: websockets, pub/sub, connection state
- Graph systems: follow, block, mute, recommendation edges
- Media upload and delivery: object storage, CDN, transcoding
- Search systems and indexing pipelines
- Abuse prevention: rate limits, reputation, queues, human review
- Feature flags and experimentation platforms
- Privacy and data deletion at scale
Track 7 — Reliability and platform engineering
- SRE basics: reliability as a product feature
- Load shedding, backpressure, and overload protection
- Rate limiting: token bucket and leaky bucket
- Retries, timeouts, exponential backoff, jitter
- Bulkheads and circuit breakers
- Deployments: blue/green, canary, progressive delivery
- Zero-downtime migrations
- Multi-region architectures: active-active vs active-passive
- Disaster recovery: RPO, RTO, backups, restores
- Internal developer platforms and golden paths
Suggested source pool
Local case studies to reuse
case-studies/2026-05-07-coinbase-multi-hour-service-disruption.md— Coinbase outage involving thermal event in AWS us-east-1, Kubernetes draining, matching-engine quorum, Kafka partition failover with TiB-scale data, delayed balance streams, cancel-only/auction reopening, Sev1 incident response, and disaster recovery tradeoffs.
Use reputable sources when possible, including:
- Designing Data-Intensive Applications by Martin Kleppmann
- Google SRE books
- System Design Interview / Alex Xu books
- Kubernetes official docs
- Kafka official docs and Confluent engineering material
- Datadog documentation and engineering blog
- Coinbase, Stripe, Uber, Meta, Twitter/X, Netflix, Discord, Slack, Cloudflare, AWS, Google engineering blogs