Javathoughts Logo
Javathoughts

System Design Interview Preparation

Learn how to design real-world systems step by step for backend and Java interviews.

Top 20 System Design Questions

Showing 20 of 20 questions

BeginnerAvailable

URL Shortener

Create short links, redirect users fast, and track basic click analytics.

  • FAANG
  • Backend
  • SaaS
Read guide →
BeginnerAvailable

Rate Limiter

Protect APIs by limiting how many requests a client can send in a time window.

  • FAANG
  • Backend
  • Java
Read guide →
Mid-levelAvailable

Distributed Cache

Speed up reads with a shared cache across many application servers.

  • FAANG
  • Backend
  • Java
Read guide →
Mid-levelAvailable

News Feed

Show a personalized feed of posts with ranking, fan-out, and pagination.

  • FAANG
  • Backend
Read guide →
Mid-levelAvailable

Chat / Messaging System

Design one-to-one and group chat with online status and message delivery.

  • FAANG
  • Backend
Read guide →
BeginnerAvailable

Notification System

Send email, SMS, and push notifications without slowing down core APIs.

  • SaaS
  • Backend
  • Java
Read guide →
Mid-levelAvailable

File Storage like Dropbox

Upload, sync, and share files with metadata, versions, and chunked storage.

  • Backend
  • SaaS
  • FAANG
Read guide →
SeniorAvailable

Video Streaming like YouTube / Netflix

Ingest videos, transcode them, and stream smoothly to millions of viewers.

  • Backend
  • FAANG
  • SaaS
Read guide →
Mid-levelAvailable

Search Autocomplete

Suggest search terms in a few milliseconds as the user types.

  • Backend
  • FAANG
  • SaaS
Read guide →
SeniorAvailable

Ride Booking like Uber

Match riders and drivers in real time with location, pricing, and trip state.

  • Backend
  • FAANG
  • Fintech
Read guide →
Mid-levelAvailable

Food Delivery / Order Workflow

Track an order from restaurant to rider to customer with status updates.

  • Backend
  • SaaS
  • Fintech
Read guide →
SeniorAvailable

Payment System

Move money safely with idempotency, ledgers, and failure handling.

  • Backend
  • Fintech
  • SaaS
Read guide →
Mid-levelAvailable

E-commerce Cart, Order, and Inventory

Keep cart, stock, and checkout consistent when many shoppers buy at once.

  • Backend
  • SaaS
  • Java
Read guide →
SeniorAvailable

Ticket Booking System

Hold seats for a short time and prevent double booking under high traffic.

  • Backend
  • FAANG
  • Fintech
Read guide →
SeniorAvailable

Logging, Metrics, and Observability Platform

Collect logs, metrics, and traces so teams can debug production issues.

  • Backend
  • SaaS
  • Java
Read guide →
Mid-levelAvailable

Web Crawler

Discover pages, fetch them politely, and store content for search or analysis.

  • Backend
  • FAANG
Read guide →
SeniorAvailable

Distributed Queue

Buffer work between services so producers and consumers can scale independently.

  • Backend
  • FAANG
  • Java
Read guide →
Mid-levelAvailable

API Gateway

Put a single entry point in front of services for routing, auth, and limits.

  • Backend
  • SaaS
  • Java
Read guide →
Mid-levelAvailable

Authentication and Session System

Sign users in, keep sessions safe, and handle tokens across many services.

  • Backend
  • SaaS
  • Java
Read guide →
SeniorAvailable

Collaborative Document Editor

Let many people edit the same document at the same time without losing data.

  • Backend
  • FAANG
  • SaaS
Read guide →

Related case studies

Longer architecture write-ups already published on JavaThoughts.