Design a URL Shortener
bit.ly at scale: turn long URLs into short codes, redirect in milliseconds from anywhere, count the clicks.
2 questions on this site are reported in Adobe software engineer interviews. Each has a full reference design (requirements, back-of-envelope numbers, components, user flows and deep dives with interviewer follow-ups). Each one can be walked through turn by turn and then sat as a mock. Patterns covered: key-generation, caching, cdn, analytics, multiplayer, last-writer-wins, websockets, fractional-indexing, checkpoints.
Run an AI mock Adobe interview →One of these questions, run as a live round in that style, with a debrief at the end.
Attribution comes from public interview guides and candidate reports, not from Adobe. It indicates where a question has been asked, nothing more.
bit.ly at scale: turn long URLs into short codes, redirect in milliseconds from anywhere, count the clicks.
500 k design files open at once, some with 200 people: objects converge live, cursors stream, and 300 MB files open in seconds.
45–60 minutes, and loops often pair it with a separate low-level design round: classes, a database schema and code for something like a booking, checkout or elevator system. The high-level round is reported to sit close to Adobe products, such as storing and processing documents and media.
Leaving the data model to the end. Candidates in both kinds of design round report being asked for the database schema early, then for the queries or writes behind each use case, so settle the tables before going deep on classes or services.
From public interview guides and candidate reports, and Adobe’s own interview guidance where it publishes any. Not endorsed by Adobe. Formats change; treat it as a prior, not a promise.
Large-company loops run 45 to 60 minutes, expect numbers, and spend most of the time on deep dives. Walk through a question to see how a strong candidate paces the hour, sit the same question as a mock until you can produce the requirements, the estimates and the design without looking, then read the interview framework guide for how to structure the hour. The other questions on the site teach patterns that show up in Adobe interviews under different names.
Questions reported in Adobe system design interviews include URL Shortener and Figma. Between them they test key generation, caching, cdn, analytics, multiplayer and last writer wins. The reports come from public interview guides and candidate accounts, not from Adobe, so practise the patterns rather than memorising one list.
45–60 minutes, and loops often pair it with a separate low-level design round: classes, a database schema and code for something like a booking, checkout or elevator system. The high-level round is reported to sit close to Adobe products, such as storing and processing documents and media.
Reports say the Adobe round weighs 4 things. 1. Requirements first, then a high-level diagram and a database design. 2. Storage choices you can justify, starting with which database and why. 3. On low-level prompts: a schema and queries that serve each use case, and modular code. 4. How the system behaves under load and when a part fails. Leaving the data model to the end. Candidates in both kinds of design round report being asked for the database schema early, then for the queries or writes behind each use case, so settle the tables before going deep on classes or services.
Practise the questions reported there out loud, under a 45-minute clock: requirements with numbers first, then estimates, a high-level design, and deep dives into the two or three hardest parts. Start with URL Shortener: watch a strong candidate answer it turn by turn, then sit it yourself. Then cover the patterns the round leans on (key generation, caching, cdn and analytics) with one more question each.