Subtracks & Tasks
Caching Proxy
Implement Basic Relay Proxy
Build a basic relay proxy that forwards requests to a backend server: 1. Listen for incoming client requests 2. Parse the request to determine backen...
Add Request Deduplication
Deduplicate identical concurrent requests to reduce backend load: 1. Compute a request key (e.g., hash of method + URL + body) 2. If a request with t...
Implement Collapsed Forwarding
Implement collapsed forwarding for cache misses to prevent thundering herd: When a cached item expires and multiple requests arrive: 1. First request...
Build Reverse Proxy with Caching
Build an HTTP-aware reverse proxy with caching: 1. Parse incoming HTTP requests 2. Check cache for valid response 3. On cache miss, forward to backen...
Add Health-Based Routing
Add health-based routing with circuit breaker pattern: 1. Maintain list of backend servers 2. Periodically health-check each backend 3. Track consecu...
API Gateway
Implement API Gateway Service Routing
An API Gateway provides a unified entry point for multiple microservices. Clients make one request to the gateway, which routes to the appropriate bac...
Implement Authentication and Authorization at Gateway
API gateways centralize authentication and authorization logic, securing all backend services without duplicating auth code in each service. **Authen...
Implement Request/Response Transformation
API gateways transform requests and responses to bridge the gap between client expectations and backend implementations. This enables legacy integrati...
Implement API Composition and Aggregation
API composition (aggregation) enables clients to fetch data from multiple services with a single request. The gateway fans out to backends and compose...
Implement Rate Limiting and Quota Management
**Rate limiting tiers**:. ```. Free tier:. - 100 requests/hour. - 1000 requests/day. - Return 429 when exceeded. Paid tier:. - 10,000 requests/hour. -...
Interview Prep
Common interview questions for Infrastructure / Platform Engineer roles that map directly to what you build in this track. Click any question to reveal the model answer.
Questions are representative of real interview patterns. Model answers are starting points — adapt them with your own experience and the specific context of the interview.
Common Mistakes
The top 5 mistakes builders make in this track — and exactly how to fix them. Click any mistake to see the root cause and the correct approach.
Comparison Mode
Side-by-side comparisons of the approaches, algorithms, and trade-offs you encounter in this track. Expand any comparison to see a detailed breakdown.
Concepts Covered
Prerequisites
It is recommended to complete the previous tracks before starting this one. Concepts build progressively throughout the curriculum.
Rabbit Holes
For when you want to go deeper. Curated papers, posts, and talks beyond what this track covers.
NGINX Architecture (How NGINX Handles Connections)
The engineering blog post explaining NGINX's event-driven, non-blocking architecture. Why NGINX uses worker processes instead of threads, and what that means for connection handling under load.
Envoy Proxy Architecture
Envoy's threading model is the modern answer to high-performance proxy design. The distinction between listener threads and worker threads is a useful architecture pattern beyond just proxies.
HTTP/2 Explained
Daniel Stenberg's free book on HTTP/2. If you are building a proxy, understanding what HTTP/2 multiplexing, header compression, and server push mean for connection management is essential.
Mutual TLS: A Tutorial
Linkerd's guide to mTLS. Service mesh proxies authenticate connections with client certificates. This guide explains the certificate lifecycle, rotation, and what mTLS actually prevents.