PracHub
QuestionsPremiumLearningGuidesCheatsheetNEWCoaches
|Home/System Design/NVIDIA

Design a URL shortening service

Last updated: Mar 29, 2026

Quick Overview

This question evaluates systems design skills including scalable architecture, data modeling, low-latency routing, availability, and operational concerns such as abuse prevention and analytics within the System Design domain.

  • hard
  • NVIDIA
  • System Design
  • Software Engineer

Design a URL shortening service

Company: NVIDIA

Role: Software Engineer

Category: System Design

Difficulty: hard

Interview Round: Onsite

Design a URL shortening service similar to TinyURL. ## Requirements ### Functional - Create a short URL for a given long URL. - Redirect: given a short code, redirect to the original long URL. - Custom aliases (optional): user can request a specific short code. - Expiration (optional): links may expire after a TTL. - Basic analytics (optional): clicks per link, referrer, country/device. ### Non-functional - Low latency redirects (p99 in tens of milliseconds). - High availability. - Prevent abuse (spam/malware, high-rate creation). - Handle large scale (assume billions of URLs, high read:write ratio). ## Deliverables - APIs, data model, and end-to-end flow. - Short code generation strategy. - Storage and caching design. - Scaling, partitioning, and reliability choices. - Handling collisions, deletions/expirations, and abuse.

Quick Answer: This question evaluates systems design skills including scalable architecture, data modeling, low-latency routing, availability, and operational concerns such as abuse prevention and analytics within the System Design domain.

Related Interview Questions

  • Design a bidirectional data sync dashboard - NVIDIA (medium)
  • Design first-time Kubernetes deployment in new cloud - NVIDIA (medium)
  • Design an artifact store on K8s and Cassandra - NVIDIA (hard)
  • Design signals across power and clock domains - NVIDIA (hard)
  • Design a distributed multi-user counter - NVIDIA (hard)
NVIDIA logo
NVIDIA
Feb 11, 2026, 12:00 AM
Software Engineer
Onsite
System Design
2
0
Loading...

Design a URL shortening service similar to TinyURL.

Requirements

Functional

  • Create a short URL for a given long URL.
  • Redirect: given a short code, redirect to the original long URL.
  • Custom aliases (optional): user can request a specific short code.
  • Expiration (optional): links may expire after a TTL.
  • Basic analytics (optional): clicks per link, referrer, country/device.

Non-functional

  • Low latency redirects (p99 in tens of milliseconds).
  • High availability.
  • Prevent abuse (spam/malware, high-rate creation).
  • Handle large scale (assume billions of URLs, high read:write ratio).

Deliverables

  • APIs, data model, and end-to-end flow.
  • Short code generation strategy.
  • Storage and caching design.
  • Scaling, partitioning, and reliability choices.
  • Handling collisions, deletions/expirations, and abuse.

Solution

Show

Comments (0)

Sign in to leave a comment

Loading comments...

Browse More Questions

More System Design•More NVIDIA•More Software Engineer•NVIDIA Software Engineer•NVIDIA System Design•Software Engineer System Design
PracHub

Master your tech interviews with 7,500+ real questions from top companies.

Product

  • Questions
  • Learning Tracks
  • Interview Guides
  • Resources
  • Premium
  • For Universities
  • Student Access

Browse

  • By Company
  • By Role
  • By Category
  • Topic Hubs
  • SQL Questions
  • Compare Platforms
  • Discord Community

Support

  • support@prachub.com
  • (916) 541-4762

Legal

  • Privacy Policy
  • Terms of Service
  • About Us

© 2026 PracHub. All rights reserved.