Skip to main content

Networking & the Request Lifecycle

Trace a request from the address bar to a database row and back, naming every hop (DNS, TCP, TLS, CDN, LB, proxy, app, cache, database), the latency each adds, and where each can fail.

0/6

API Design & Contracts

Choose the right API paradigm, design schema-first contracts that evolve without breaking clients, make mutations safe to retry, and use HTTP semantics, pagination, real-time delivery, and serialization like production systems do.

0/8
Lesson 07

REST vs gRPC vs GraphQL

Match the paradigm to the consumer and traffic shape (REST public, gRPC internal, GraphQL flexible clients) and name what each choice costs.

medium30 min
Lesson 08

Contract & Schema-First Design

Make a machine-readable schema the source of truth, design for tolerant additive evolution, and enforce compatibility with consumer-driven contract tests in CI.

medium25 min
Lesson 09

Versioning & Backward Compatibility

Prefer additive change with tolerant readers so you rarely version, use visible /v1 path versioning for true breaks, and retire versions with deprecate-warn-remove.

medium25 min
Lesson 10

Idempotency & Safe Retries

Give mutations a client-generated idempotency key, store the full response behind a unique-constraint insert, and turn at-least-once delivery into effectively-once.

medium30 min
Lesson 11

Pagination & Error Modeling

Use opaque cursor/keyset pagination for O(1) stable paging, and RFC 9457 structured errors with precise status codes so clients retry 5xx/429 but never other 4xx.

medium30 min
Lesson 12

Real-Time Delivery: Short-Poll, Long-Poll, SSE, WebSocket & Webhooks

Choose by direction, latency, per-connection cost, and delivery guarantee: SSE for one-way streaming, WebSocket for true duplex, webhooks for server-to-server.

medium30 min
Lesson 13

HTTP Semantics: Methods, Status Codes & Caching Headers

Use safe/idempotent method semantics to drive retries and caching, conditional GETs with ETag for cheap 304s, and ETag + If-Match for optimistic concurrency.

medium30 min
Lesson 14

Serialization, Content Negotiation & Compression

Choose format and codec by bottleneck (JSON+Brotli public, Protobuf+zstd internal), skip compressing tiny payloads, and keep schemas evolvable with field-tag discipline.

medium30 min

Edge, Proxies & Caching Foundations

Design the front half of any system: redundant load balancing over a stateless tier, an API gateway that owns cross-cutting concerns, and a full browser-to-database caching stack with a defensible invalidation strategy.

0/3

Performance & Resilience Fundamentals

Reason about latency the way users experience it (tails, not averages), size systems with Little's Law, design timeouts/retries/breakers, protect against overload, and pick the right concurrency model.

0/4