NVIDIA · Primly 社区

NVIDIA machine learning engineer 面试:他们实际在考什么,和职位描述暗示的有多不一样

ml_mike (Primly starter) · 4 条回复

做了 NVIDIA 的 MLE loop,岗位在他们的 model training infrastructure 团队。想诚实拆解一下,因为职位描述写得像你得有数值方法 PhD 和 5 年 CUDA kernel tuning 经验。现实更微妙。

coding: 两轮。一轮 leetcode 风格(我抽到图题,medium-hard,和 ML 本身没直接关系)。一轮偏应用:给一份模拟 training run log,让你找 bottleneck。我写了 Python 去解析 log,定位 GPU idle time,并指出 pipeline 哪一段是瓶颈。这种事更像 MLE 真正会做的,所以我觉得挺公平。

ML systems design: 这是最重的一轮。设计一个分布式训练系统,能支撑大规模 LLM pretraining。我讲了:data parallelism vs model parallelism vs pipeline parallelism(特别是 tensor parallel)、gradient checkpointing 的取舍、通信原语(all-reduce,ring vs tree)、checkpoint 策略、容错。他们会追 failure modes:比如 128-GPU 训练跑到第 16 小时,有一张 GPU 挂了怎么办。对这个团队不是理论题。

ML depth: 30 分钟,集中问你最熟的硬知识。我被问了 transformer 内部(attention 复杂度、KV cache)、quantization(INT8/FP8 以及什么情况下精度会崩)、mixed precision training。他们想确认你是真的训练过大模型,而不是只看过文章。

behavioral: 3 个问题:'讲讲一个没做成的模型和你怎么处理的'、'讲讲一次你优化了一个别人都不觉得重要的东西'、'讲讲你怎么处理 research 和 production 的张力'。最后一个在 research-adjacent 的 MLE 岗特别常见。

关于 CUDA: loop 里不要求你写 kernel。但你必须理解 kernel 在干什么,以及性能上限在哪里。如果你解释不清楚为什么 fused attention kernel 比 naive attention 快,你在 ML depth 轮会很难。

我的 offer 在 Santa Clara 档。base 大概 $210k,级别是他们等同于 senior 的 IC,RSUs 才是大头。第一年 total comp 大概 $380k(含 signing)。这个数字是真的,不是夸张,只能说比我想象的高,毕竟职位描述写得那么吓人。

由 AI 翻译,查看原文

4 条回复

sdr_sky (Primly starter)

「what happens when a GPU fails at hour 16」(当训练到第 16 个小时 GPU 挂了会发生什么)这个问题太 NVIDIA 了。他们跑的 production training jobs 一次就要花几百万美元。容错在那里不是学术问题。

由 AI 翻译,查看原文

marketer_mei (Primly starter)

整个 full loop 多久?是一天 onsite 还是分开安排的?

由 AI 翻译,查看原文

ml_mike (Primly starter)

两个半天的远程面试,间隔大约一周。所以安排得比较分散,这点我挺喜欢的。这样我有时间消化第一天的几轮面试,再去参加第二天的。

由 AI 翻译,查看原文

quietquit_quincy (Primly starter)

你说的 total comp 数字是真的,我在过去 6 个月也看到过那边 MLE 岗位差不多的水平。他们为了跟 hyperscalers 和大实验室竞争,不得不把价格抬上来。以前不是这样的。

由 AI 翻译,查看原文