Amazon · System design 1 of 1

How would you design a URL shortener?

Requirement clarification, scalable data modeling, API design, reliability, and trade-off communication.

Practice question: an editorial practice prompt, not a claim that Amazon asks this exact question. Interviews vary by role, level, team, and location.

How to approach this question

A focused three-stage walkthrough

  1. 1
    Scope

    Clarify scale, retention, custom aliases, and latency goals.

  2. 2
    Design

    Propose the API and data model before drawing components.

  3. 3
    Stress-test

    Address key generation, caching, hot links, replication, and failure modes.

System design framework

Make every architecture choice traceable

Scope

Clarify users, core operations, scale, latency, consistency, retention, and what is explicitly out of scope.

Design

Define APIs and data models, then connect components through the critical read and write paths.

Stress-test

Identify bottlenecks, failures, security concerns, and the trade-offs behind your scaling choices.

Self-review rubric

What a strong practice attempt includes

  • Requirements drive the architecture
  • APIs and data ownership are explicit
  • Scale and failure modes are addressed
  • Trade-offs are explained instead of hidden
Likely follow-ups

Answer the main question first, then take these on one at a time:

  • How would you prevent collisions?
  • What becomes the bottleneck?
  • How would analytics change the design?
Avoid these mistakes

Check your recording or written solution against this list:

  • Starting with architecture before requirements
  • Ignoring redirects as the critical read path
  • Naming tools without trade-offs
Sources and methodology

This guide combines general interview-practice patterns with the public hiring material below. The practice prompt and coaching are PiriPiri AI editorial content, not official Amazon questions or answers.

Official sources reviewed 20 September 2026.