如果你正在准备 Tiktok SDE 的面试(VO + Onsite),一定要知道它的节奏和考察重点。相比传统大厂,Tiktok 的面试风格会更快、更直接,Coding 题难度往往中高偏上,常见的是 LeetCode 高频题的变形;BQ 部分则格外注重候选人的沟通逻辑和团队协作能力。很多同学一开始会被 Tiktok 的节奏打乱,觉得题还没完全进入状态就要快速切到下一个环节。
ProgramHelp最近经历TikTok的整场面试。我将在本文中详细说明我所经历的整个过程。
Tiktok VO 面试流程
Recruiter 电话沟通
TikTok的一名招聘人员通过领英联系了我,并安排了一次电话会议来向我介绍这个职位。和其他公司一样,只是对我目前的工作和职责进行了基本的介绍。
主要确认基本信息比如签证状态和入职时间,问了为什么想加入TikTok做SDE,简单聊了之前实习做的项目但没有深挖细节。
Tiktok VO 第一轮技术面试
这一轮是与Tiktok的软件工程师进行的,base 北京,TikTok直播团队的。
面试的前半部分一直在询问项目的情况。并且深入探讨了项目中的难点,以及试图解决的业务问题。她还涉及到了系统的QPS(每秒查询率)和规模,并对设计的某些部分提出了质疑。
我觉得面试官的问题似乎针对的是高QPS、大规模分布式系统,而我的项目甚至还没达到那个水平。顺便说一下,我发现很难用口头方式描述我的系统设计,我觉得如果能提供某种白板工具会更好。
面试的后半部分是编程环节。算法题是Anagram Substring Search,网上的原题。
几天后,招聘人员通知我说会进行第二轮技术面试。
Tiktok VO 第二轮技术面试
这一轮也是和Tiktok软件工程师进行的,Base 北京。
面试官先考代码,再对着简历深挖项目,全程追问“为什么这么做”
算法题1: Longest Substring WithoutRepeating Characters (LeetCode 3).
算法题2: Given a string s, find the length of the longest substring without repeating characters.
Tiktok VO 第三轮系统设计面试
题目:要设计短视频评论系统,刚开始没问日活数据就直接聊架构,结果后面扩容方案全错了,重新确认DAU后才定下方案:用分库分表扛读写压力,Redis做二级缓存防穿透,热评排序采用时间衰减加权算法,最后被挑战为什么选NoSQL而不是关系型数据库
在设计过程中,面临的主要挑战包括如何应对高并发的读写压力、防止缓存穿透、实现高效的热评排序,以及选择合适的数据库类型等。
Tiktok 面试技巧
Coding面试前把Top 50高频题的手写bug-free练熟比刷新题更重要,尤其要注意边界条件和口头跑用例,System Design开场必须问清三个关键数据:DAU、峰值QPS和存储量级,没这些数字架构设计会飘的,OOD题被加需求时先想设计模式再改代码,策略模式和观察者模式是最常用的。
如果你也马上要参加大厂 VO,可以试试 Programhelp 的面试助攻、面试辅助服务,让你不再孤军奋战。