What to Expect in the Shopee System Design Interview
Expect design questions inside the technical rounds, not always in a round of their own. Candidates report sessions that mix a design question with fundamentals and a coding problem. One candidate for an SDE-2 role reports a 90 minute round with three parts: designing an authentication service, then how HTTP and TCP work, then a coding problem.
Reported design topics include caching and Redis, database indexing, transaction isolation levels, and how microservices share data. The questions match Shopee's own business: a marketplace, a wallet, a delivery network, and sale campaigns on fixed dates.
The Question Types
Authentication and accounts. One reported question asked for the design of an authentication service, including how passwords are stored, so expect follow-up questions on hashing, session handling, and token expiry. Hashing means storing a one-way transformation of a password instead of the password itself.
High traffic read paths. Product pages, search, and category listings receive most of the traffic, so expect questions about caching layers, cache invalidation, and read replicas. A read replica is a copy of the database that serves reads only.
Ordering and stock during a sale. Shopee runs scheduled sale events on dates such as 9.9 and 11.11, which means buyers place most orders for popular items within minutes. Candidates report rate limiting questions, and rate limiting is the direct tool for this problem.
Payments and wallets. ShopeePay is Shopee's digital wallet, so money transfers need exactly one effect per request and a clear record afterward. Expect questions about idempotency, which means a repeated request produces one effect rather than two.
Logistics and tracking. SPX Express is Shopee's own delivery network, and parcel tracking combines heavy writes with many readers per parcel, so it is fair material for a design question.
Microservices and consistency. Candidates report direct questions about how data is shared between services, so expect to discuss events, queues, and eventual consistency. Eventual consistency means every copy agrees after a delay rather than immediately.
What the Interviewer Grades
Fundamentals are graded alongside the diagram, and reported questioning covers isolation levels, indexing, and network protocols. A diagram without mechanism fails those follow-up questions.
State the requirements first, including the peak load and the failure cases, and say your trade-offs out loud. Connect each choice to a cost the business pays: a wrong stock count becomes a canceled order and a refund.
A Walkthrough: Checkout for a Limited Stock Sale
One practice question is worth rehearsing, because Shopee publishes its sale dates in advance. This is a practice problem built from the reported topics, not a question Shopee is confirmed to ask. The goal: sell exactly 10,000 units of one item to buyers who all order within two minutes.
1. Requirements (5 minutes). No overselling, a reservation answer in under 200 milliseconds, and normal shopping that keeps working throughout the sale.
2. Reject excess load early. Rate limit per account and per device before any service does real work. Return a clear rejection quickly instead of putting every caller in a queue.
3. Hold the count in memory. Keep the remaining stock in an in-memory store such as Redis, and decrement it atomically. Atomic means one decrement cannot interleave with another. The database is not used for this check.
4. Split the counter. A single counter for a popular item becomes one overloaded shard, which engineers call a hot key, so split the stock across several counters and route callers between them.
5. Make the order asynchronous. A successful decrement writes a reservation event to a queue, and an order service reads the event, writes the order, and starts payment. The buyer sees a pending order immediately.
6. Expire and return stock. Unpaid reservations expire after a set window, and the counter is increased again. Without this step, stock stays reserved in abandoned carts and is never sold.
7. Reconcile. After the sale, compare the counters against the orders in the database, and report the difference. An interviewer will ask how you know the result was correct.
Common Mistakes in This Round
- A diagram with no mechanism. Shopee interviewers ask how indexes, locks, and protocols actually work, so name the data structure behind each box you draw.
- Putting the stock check in the database. A row lock on one popular item forces every buyer to wait for the previous one. Say why you moved the count out of the database.
- Forgetting expiry. Reservations that are never released are a real production failure, and interviewers look for that step.
- Ignoring the normal traffic. A sale must not break regular browsing. Isolate the sale path and say how.
- Assuming one region. Shopee serves many markets with different conditions. Say where the data is stored and why.
How to Prepare
- Learn the building blocks. Grokking the System Design Interview covers caching, queues, and sharding, which every answer above uses.
- Study the harder cases. Advanced System Design Interview, Volume II helps with replication, isolation, and failure handling.
- Rehearse the walkthrough. Practice the seven steps above out loud in under 40 minutes.
- See the whole loop. These questions sit inside the Shopee interview process, next to the motivation question and the reported waiting times.

GET YOUR FREE
Coding Questions Catalog

$99

$197

$72