PracHub
QuestionsPremiumLearningGuidesInterview PrepNEWCoaches
|Home/System Design/TikTok

Design a high-concurrency ticketing system

Last updated: Mar 29, 2026

Quick Overview

This question evaluates a candidate's ability to design scalable, high-concurrency backend systems with strict inventory correctness, fairness, reservation/payment workflows, and operational concerns such as caching, message queues, consistency models, capacity planning, and load testing in the System Design domain.

  • hard
  • TikTok
  • System Design
  • Software Engineer

Design a high-concurrency ticketing system

Company: TikTok

Role: Software Engineer

Category: System Design

Difficulty: hard

Interview Round: Technical Screen

Design a high-concurrency ticketing/flash-sale system for limited seats: Handle millions of concurrent purchase attempts, ensure strict inventory correctness with no oversell, provide fairness (e.g., FIFO queue or lottery), implement anti-bot protections, rate limiting, and queuing with backpressure, support short-term reservations with payment timeouts, ensure idempotent order creation and safe retries, shard hot items, and expose real-time availability. Describe APIs, data model, read/write paths, cache/DB choices, message queues, consistency model and reconciliation, failure handling, capacity planning, and load testing.

Quick Answer: This question evaluates a candidate's ability to design scalable, high-concurrency backend systems with strict inventory correctness, fairness, reservation/payment workflows, and operational concerns such as caching, message queues, consistency models, capacity planning, and load testing in the System Design domain.

Related Interview Questions

  • Choose tools for scalable distributed systems - TikTok (medium)
  • Design a distributed key-value store - TikTok (medium)
  • Design a content moderation system - TikTok (medium)
  • Design low-latency large-scale hotel booking system - TikTok (medium)
  • Explain SRE architecture and troubleshooting scenarios - TikTok (hard)
TikTok logo
TikTok
Sep 6, 2025, 12:00 AM
Software Engineer
Technical Screen
System Design
3
0

Design a High-Concurrency Ticketing/Flash-Sale System (Limited Seats)

Context

You are designing the backend for a limited-seat flash sale (e.g., concert tickets). Millions of users may attempt to purchase simultaneously. The system must maintain strict correctness (no oversell), fairness, and resilience under extreme load, while supporting short reservations and payments.

Requirements

  1. Scale and Correctness
    • Handle millions of concurrent purchase attempts.
    • No oversell; strict inventory correctness at seat or SKU level.
    • Real-time availability exposure.
  2. Fairness and Backpressure
    • Provide fairness (FIFO queue or lottery).
    • Queueing with backpressure and rate limiting.
  3. Purchase Flow
    • Short-term reservations with payment timeouts.
    • Idempotent order creation and safe retries.
  4. Reliability and Performance
    • Anti-bot protections.
    • Shard hot items.
    • Describe read/write paths, caches/DBs, message queues.
    • Consistency model and reconciliation.
    • Failure handling.
    • Capacity planning and load testing.

Deliverables

Describe the following:

  • APIs (endpoints, request/response sketches).
  • Data model (core entities and keys).
  • Read and write paths.
  • Cache/DB choices and where to use them.
  • Message queues and their topics/uses.
  • Consistency model, reconciliation strategy.
  • Failure handling and fallbacks.
  • Capacity planning assumptions and calculations.
  • Load testing methodology and SLOs.

Solution

Show

Comments (0)

Sign in to leave a comment

Loading comments...

Browse More Questions

More System Design•More TikTok•More Software Engineer•TikTok Software Engineer•TikTok 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.