TikTok Machine Learning Engineer 的面试整体比较综合,核心涵盖 Coding、ML Fundamentals、项目 Deep Dive 和 ML System Design。对于 Recommendation、Ads、Search 等核心算法方向,还会关注大规模机器学习系统的落地能力。注意不要满脑子都是 LLM,传统的 ML 也会问到。
面试流程通常是 Recruiter Screen → Virtual Onsite → Hiring Manager。同一轮里可能先聊十几分钟项目,再问 ML Theory,最后直接做一道 LeetCode。不要默认这一轮只考 ML 或只考 Coding。
Coding 要求接近 SWE,重点准备 Tree、Graph、BFS/DFS、Binary Search、Sliding Window、Heap、DP 和 Linked List。理想状态是常见 LC Medium 在 15-20 分钟内稳定完成,并留出时间处理 Follow-up。
ML Fundamentals 重点包括 Bias-Variance、Overfitting、Regularization、Loss Function、SGD vs Adam、Learning Rate、AUC、Class Imbalance、Embedding 和 Transformer。不能只记 Definition,还要理解背后原理。例如 Transformer 最好能解释 Q/K/V、Scaled Dot-Product Attention、Multi-Head Attention、为什么除以 √d_k,以及 Training 和 Inference 的性能瓶颈。
Recommendation & Ranking 方向需要掌握完整 Pipeline:User Events → Feature Pipeline → Candidate Generation → Retrieval → Pre-Ranking → Ranking → Re-Ranking → Online Serving → Feedback Loop。模型重点掌握 Collaborative Filtering、Matrix Factorization、Two-Tower、Wide & Deep、DeepFM、DLRM、DIN/DIEN 和 Transformer-based Recommendation。
ML System Design 的核心是 Scale,需要考虑 billion-scale users、massive event streams、high-QPS inference 和 near-real-time feature updates。重点准备 Kafka/Flink/Spark、Batch vs Streaming、Feature Store、Training-Serving Skew、Distributed Training、ANN Retrieval、Caching、GPU Serving、Dynamic Batching 和 A/B Testing。
Evaluation 分成 Offline(AUC、LogLoss、Recall@K、NDCG)、Online(CTR、Watch Time、Completion Rate、Retention)和 Guardrail(Latency、Error Rate、Content Diversity)三层。