Skip to content
← Back to all lessons

TodayILearned

System Design lessons

One fullstack engineering concept every day โ€” taught deeply, then compressed into a public post.

Day 002 ยท June 24, 2026

What is caching?

And when does it bite you?

System Design ๐ŸŽฌ Video
Day 007 ยท July 1, 2026

Load balancing โ€” distributing traffic

One server can't handle it all. Here's how you spread the load โ€” and the tradeoffs of each strategy.

System Design ๐ŸŽฌ Video
Day 009 ยท July 3, 2026

Rate limiting โ€” protecting your API

A load balancer distributes traffic. A rate limiter caps it. Here are the four algorithms and the tradeoff each one makes.

System Design ๐ŸŽฌ Video
Day 014 ยท July 8, 2026

Message queues โ€” when the request can't wait for the work

A load balancer distributes requests synchronously. A message queue decouples them asynchronously โ€” the producer fires and forgets, the consumer processes at its own pace.

System Design ๐ŸŽฌ Video
Day 016 ยท July 10, 2026

API Gateway โ€” The Front Door

Load balancing distributes traffic. Rate limiting caps it. Caching skips work entirely. An API gateway does all three โ€” plus authentication, routing, and protocol translation โ€” at a single entry point. It's the composition layer where every previous lesson converges.

System Design ๐ŸŽฌ Video