字节跳动 · 火山方舟

机器学习平台研发 / 机器学习系统调度一面面经

完整信息

15 条问法 · 14 道题

本篇目录

岗位:机器学习平台研发 / 机器学习系统调度方向

时长:约 58min (2026.8.26)

整体流程:项目深挖 → OS / 网络基础 → 手撕算法 → 反问。

1. 项目

  1. 自我介绍
  2. 从做过的项目里挑一个收获最大的,详细介绍技术架构和核心技术点
  3. 这个项目最大的技术难点是什么
  4. 介绍一下 Agent Infra / Agent Runtime 相关工作
  5. Agent 调用 Sandbox 的链路如何做容错Sandbox 运行过程中挂掉怎么办?

项目部分基本不是问八股,而是沿着简历一直往下追,比较关注真正做了什么、为什么这么设计以及异常情况怎么处理。

2. 操作系统

  1. 为什么操作系统需要区分用户态和内核态?
  2. 什么情况下会发生用户态和内核态切换?
  3. 操作系统是怎么进行内存管理的?
  4. 为什么需要虚拟内存?虚拟内存和物理内存为什么要分开?

OS 基础问得比预期深一些,不只是背概念,会继续追问为什么这么设计。

3. 计算机网络

  1. 已经建立 TCP 连接以后,如果一端突然掉电、直接从网络中消失,另一端的 TCP 连接状态接下来会怎么变化?

这个问题主要考异常断连场景,不是常规的三次握手、四次挥手。

4. 手撕算法

  1. 两数之和,数组中数字可能重复,每个元素只能使用一次
  2. 先讲思路再写代码
  3. 我给的是排序 + 左右双指针
  4. 追问时间复杂度和空间复杂度
  5. 追问空间具体花在哪里
  6. 排序能不能原地做
  7. 有没有时间复杂度更低的方法
  8. 写完以后继续改 target 跑多个 case 验证 这里其实面试官明显是在引导从:

排序 + 双指针 O(nlogn)

继续想到:

HashMap 一次遍历 O(n)

数组存在重复数字不影响哈希表做法,存已经遍历过的数字及其下标即可。

5. 反问

我问了:

  1. 部门目前主要做什么?
  2. 更偏推理、调度还是运维?
  3. 调度平台是自研还是基于开源项目?

面试官介绍,他们主要做字节内部的机器学习平台,支持大模型训练和推理;平台层各方向都会覆盖,但是核心比较关注调度,因为有很多不同类型的 workload,需要同时保证任务调度效果和整体资源利用率。平台本身是自研,也会参考社区里比较好的实践和思路。

总结

这一面和 JD 给我的第一感觉不太一样,本来以为会重点问 Volcano、GPU 调度、Gang Scheduling、RDMA 这些 ML Infra 内容,实际一面更偏:

项目深挖 + OS / 网络基础 + 算法

项目会沿着系统设计和容错一直追,基础知识也不是只问定义,更关注为什么这么设计。

准备这类 AI Infra / ML Platform 岗位的话,除了 K8s 和调度,OS、网络这些基础还是得认真复习。

本篇目录
  1. 01
  2. 02
  3. 03
  4. 04
  5. 05
  6. 06
  7. 07
  8. 08
  9. 09
  10. 10
  11. 11
    已经建立 TCP 连接以后,如果一端突然掉电、直接从网络中消失,另一端的 TCP 连接状态接下来会怎么变化?
  12. 12
    两数之和,数组中数字可能重复,每个元素只能使用一次
  13. 13
  14. 14
  15. 15

同作者面经

展开其余 3 篇收起其余 3 篇

相关公司