Caching
Keeping copies of data closer and faster, and keeping them correct.
Backend Engineer track
Junior
Write correct code, ship small changes safely, ask good questions.
Core: start here
- CachingKeeping copies of data somewhere faster to avoid repeated work.
3 more junior concepts
- Cache Hit and MissWhether the requested data was found in the cache.
- CDNA network of edge servers serving content close to users.
- TTL (Time to Live)How long a cached item stays valid.
Mid-level
Own a feature end to end without hand-holding.
Core: start here
- Cache InvalidationRemoving stale data from a cache; famously one of the hard problems.
- Cache-AsideThe app checks the cache, then the database, then fills the cache.
- HTTP CachingCache-Control, ETag and Last-Modified for reusing responses.
7 more mid-level concepts
- Cache Key DesignChoosing keys so different data never collides.
- CDN CachingCaching content on edge servers near users.
- ETagA version identifier used for conditional requests and caching.
- Eviction PolicyLRU, LFU or FIFO: which item to drop when the cache is full.
- In-Process vs Distributed CacheA cache in your app's memory vs a shared one like Redis.
- LRU CacheA cache evicting the least recently used item, built from a hash map and a linked list.
- Request-Scoped CachingCaching within a single request to avoid repeated lookups.
Senior
Own a system, its failure modes, and its trade-offs.
Core: start here
- Cache StampedeMany requests rebuilding the same expired item at once.
8 more senior concepts
- Cache ConsistencyKeeping cached data in line with the source of truth.
- Cache WarmingFilling a cache before traffic arrives.
- Consistent HashingHashing that moves only a few keys when servers are added or removed.
- Negative CachingCaching "not found" results too.
- Read-Through CacheThe cache itself loads missing data from the database.
- Thundering HerdMany clients waking up and hitting a resource at the same moment.
- Write-Behind CacheWriting to the cache now and to the database later.
- Write-Through CacheWriting to the cache and the database together.
Staff
Shape how many teams build, across systems.
Nothing here yet.
Principal
Set technical direction for the organization.
Nothing here yet.
Data Engineer track
Junior
Build and fix pipelines from clear specs; write correct SQL.
- Cache Hit and MissWhether the requested data was found in the cache.
- CachingKeeping copies of data somewhere faster to avoid repeated work.
- TTL (Time to Live)How long a cached item stays valid.
Mid-level
Own pipelines and models end to end, including their quality.
- Cache InvalidationRemoving stale data from a cache; famously one of the hard problems.
- Cache Key DesignChoosing keys so different data never collides.
- Cache-AsideThe app checks the cache, then the database, then fills the cache.
- CDN CachingCaching content on edge servers near users.
- ETagA version identifier used for conditional requests and caching.
- Eviction PolicyLRU, LFU or FIFO: which item to drop when the cache is full.
- HTTP CachingCache-Control, ETag and Last-Modified for reusing responses.
- In-Process vs Distributed CacheA cache in your app's memory vs a shared one like Redis.
- LRU CacheA cache evicting the least recently used item, built from a hash map and a linked list.
- Request-Scoped CachingCaching within a single request to avoid repeated lookups.
Senior
Design the platform's storage, processing and modeling choices.
- Cache ConsistencyKeeping cached data in line with the source of truth.
- Cache StampedeMany requests rebuilding the same expired item at once.
- Cache WarmingFilling a cache before traffic arrives.
- Consistent HashingHashing that moves only a few keys when servers are added or removed.
- Negative CachingCaching "not found" results too.
- Read-Through CacheThe cache itself loads missing data from the database.
- Thundering HerdMany clients waking up and hitting a resource at the same moment.
- Write-Behind CacheWriting to the cache now and to the database later.
- Write-Through CacheWriting to the cache and the database together.
Staff
Shape how the whole organization produces and uses data.
Nothing here yet.
Principal
Set data strategy and architecture across the company.
Nothing here yet.
Frontend Engineer track
Junior
Build UI that works, ship small changes safely, ask good questions.
- Cache Hit and MissWhether the requested data was found in the cache.
- CachingKeeping copies of data somewhere faster to avoid repeated work.
- CDNA network of edge servers serving content close to users.
- TTL (Time to Live)How long a cached item stays valid.
Mid-level
Own a feature end to end without hand-holding.
Core: start here
- HTTP CachingCache-Control, ETag and Last-Modified for reusing responses.
5 more mid-level concepts
- Cache InvalidationRemoving stale data from a cache; famously one of the hard problems.
- Cache Key DesignChoosing keys so different data never collides.
- CDN CachingCaching content on edge servers near users.
- ETagA version identifier used for conditional requests and caching.
- LRU CacheA cache evicting the least recently used item, built from a hash map and a linked list.
Senior
Own an app's architecture, performance, and failure modes.
- Cache ConsistencyKeeping cached data in line with the source of truth.
Staff
Shape how many teams build, across apps.
Nothing here yet.
Principal
Set technical direction for the organization.
Nothing here yet.