Practical backend tasks

Take-home and pairing-round style tasks: caches, rate limiters, retries, log and CSV processing.

  1. LRU Cache A fixed-capacity cache that evicts the least recently used key, with O(1) get and put. Medium Most asked All 5 languages
  2. Token Bucket Rate Limiter Allow bursts up to a capacity while refilling at a steady rate. Medium All 5 languages
  3. Key-Value Store with TTL An in-memory cache whose entries expire after a time-to-live. Medium All 5 languages
  4. Retry with Exponential Backoff Retry a failing operation with exponential delays, but never retry non-retryable errors. Medium Most asked All 5 languages
  5. Top Endpoints from Access Logs Parse web-server log lines and return the most requested paths. Medium All 5 languages
  6. Revenue Report from CSV Parse a CSV export, skip bad rows and total paid revenue per region. Easy All 5 languages
  7. Flatten Nested JSON Turn nested objects and arrays into a flat map with dotted keys. Medium All 5 languages
  8. Group Events into Sessions Split a user's event timestamps into sessions separated by inactivity gaps. Easy All 5 languages
  9. Find Free Meeting Slots Given busy blocks, list free slots in the working day long enough for a meeting. Medium All 5 languages
  10. URL Shortener Codes (Base62) Encode numeric IDs into short Base62 codes and decode them back. Easy All 5 languages

← All coding problems