← Coupang Interview Insights

Coupang·Software Engineer·Onsite - System Design / Architecture·Senior

SeniorPrefer not to say
Apr 2026

Summary

Coupang system design round focused entirely on YouTube, specifically the video upload path. Pretty intense scope for a single session, they wanted real depth not just a surface walkthrough.

Questions Asked (6)

Q1

Design YouTube, with a focus on how large video files get uploaded reliably from client to server.

System DesignTechnical Trade-offsAPI & Integrations
Author's notes

This was the whole interview basically.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying requirements and scale (e.g., upload sizes, concurrency, reliability SLAs), then outline a high-level architecture for YouTube with a deep dive on the upload pipeline. Focus on chunked, resumable uploads with integrity checks, and discuss trade-offs between consistency, latency, and cost.

Pro tip: Emphasize idempotency and exactly-once semantics for chunk uploads to handle retries gracefully, and mention how you'd monitor and alert on upload success rates and latency percentiles in production.

1. Clarify Requirements and Scale

Ask about expected upload sizes, peak concurrent uploads, geographic distribution, and reliability targets to scope the design appropriately.

2. High-Level Architecture

Sketch the main components: client, API gateway, upload service, metadata service, object storage, transcoding pipeline, and CDN for playback.

3. Deep Dive: Reliable Upload Protocol

Design a chunked, resumable upload protocol with checksums, retries, and idempotent chunk IDs; discuss session management and progress tracking.

4. Data Integrity and Consistency

Explain how to verify chunk integrity (e.g., MD5/SHA), handle partial failures, and ensure the final video is assembled correctly and atomically.

5. Trade-offs and Scalability

Discuss trade-offs (e.g., chunk size vs. overhead, synchronous vs. asynchronous processing) and how to scale the upload service horizontally.

Key Points to Mention

  • Chunked and resumable uploads (e.g., tus protocol or custom implementation) to handle network interruptions.
  • Idempotent chunk uploads with unique chunk IDs to allow safe retries without duplication.
  • Integrity checks using checksums (MD5, SHA-256) per chunk and for the final file.
  • Use of object storage (e.g., S3) with multipart upload for durability and scalability.
  • Asynchronous processing pipeline for transcoding and metadata extraction after upload completes.
  • Monitoring and alerting on upload success rate, latency, and error rates to ensure reliability.

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.

Q2

Walk through the post-upload processing pipeline, including transcoding to multiple resolutions and thumbnail generation.

System DesignTechnical Trade-offs
Author's notes

Went okay.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by outlining the high-level pipeline stages from upload to final storage, then dive into the transcoding and thumbnail generation components, emphasizing scalability, fault tolerance, and trade-offs. Use a concrete example like a video upload to illustrate the flow and justify design decisions.

Pro tip: Highlight how you would handle failures and retries at each stage, and mention cost optimization strategies like spot instances for transcoding, as this shows production maturity.

1. Ingestion and Validation

Describe how the uploaded file is received (e.g., via API gateway or direct upload to object storage), validated for format and size, and metadata is extracted.

2. Job Scheduling and Queuing

Explain how a message queue (e.g., SQS, Kafka) decouples ingestion from processing, and how jobs are prioritized and distributed to workers.

3. Transcoding to Multiple Resolutions

Detail the transcoding process: splitting the video into segments, encoding to various resolutions/bitrates (e.g., HLS/DASH), and using parallel workers for efficiency.

4. Thumbnail Generation

Describe how thumbnails are generated (e.g., extracting frames at intervals, selecting the best frame) and stored alongside the transcoded outputs.

5. Storage, CDN, and Cleanup

Explain how outputs are stored in object storage, distributed via CDN, and how temporary files are cleaned up; also mention updating the database with final URLs.

Key Points to Mention

  • Use of message queues for decoupling and scalability
  • Parallel processing and worker pools for transcoding
  • Adaptive bitrate streaming formats (HLS/DASH)
  • Thumbnail generation strategies (frame extraction, sprite sheets)
  • Fault tolerance: retries, dead-letter queues, idempotency
  • Cost optimization: spot instances, storage lifecycle policies

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.

Q3

How would you handle metadata storage for videos at YouTube's scale?

System DesignData Modeling
Author's notes

Talked through separating hot metadata like title, view count, status from cold stuff.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying the scale and access patterns (e.g., billions of videos, high read/write throughput, low-latency lookups). Then propose a sharded, distributed database solution with a well-defined schema, caching, and replication strategy, while addressing trade-offs between consistency and availability.

Pro tip: Emphasize that metadata is typically read-heavy and can tolerate eventual consistency, so you can prioritize availability and partition tolerance. Also mention that you would decouple metadata storage from video content storage to allow independent scaling.

1. Clarify Requirements and Scale

Ask about the expected number of videos, read/write ratio, latency requirements, and consistency needs. This ensures your design aligns with actual constraints.

2. Choose a Data Store

Select a distributed NoSQL database (e.g., Cassandra, DynamoDB) or a sharded relational database, justifying based on scalability, schema flexibility, and query patterns.

3. Design the Schema and Sharding Key

Define a schema that supports efficient lookups (e.g., by video ID, user ID) and choose a sharding key (e.g., video ID) to distribute load evenly and avoid hotspots.

4. Address Scalability and Performance

Implement caching (e.g., Redis) for hot metadata, use replication for fault tolerance, and consider denormalization for read-heavy workloads.

5. Discuss Trade-offs and Failure Handling

Explain how you handle consistency (e.g., eventual vs. strong), partition tolerance, and failure recovery (e.g., replication, backups).

Key Points to Mention

  • Sharding and partitioning strategies to distribute data across nodes
  • Use of NoSQL databases like Cassandra or DynamoDB for horizontal scalability
  • Caching layer (e.g., Redis) to reduce database load and latency
  • Replication and consistency models (e.g., eventual consistency for availability)
  • Denormalization and indexing for efficient query patterns
  • Separation of metadata storage from video content storage for independent scaling

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.

Q4

How does CDN distribution work for video content, and what are the tradeoffs in your design?

System DesignTechnical Trade-offs
Author's notes

I covered edge caching, cache keys by resolution and region, and cache invalidation on re-uploads.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by explaining the core purpose of a CDN for video: reducing latency and offloading origin by caching content at edge locations. Then walk through the end-to-end flow from client request to playback, highlighting key components like DNS steering, edge caching, and origin shield. Finally, discuss tradeoffs such as cost, cache hit ratio, consistency, and complexity, tying them to Coupang's scale and user expectations.

Pro tip: Quantify tradeoffs with metrics like cache hit ratio, egress cost per GB, and startup latency to show you think in terms of business impact, not just technology. Also mention how Coupang's global user base and peak traffic events (e.g., Black Friday) influence CDN design choices.

1. Explain CDN basics for video

Describe how a CDN caches video segments at edge servers close to users, reducing latency and origin load. Mention protocols like HLS/DASH and the role of DNS or anycast routing.

2. Detail the request flow

Walk through a typical request: client resolves CDN edge via DNS, edge checks cache; on miss, it fetches from origin or a mid-tier cache (origin shield). Explain how segments are cached with TTLs and how invalidation works.

3. Discuss key design decisions

Cover choices like push vs. pull CDN, cache hierarchy, segment duration, and multi-CDN strategy. Explain how these affect performance, cost, and reliability.

4. Analyze tradeoffs

Compare tradeoffs: cost vs. performance (e.g., more edge locations increase cost but reduce latency), cache hit ratio vs. freshness, and complexity vs. resilience. Relate to Coupang's scale and user expectations.

5. Conclude with recommendations

Summarize how you would balance tradeoffs for Coupang, considering factors like peak traffic, global reach, and cost efficiency. Mention monitoring and iterative optimization.

Key Points to Mention

  • Cache hit ratio and its impact on origin load and cost
  • Latency reduction through edge caching and geographic distribution
  • Cost implications: egress fees, storage, and multi-CDN contracts
  • Consistency and invalidation strategies for video segments
  • Scalability during peak events (e.g., live streaming, sales)
  • Security considerations: token authentication, DRM, and DDoS protection

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.

Q5

How would you design retry and failure handling across the upload and processing pipeline?

System DesignTechnical Trade-offs
Author's notes

Covered exponential backoff, dead letter queues for jobs that keep failing, and alerting on repeated failures.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by clarifying the pipeline stages and failure modes, then propose a layered retry strategy with idempotency and backoff, and finally discuss monitoring, dead-letter queues, and trade-offs between consistency and availability. Emphasize how you would handle partial failures and ensure data integrity.

Pro tip: Demonstrate maturity by acknowledging that retries can amplify failures and that idempotency is non-negotiable; mention circuit breakers and the importance of observability to detect when retries are ineffective.

1. Clarify requirements and failure modes

Ask about the pipeline stages (upload, processing), expected failure types (network, service, data), and SLAs. Identify critical paths and data consistency needs.

2. Design retry strategy

Propose retries with exponential backoff and jitter, limited attempts, and idempotent operations. Consider synchronous vs asynchronous retries and where to place them (client, service, queue).

3. Handle persistent failures

After retries are exhausted, route to a dead-letter queue for manual inspection or automated recovery. Implement alerting and dashboards to track failure rates.

4. Ensure idempotency and exactly-once semantics

Use unique request IDs, deduplication, and transactional writes to avoid duplicate processing. Discuss trade-offs between at-least-once and exactly-once delivery.

5. Discuss trade-offs and monitoring

Balance retry aggressiveness with system load, consider circuit breakers to prevent cascading failures, and emphasize observability for debugging and capacity planning.

Key Points to Mention

  • Idempotency keys and deduplication to handle duplicate retries
  • Exponential backoff with jitter to avoid thundering herd
  • Dead-letter queues for poison messages and manual intervention
  • Circuit breakers to prevent cascading failures
  • Monitoring and alerting on retry rates and failure metrics
  • Trade-offs between consistency, availability, and latency

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.

Q6

What changes when files are multi-gigabyte in size? How does your design hold up?

System DesignTechnical Trade-offsAlgorithms & Data Structures
Author's notes

This came at the end and I think I handled it well relative to the rest of the interview.

Create a free account to read the full note

AI HintsAI Generated

Suggested Approach

Start by acknowledging that multi-gigabyte files break assumptions about memory, I/O, and latency, then systematically walk through the design implications at each layer (storage, processing, transfer). Emphasize streaming, chunking, and parallelism as core strategies, and quantify trade-offs with concrete numbers (e.g., 10 GB file, 1 GB/s disk, 100 MB/s network).

Pro tip: Proactively mention that you would measure and monitor I/O throughput and memory pressure in production, and that you would design for graceful degradation (e.g., backpressure) rather than assuming infinite resources.

1. Identify the bottlenecks

Analyze how multi-gigabyte files stress memory (can't load fully), disk I/O (sequential vs random), network bandwidth (transfer time), and CPU (parsing/processing).

2. Redesign for streaming and chunking

Replace whole-file operations with streaming APIs and chunk-based processing to keep memory bounded and enable incremental progress.

3. Leverage parallelism and distribution

Split the file into chunks that can be processed in parallel across threads, processes, or machines, and consider distributed storage/compute if needed.

4. Address failure and consistency

Handle partial failures, retries, and idempotency; ensure that chunk processing is fault-tolerant and that the final result is consistent.

5. Validate with metrics and trade-offs

Quantify performance (throughput, latency, memory) and discuss trade-offs (e.g., chunk size vs overhead, compression vs CPU).

Key Points to Mention

  • Streaming and chunking to avoid loading entire file into memory
  • Parallel processing and distributed computing (e.g., MapReduce, Spark)
  • I/O optimization: sequential reads, buffering, and avoiding random access
  • Backpressure and flow control to prevent resource exhaustion
  • Fault tolerance: retries, idempotency, and checkpointing
  • Trade-offs: chunk size, compression, and network vs disk costs

AI-generated suggestions, not part of the candidate's original notes. May be inaccurate — verify before relying on them.