System Design Interview Questions and How to Approach Them
System design interviews are open-ended. Interviewers want to see how you structure an ambiguous problem, make trade-offs and communicate. A reliable structure: clarify requirements, estimate scale, sketch a high-level design, go deeper on key components, then discuss bottlenecks and trade-offs.
1. Design a URL shortener.
Why interviewers ask this: It covers ID generation, storage, redirects and caching in a small, well-understood problem.
How to answer: Clarify scale and features (custom links, expiry, analytics), then cover key generation, a key-value store, caching of popular links and redirect status codes.
Example answer
I’d generate short keys from a counter encoded in base 62, store key-to-URL mappings in a key-value store, cache popular keys, and return a redirect. For analytics, I’d log clicks to a queue and process them separately so redirects stay fast.
2. Design a chat application.
Why interviewers ask this: It tests real-time communication, message storage and delivery guarantees.
How to answer: Discuss persistent connections, how messages are stored and ordered, presence, and delivery to offline users.
Example answer
Clients keep a persistent connection to chat servers. Messages are written to a store partitioned by conversation, pushed to online recipients, and delivered to offline users when they reconnect or by push notification.
3. Design a news feed.
Why interviewers ask this: It tests read-heavy design, ranking and fan-out trade-offs.
How to answer: Compare building feeds when posts are written with building them when they are read, and explain when you’d use each.
Example answer
For most users I’d precompute feeds when friends post. For accounts with millions of followers, I’d merge their posts in when a feed is read, to avoid writing to millions of feeds at once.
4. How would you design a rate limiter?
Why interviewers ask this: It checks your understanding of algorithms and distributed state.
How to answer: Describe an algorithm such as token bucket or sliding window, and where the counters are stored.
Example answer
I’d use a token bucket per user or API key, with counters in a fast shared store so all servers see the same limits, and return a clear error with a retry time when the limit is hit.
5. How do you scale a database?
Why interviewers ask this: Scaling data is often the hardest part of a system.
How to answer: Cover indexing and caching first, then read replicas, then partitioning, with the trade-offs of each.
Example answer
I’d start with query optimisation, indexes and caching. Next, read replicas for read-heavy traffic. If writes are the bottleneck, I’d partition the data by a key that spreads load evenly, accepting more complex cross-partition queries.
6. Design a file storage service.
Why interviewers ask this: It covers large objects, metadata, syncing and durability.
How to answer: Separate file content from metadata, split large files into chunks, and discuss replication.
Example answer
Files are split into chunks stored in object storage, with metadata (names, versions, owners) in a database. Clients upload only changed chunks, and objects are replicated across locations for durability.
7. How would you design a notification system?
Why interviewers ask this: It tests queues, retries and multiple delivery channels.
How to answer: Use a queue to decouple producers from senders, handle channel-specific delivery and retries, and respect user preferences.
Example answer
Services publish notification events to a queue. Workers check user preferences and send by email, push or SMS, retrying failed sends with backoff and recording delivery status.
8. What trade-offs did you make in your design?
Why interviewers ask this: Interviewers want you to show you understand there is no perfect design.
How to answer: Name specific trade-offs (consistency vs availability, cost vs latency) and why you chose as you did.
Example answer
I chose eventual consistency for the feed, so a new post might take a few seconds to appear, in exchange for much cheaper and faster reads.
Practice these questions out loud
Rehearse with an AI mock interview, then get real-time answer suggestions in the real thing with ApplyQuick Interview Copilot. Every plan starts with a 7-day free trial.
Sign up to our Newsletter
Stay up to date with latest news, announcement, and lots more.
Copyright © 2026, [email protected] | All Rights Reserved
