Java Case studies

The problems asked by name. Each rewards a different core idea, which is why the same generic answer does not fit all of them.

3 concepts · 9 interview questions

What this topic covers

Every concept in case studies, and the questions each one gets asked as. Where a question links, it has a full write-up.

Write-heavy systems

Systems where ingestion dominates: metrics, logs, click streams. The design question is buffering, batching and what may be lost.

  • Design a URL shortener.
  • Design a rate limiter as a shared service.
  • Design a metrics ingestion pipeline.

Read-heavy systems

Systems where a small amount of data is read enormously often. These are cache and fan-out problems.

  • Design a news feed.
  • Design a product catalogue with search and filters.
  • Design a leaderboard.

Real-time and asynchronous systems

Systems where delivery, ordering and presence matter more than raw volume.

  • Design a chat application.
  • Design a notification service that must not send twice.
  • Design a job scheduler that survives restarts.

More in System design

See the whole reference map →