一句话摘要:TikTok 2026 SDE NG = OA(CodeSignal 4 题)+ Phone Screen(1 题)+ 4 轮 Onsite(2 Coding + 1 SD + 1 BQ/主管),算法风格偏 LeetCode Hot 100,但难度通常 Medium,效率才是关键。
TikTok(字节跳动美国分部)是近两年 NG 招聘最活跃的公司之一,base 多在 Mountain View / San Jose / Seattle,整体面试节奏快、放 offer 快、薪资也颇有竞争力。这篇文章按一亩三分地 2026 最新发帖整理 TikTok SDE NG 面经全流程。
一、TikTok NG 招聘流程
| 阶段 | 形式 | 时长 | 主要内容 |
|---|---|---|---|
| Resume Screen | — | 1 周 | 简历筛选 |
| OA | CodeSignal | 70 min | 4 道编程题 |
| Phone Screen | Lark 视频 | 60 min | 1 道 Coding + 简单 BQ |
| Onsite Round 1 | Lark 视频 | 60 min | Coding(DS + 算法) |
| Onsite Round 2 | Lark 视频 | 60 min | Coding(DP / 图) |
| Onsite Round 3 | Lark 视频 | 60 min | System Design(NG 简版) |
| Onsite Round 4 | Lark 视频 | 45 min | Hiring Manager + BQ |
| Offer Call | 电话 | 30 min | HR 谈薪 |
节奏:从 OA 到 Offer 通常 3-5 周,比 Meta / Google 快 2-3 倍。
二、OA 阶段:CodeSignal 4 题真题
题 1:分数等式(基于 LC 399)
题面:给 a/b = k,求 c/d 的值。
思路:把每个变量当作图中节点,建带权图,BFS / DFS 求路径乘积。
from collections import defaultdict, deque
def calcEquation(equations, values, queries):
g = defaultdict(dict)
for (a, b), v in zip(equations, values):
g[a][b] = v
g[b][a] = 1 / v
def bfs(s, t):
if s not in g or t not in g:
return -1.0
q = deque([(s, 1.0)])
seen = {s}
while q:
x, val = q.popleft()
if x == t: return val
for y, w in g[x].items():
if y not in seen:
seen.add(y)
q.append((y, val * w))
return -1.0
return [bfs(s, t) for s, t in queries]
题 2:Rating with Memory Prefix(评分前缀和)
题面:流式输入用户评分,每次输出过去 K 个评分的滑动平均。
思路:deque + 滑动求和(避免每次重算)。
题 3:Top K Frequent Hashtags(双堆)
题面:维护 hashtag 出现频次的 top K,支持 add(tag) 与 query(k)。
思路:双 HashMap + 桶排序(lazy delete)。
题 4:Random Set 设计
题面:设计支持 O(1) insert / remove / getRandom 的集合(LC 380 改编)。
思路:HashMap + 数组(关键是 remove 时把数组末尾元素交换到删除位置)。
三、Phone Screen:1 道 LeetCode Medium
最常见题型:
| 类型 | LeetCode 类比 | 频次 |
|---|---|---|
| 双指针 + 滑动窗口 | LC 3 / 76 | ⭐⭐⭐⭐⭐ |
| 二叉树遍历 | LC 102 / 124 | ⭐⭐⭐⭐ |
| 图遍历 | LC 200 / 207 | ⭐⭐⭐ |
| 字符串匹配 | LC 28 / 49 | ⭐⭐⭐ |
面试官追问(常见):
- 如果数组很大不能放内存怎么办?
- 如果是流式数据呢?
- 时间复杂度能否再优化?
四、Onsite 4 轮详解
Round 1 - Coding(数组 + 双指针)
真题示例:在数组中找到所有满足 arr[i] + arr[j] + arr[k] == target 的三元组(LC 15 改)。
追问:如果数组有 10 亿个数?→ External Sort + 双指针。
Round 2 - Coding(DP / 图)
真题示例:给一个有向带权图,求从 source 到 dest 的最多 K 步路径中的最低成本(LC 787 Cheapest Flights Within K Stops)。
思路:Bellman-Ford 变体或 Dijkstra + 状态扩展(节点 + 已用步数)。
Round 3 - System Design(NG 简版)
常见题目:
- 设计 TikTok Feed Recommendation
- 设计 Like / Follow 服务
- 设计 短视频上传与转码 pipeline
对 NG 的期望:
- 能画出 high-level 架构(API Gateway、Service、DB、Cache)
- 能识别 bottleneck(Hot key、Read-heavy)
- 能给出基本量化(QPS、Storage、Cache hit rate)
Tip:NG SD 不要求深入到 Paxos / Raft,但必须主动澄清 scope。
Round 4 - Hiring Manager + BQ
高频 BQ 题:
| 题目 | 期望要点 |
|---|---|
| Tell me about yourself | 30 秒电梯演讲 |
| Why TikTok? | 提及 ByteDance 算法平台、推荐系统 |
| 一个最骄傲的项目 | 量化收益(QPS、用户、收入) |
| 一次失败 | 强调反思与成长 |
| 一次冲突 | 用 STAR 结构 |
TikTok 价值观:
- ByteStyle: Always Day 1
- Be Candid and Clear
- Be Open and Humble
- Champion Diversity and Inclusion
五、TikTok NG 薪资 Range(2026 年)
| 城市 | Base | Stock (4yr, 美股 ADR) | Sign-on | Total / Yr |
|---|---|---|---|---|
| Mountain View | $155-175K | $80-120K | $20K | $200-225K |
| San Jose | $150-170K | $80-120K | $20K | $195-220K |
| Seattle | $145-165K | $70-110K | $15K | $185-210K |
注意:TikTok 美国分部 stock 一般是字节美股期权(折现到 cash),具体 vesting 与上市预期会影响实际价值。
六、FAQ:TikTok NG 面试高频问题
Q1:TikTok 面试是中文还是英文?
双语都可以。面试官通常会问"prefer Chinese or English"。建议根据自己英文表达水平选择。
Q2:TikTok 面试用 Lark 还是 CoderPad?
OA 用 CodeSignal,Onsite 用 Lark Meeting + 内嵌代码框(类似 CoderPad 但功能略简)。
Q3:TikTok H1B 抽签时机?
通常面试结束后会确认 visa 状态,3-4 月新一轮 H1B 抽签。如果未抽中,可以转 OPT/STEM OPT 继续工作。
Q4:TikTok 面试是否反对 LeetCode 原题?
不反对,但面试官会改输入输出格式或增加 follow-up。
Q5:TikTok 拒信后多久能再投?
3-6 个月。建议明显刷题进步后再投。
Q6:TikTok NG 是否适合非 CS 背景?
适合。TikTok 接受 ECE / Math / Physics 等专业,但项目经验中要有 1-2 个软件项目。
七、备考时间表(4 周冲刺)
| 周次 | 重点 | 每日产出 |
|---|---|---|
| Week 1 | LC Hot 100 + TikTok 公司题 | 5-7 题 |
| Week 2 | DP + 图 + 设计题 | 5 题 + 1 题 SD |
| Week 3 | 系统设计 + BQ 故事 | 3 题 SD + 8 个 STAR |
| Week 4 | 模拟全流程 + 真题 | 1 套全模拟 |
八、外链资源
🚀 需要 TikTok OA / VO 辅助?
如果你正在准备 TikTok、字节跳动、Lemon8、CapCut 等团队的 NG / 实习面试,欢迎交流:可提供 CodeSignal 真题模拟、Onsite Coding 真题清单、System Design 与 BQ 故事打磨。
👉 立即添加微信:Coding0201,获取真题与一对一备考方案
联系方式
- 微信:Coding0201
- Email:[email protected]
- Telegram:@OAVOProxy