What TikTok Tests in System Design
- See why design sets your TikTok level from mid-level up, and why senior loops often carry two design rounds
- Separate the published Monolith paper from video and live-streaming internals built from standard large-scale design
- Meet the round's common shapes and the five worked designs, starting with the For You feed loop
System design carries real weight in the TikTok loop, and unlike coding it tends to decide your level rather than the yes-or-no. The round runs 45 to 60 minutes and shows up from mid-level (2-1) upward, with more of it as you go senior. Some senior and lead loops report two design rounds instead of one: a product-space prompt in one, and a deep dive into a system from your own resume in the other. Remember the whole loop is ByteDance's, so recruiters, levels, and the products in the prompt all sit under ByteDance even when the role says TikTok. Coding still gates the hire because you have to write running, tested code live. Design sets the rung. That is where a senior offer is won.
The round, and which prompt you get
Two flavors of design round show up in candidate reports, and you can get either or both. The first is a product-space prompt in TikTok's own surface: design TikTok, design the For You feed, design real-time messaging, design the upload and delivery pipeline, design TikTok LIVE. The second is a project deep dive. The interviewer takes a system off your resume and pushes on scale, bottlenecks, and trade-offs until it either holds up at TikTok's numbers or does not. Prep both. The grid below is the shape of the round. ByteDance publishes no question list, so read it as a steer toward where prep pays, not a fixed bank.
- One round, sometimes two: 45 to 60 min. Expected from mid-level (2-1) up, weighted more heavily at senior (2-2). Several senior and lead loops report two design rounds, sometimes labeled cross-functional: one product prompt, one project deep dive. New-grad and frontend loops may fold design into a knowledge round instead.
- Product prompt: TikTok's own surface. Design TikTok is the signature, usually scoped to the For You feed plus video serving. Real-time messaging and an online-offline presence provider are the most-attested prompts after it. Upload and delivery, TikTok LIVE, notifications, and ad ranking round out the set.
- Project deep dive: Your own system at scale. Not a design-X prompt at all. The interviewer drives into a system you built and asks you to defend it. One report described a rejection after a candidate answered with a 50-per-second design when the follow-up wanted millions per second. Bring a system you can push to TikTok scale.
- Team-dependent: recsys, T&S, ads, infra. Hiring is decentralized, so the prompt is flavored by the org you interview with. The recommendation org leans into the feed loop, ads teams into auctions, trust-and-safety toward practical design. Confirm your team and its likely surface on the recruiter call.
Two habits carry across both flavors. Interviewers ask for large consumer-scale reasoning, so a single-box answer that never reaches sharding, fan-out, or failure will stall. And because the same senior deciders who set the bar often sit in China and hold the real call, the round can be blunt about whether your design survives at scale. That project-deep-dive rejection is the tell: the number that matters is the one you can defend, not the one that sounds impressive.
What is published, and what is reconstructed
Honesty up front, because it changes how you use this section. TikTok's feed is unusually well documented for a recsys, and the rest of the stack is not. ByteDance published Monolith, its real-time recommendation training and serving system, as an arXiv paper (2209.07663) and open-sourced the framework. That gives you real, citable design to reason from. The table is collisionless, built on Cuckoo hashing, with frequency filtering and expirable embeddings that keep it affordable. A training parameter server and a serving parameter server sync sparse embeddings about once a minute. And the design trades some reliability for freshness on purpose.
The rest of the stack is different. The upload and transcoding pipeline, the CDN delivery path, TikTok LIVE, and the notification fan-out are not published. ByteDance has not published deep dives on those, so this section builds them as the standard large-scale user-generated-video design at TikTok's scale, with the TikTok-specific couplings called out. Treat those as well-founded engineering, not as a map of ByteDance's servers.
The shapes the round lands on
Group the reported prompts by the underlying shape rather than the wording, and a small set covers almost everything. The chart orders them by how often candidates on the relevant track meet each one.
Each shape forces its own hard problem. The recommendation feed is about the freshness loop and the multi-objective ranking that follows it. Real-time messaging and presence is about long-lived connections, an offline message store, and status that expires when a heartbeat stops. It has no standalone lesson here. The notification design works the same long-lived-connection and per-room fan-out mechanics, so use it as your worked reference. Video upload and delivery is about chunked resumable uploads over flaky mobile networks and a transcode fan-out that races to make a clip watchable. Live streaming pairs a low-latency video path with a chat and gifting path that has to stay correct about money. Notifications is about fan-out that does not collapse under a creator with fifty million followers. Ad ranking is a targeting-to-auction funnel on the same sparse-embedding machinery as the feed. Same machine, different objective.
What the round rewards
Five moves carry any of these prompts without thrashing. Pin the objective and the number you are optimizing first. For the feed that is watch-time and feed latency under a couple hundred milliseconds. For upload it is time from post to watchable, and for LIVE it is glass-to-glass delay. Lay the request or data path end to end before you zoom in, so the interviewer sees the whole machine. Name the real bottleneck out loud. Each shape has one the generic version glosses over: the freshness sync for the feed, the transcode-and-moderate race for upload, the money path for LIVE, celebrity fan-out for notifications. Then tell the scaling and failure story, and close on cost. Go deep on one stage and keep the rest brisk. The back half is what separates the strong answers.
Below is the reference loop to carry for any feed answer. It is drawn from Monolith's published design, and the same instinct, collect signals, learn fast, serve fresh, runs through most TikTok recsys questions.
Read the loop in chips. A Viewer App pushes engagement into an Event Log, a Joiner + Sampling step attaches each label to the features that served it, and the Training Param Server updates the Cuckoo embedding table. Fresh parameters reach the Serving Param Server about once a minute, and a feed request runs through Candidate Generation, Multi-stage Ranking, and Diversity Re-rank into a Prefetched Feed. The instinct to carry: freshness is the wedge, watch-time outranks likes, and the sparse-versus-dense sync cadence is the detail that separates a deep answer.
A TikTok answer
- Opens the feed with the real-time online-training loop and names the freshness-over-reliability trade-off
- Treats watch-time and completion as the ranking signal that matters, ahead of likes and follows
- Couples a new upload to the feed: transcoded, moderated, and embedded fast enough to test on small audiences within minutes
- Names the money path in LIVE and keeps gifting exactly-once while chat and danmaku can be lossy
- Defends a system from your own resume at millions-per-second, not the number that merely sounds big
A generic SD answer
- Draws a static two-tower model refreshed every few hours and calls it the TikTok feed
- Ranks purely on likes and follows and never mentions watch-time or completion
- Fans out on write for a fifty-million-follower creator and melts the notification store
- Treats live chat and paid gifting with one consistency model instead of two
- Claims ByteDance production does exactly X instead of reasoning from the published Monolith design
The worked designs
Five designs follow, one per distinct shape, ordered so the signature comes first. Start with the For You feed: it is the fullest version of the loop above and the design no other guide in this catalog teaches the same way.
Design the For You Feed
The flagship. The real-time online-training loop from Monolith, built on a collisionless Cuckoo embedding table with frequency filtering and expirable entries. Training and serving parameter servers sync sparse embeddings minute by minute, then a request runs candidate generation into multi-stage multi-objective ranking into diversity re-rank, ending at a prefetched feed. Watch-time dominates, and freshness is traded against reliability on purpose.
Design Short-Video Upload & Delivery
Chunked resumable upload over flaky mobile networks lands the raw file in object storage. A distributed transcode fan-out builds an adaptive-bitrate ladder plus thumbnails. A moderation gate clears the video before it is eligible for the feed, then global CDN delivery serves it. The TikTok twist is the coupling: a clip has to be transcoded, moderated, and embedded fast enough to enter the freshness loop within minutes.
Design TikTok LIVE
TikTok LIVE, the real-time broadcast product where a creator streams and viewers send chat and paid gifts. RTMP ingest feeds a low-latency delivery path (LL-HLS or WebRTC). A WebSocket and pub/sub backbone fans chat, danmaku, and likes to a room of millions. A gifting money path runs through an idempotent ledger. Two consistency regimes in one design: chat can be lossy, gifting cannot.
Design a Notification System
Push and re-engagement at celebrity scale. A hybrid fan-out writes per-user for normal accounts but materializes at read time for fifty-million-follower creators. Layer on relevance and volume control, delivery through APNs and FCM at millions concurrent, and a separate machine-timed path that pulls dormant users back. The long-lived connections and per-room fan-out here also cover the messaging and presence shape.
Design Ad Ranking & Delivery
For ads-org candidates. A targeting and eligibility filter feeds candidate generation. Predicted click-through and conversion come from deep multi-task models on the same sparse-embedding infrastructure as the feed. Then an auction blends bid and predicted value with budget pacing and business rules. The funnel is the confirmed part; the auction pricing math is standard ad design layered on top.
Each design assumes the fundamentals from the System Design course: the scaling playbook for read and write paths, and the toolbox for when to reach for a log, a cache, a queue, or a CDN. These pages stay on the TikTok-flavored design and leave the general mechanics to those.
Key Takeaways
- ✓System design runs 45 to 60 minutes, shows up from mid-level (2-1) up, and decides your level more than the hire. Senior and lead loops often carry two design rounds: one product prompt and one deep dive into a system from your resume.
- ✓The signature is the real-time recommendation loop behind the For You feed. Open with the freshness loop, engagement to log to joiner to training server to minute-level serving sync, not a static two-tower model, or the answer reads like Pinterest or Snap.
- ✓ByteDance published Monolith (arXiv 2209.07663) but not the upload, delivery, or LIVE internals. Ground the feed in the published ideas, and treat the video stack as standard large-scale design at TikTok scale with the couplings called out.
- ✓Run the five moves: objective and number, end-to-end path, the real bottleneck, scaling and failure, then cost, and go deep on one stage. Watch-time outranks likes, and be ready to defend your own system at millions-per-second.
TikTok interview guideKnow what TikTok asks before you walk in.
20 coding · 5 system design · 18 behavioral questions
Get their questions first.
InterviewLegend is independent and not affiliated with or endorsed by any company it covers.