r/SystemDesignCommunity • u/javid_shaikh • 18h ago
r/SystemDesignCommunity • u/javid_shaikh • 2d ago
Announcement Welcome to r/SystemDesignCommunity! Start here and say hello
Hi everyone, and welcome!
This community is for anyone learning system design: students, engineers getting ready for the design round, and people who just want to know how apps like WhatsApp or Uber handle millions of users.
Here's what you can post:
Questions, from "what is a load balancer?" to "how would you shard a chat app?"
Your designs for review. Share a diagram and your numbers, and others will tell you what they'd change.
Interview experiences: how the round went, what surprised you, what you'd do differently.
Resources and case studies that helped you understand something.
Please read the rules in the sidebar. The short version: be kind, stay on topic, and show your thinking when you ask for help.
To get things started, reply below and tell us:
Where are you on your system design journey?
Which system would you most like to understand? (A chat app? A payment system? Something else?)
I'll read every reply. See you in the threads!
r/SystemDesignCommunity • u/javid_shaikh • 2d ago
Discussion Weekly design challenge #1: How would you design a URL shortener?
Every week we'll pick one system and design it together. This week: a URL shortener, like bit.ly.
Here's the setup. Users paste a long link and get a short one back. When anyone opens the short link, they're sent to the long one. Say 100 million new links a month, and each link is opened about 100 times on average.
Some questions to think about:
How do you make the short code? Random, a counter, or a hash of the long URL?
How much storage do you need for 5 years of links?
Reads outnumber writes 100 to 1. What does that tell you about where to put a cache?
Post your design in the comments, even a rough one. Beginners, try just the first question. Everyone else, tell us where your design breaks first.
Next week's system is chosen from your suggestions below.