如何成为大模型实验室的研究工程师:18 个月的战略性求职

查看原文 HN 讨论

文章摘要

作者 Max Mynter 是一位自学出身、非 CS 背景(物理 + 社会学)的机器学习工程师。这篇近 8000 词的长文记录了他如何用 18 个月,把自己从「第一份 ML 岗位干了一年」推到与 Mistral 签下研究工程师的 offer。他一开头就声明:样本量 n=1,不敢称原创,请各取所需。

核心框架是「战术 vs 战略」。 战术是低投入、在你当前具体处境下回报高的动作:读一读你要面试那家公司的近况、刷几道 LeetCode 找回肌肉记忆、做模拟面试、打磨简历。战略是高投入高回报、当下甚至显得徒劳、但会复利叠加的动作:把一门新技术学到能做出实质性作品集项目、在有声望的组织里积累任期、建立并维护人脉、通过公开谈论自己的工作建立个人品牌。他的判断是:长期看,决定职业生涯的是战略;但在每一个具体时刻,战术都有巨大价值——准备充分会留下好印象,而仅仅因为觉得 LeetCode 烦人就错过职业转折性机会,是短视的。

他的真实时间线远不像事后叙述那么整齐。 2024 年 4 月,他先和直属经理谈职业发展,确认在现岗位既无短期也无中期成长空间;随后开始动用人脉,找在大厂、初创、scale-up、FAANG、大实验室工作的朋友聊天,问的问题始终类似:你喜欢现在的岗位吗?学到很多吗?成长路径是什么?工作量多大?要拿到类似岗位需要什么技能、什么样的作品集项目?这催生了第一轮战略性技能建设——大量 LeetCode 准备,以及买书补 CS 基础(尤其是分布式系统、数据结构与算法)。2024 年 8 月投出第一份申请,表现不错,但在 11 月走完六轮后被拒,「相当受打击」。他原本计划继续多投,但一边全职工作一边刷 ML 基础、备编程面试、做 takehome,把他占满到根本投不动。于是他辞职,2025 年 1 月起全职投递——结果很惨淡:很多他兴奋的岗位连面试都没给,少数拿到的面试也因为紧张和一些本可避免的低级错误挂掉。他开始怀疑第一次走到那么远只是运气。

于是他再次转向战略:加入 Recurse Center(一个基于同期学员、但自主导向的编程静修营),搬到纽约待到 2025 年 5 月中。他强调选择 RC 的三个理由——它给了他专注升级技能的自由,给了他一群在做同样事情的人,给了他一段可以写进简历、把所有项目挂上去的经历;而最重要的是它有三个月的固定时长,「这不是一个我在没有任何结构的情况下、因为怕被看成混日子而敢于投入的时间跨度」。这三个月里他学了 Rust、给 ruff 和 uv 这两个被高度审视的开源代码库贡献了 15 个 PR,并和四年前的硕士导师(在德国航空航天中心的 AI 安全研究所)合写了一篇论文。2025 年 6 月回国后转入战术阶段全力投递:与 40 家公司发生约 60 次接触,8 月中拿到 Mistral 的口头 offer(同时还有几个别的),9 月初签约。

目标定义。 他认为换工作是一个「个人项目」,缺乏结构既带来了极大的自主空间,也让整个过程难以导航;而知道自己要去哪能让导航容易得多。他自己的目标写成一段:找一个能建立稀有且有价值的技术技能(软件与 ML 工程)、做自己喜欢的工作、有主导权和影响力、同时有资深同事支持以便成长为技术领导、但在可见的将来保持 IC 身份、并且住在离在乎的人合理距离内的宜居之地的、职业转折性的岗位。这个写法满足两个约束:够宽泛,有相当数量的岗位可能匹配,射门机会多;又够具体,能让他排除掉妥协过多的机会。他明确指出「在有十亿美元以上融资的前沿模型实验室工作」这个目标实际上把搜索范围限制到大约 10 家公司,而且家家极难进——而「找一份薪水高的工作」则太宽泛,他甚至可以转去咨询或 VC 还照样达标。他也说明了这些标准如何反推出理想岗位画像:早期就有主导权和影响力、有成长空间、被迫留在 IC 轨道,这些在初创常见;而接触资深同事、知名品牌的「简历颜值特权」、以及训练小众工程技能的需求与资源,则更多在成熟公司——scale-up 是一个勾中很多项的中间点。这些标准还给了他拒绝的底气:比如会成为庞大官僚机器里的小齿轮,或者初创早到只能不断产出 MVP 验证产品假设、而不是构建高性能底层系统。

申请打法(playbook)。 这套方法是一位在硅谷大公司的朋友在他旅程一开始就告诉他的,而他随后有近一年没照做。真正执行是从 2025 年 5 月起:用预设目标列出一份长长的岗位与公司清单;对最想去的几家,设法联系到内部的人(或跟进探索期认识的人),目标是拿到关于面试流程的内部信息,有时甚至是内推——这在人脉圈里效果最好,但在 Twitter/LinkedIn 上冷启动也偶有斩获(他的冷启动话术大意是:我是 Max,我对 xyz 非常感兴趣,正认真考虑申请 abc 岗位,有什么你可以分享的、能帮我做出最好的申请吗)。关键动作是分批投递:每一批里放一家(有内推的)首选公司,加上若干他没那么兴奋但仍愿意去的公司;并行推进多个流程让协调更容易,更重要的是他可以把低风险的面试排在首选之前——「这样你能获得一些惯性,并且在损失可控的场合把所有第一次的蠢错误都犯掉」。他不投他确定不想去的公司,因为流程需要有真实的利害关系,也不想浪费对方时间;而有些第二志愿在流程中反倒变成了第一志愿。每一批的目标是同时走到多家的 offer 阶段:具体 offer 给了他大量信号(哪个感觉更好、为什么),多个 offer 也提供谈判杠杆(团队分配、签字费、远程办公——他知道某个诉求是合理的,因为另一家已经给了)。每批只放一个首选的理由是他对内推人有责任感:如果走到 offer 且条件有竞争力,他就该接受。三条要点:分批投递、把低风险的当训练场;用人脉拿内推和流程情报;珍惜内推人的时间。

人脉与「弱连接的力量」。 他强调网络的主要力量不在「高位的朋友」,而在弱连接——人的熟人总多于密友,且熟人认识的人远在自己社交圈之外。他说自己仍把这些「熟人」叫朋友,因为对他来说就是如此;任何「networking」在他被当成「认识有趣的人、乐于助人、交朋友」而不是「为自己利益建立连接」时都更有效,「也没那么尴尬」。LinkedIn 用来搞清楚谁认识谁很有用,但比在线扒人更有力的是跟朋友讲清楚你的目标——朋友通常愿意帮忙,但要帮上忙他们得知道你想达成什么。线上他选择了 Twitter/X,因为那是唯一一个他能靠共同兴趣和评论区玩笑真正建立新关系的社媒;线下则是去同好聚集的地方,而同期制的项目(训练营、学校)尤其有效,因为参加者更投入,且通常正处在对新友谊格外开放的人生阶段。他的交友公式是三步:做有趣的事(建项目、去活动、听讲座、学习、打磨手艺——「有趣」几乎会自己长出来)、讲出来(发你的项目、跟朋友聊、去本地创客空间做个分享,别人只有知道什么让你有趣才会觉得你有趣)、保持开放(有人找上门就聊、能帮就帮,信任和友谊在重复互动中形成)。他自己的执行是在 Twitter 上(有时每天)更新学 ML、Haskell、Kubernetes、Rust、写编译器、写论文的挣扎,这既是公开的自我督促机制,也是别人路过他主页时的「工作证明」。他推荐 Austin Kleon 的《Show Your Work》。

建立职业动能与「职业资本」。 他的私人观点是:组织招聘时想押注赢家,而赢家可以是全明星,也可以是崭露头角的黑马;无论哪种,都必须证明这份工作是一条向上轨迹的合理下一步。他希望面试官心里想的是:这位申请者有 ABC 学位带来的严谨定量基础,如今对 DEF 领域感兴趣到在业余时间做出了高度相关的作品集项目/开源贡献。这就是 Cal Newport 在《So Good They Can’t Ignore You》里说的职业资本——稀有且有价值的技能,加上向外部验证这些成就的方式(项目、职位、证书、就读机构)。他给出了三个用项目补短板的具体案例:

他坦承每一项都是相当大的工作量:「归根结底,建立稀有且有价值的技能没有捷径,否则它们就不稀有了。」在时间有限时,明智的做法是选择一举勾中多个格子的项目;而长期看,少而高质量、需要相当努力才能完成的项目,几乎总是优于许多浅层项目——「建立职业动能不是在钻系统的空子,而是真的去做那件事、学那些技能」。

面试环节逐项拆解。 每次面试前他固定做几件事:如果知道面试官是谁,就看他的 LinkedIn、GitHub、Twitter、博客(用来设定准备重点,也用来在正题前后的闲聊里提问);读公司/团队近期的发布和产品;大致知道公司价值观、以及为什么想为这家而不是别家工作;清楚这个具体岗位、自己想从中得到什么、以及为何过往经历让自己合适;准备好几个可以在结尾提问的问题(面试官几乎总会给这个空间)。他所有面试都是远程视频,因此没有 onsite 经验可分享。

心理战。 一方面换工作很棒:这是一段充满可能性和杠杆的时期,比在职时有更强的谈判力和抽身能力,这也是他在艰难时提醒自己的话。另一方面它确实很难熬:大量拒绝、不确定性、因为连自己会落脚在哪个国家都不知道而无法做长期规划,以及靠积蓄和失业保险生活。最糟的部分是他逐渐意识到「失业」本身带有污名,随着时间推移,越来越难抵抗「干脆接受一个妥协过大的岗位」的冲动;再加上无尽地等结果、等回电、等拒信,令人心力交瘁而又完全无法加速。他还需要大量意志力和主动性,去处理相互竞争的责任之间的持续摩擦:是该往漏斗里再灌几份申请、准备下一轮面试,还是花时间在一个战略性作品集项目上学新技术?他给出的时间参考很实在:初创跑得快,但成熟公司或 scale-up 的竞争性岗位耗时可观,对他约 2–3 个月;然后合同谈判来回约两周,再几周完成交接。所以即便一切顺利(而这是你不能指望的),一次全职求职至少是四个月的过渡状态。

结论。 战术归结为两件事:设法获得信息优势;据此行动,在关键时刻做好准备。战术之外是战略——那些需要时间、无法伪装的东西:学习稀有而有价值的技能、打磨手艺、别忘了收集能力的证明点(技术产出、业务结果、职位头衔、组织身份),以便别人能轻易判断你的水平;理想情况下选一件你享受的事,因为享受才更容易在变强上投入不合理的时间。再加上建立一个认识你、愿为你背书、会把机会推给你的同侪与朋友的网络。

HN 评论精华

这条帖子拿到 55 分,讨论稀少,且整体基调偏负面,如实记录如下。

最尖锐的两条几乎没有论证。 bluecheese452 说:「这篇文章甚至比标题还要令人无法忍受。」indoorfish 的嘲讽是:「『Claude,给我做个博客模板,要能显示出我有多极简。』」

关于「这算不算指南」的方法论批评。 ktallett 说他对「指南」这个词有点怀疑:「基本上你说的是——想成为一个可能有用的机器学习研究者,就去学机器学习;因为机器学习发生在计算机上,所以了解计算机怎么工作也有用。这相当于我说:想加入我研究量子计算,你得先学量子,然后学计算。先广后专。有点……嗯,那不是显然的吗。」georgemcbay 的总结是全帖最短的:「太长不看——科技行业的招聘流程一年比一年没完没了。」vjvjvjvjghv 接:「我非常庆幸自己快退休了,如今的招聘流程太糟了。」

最有信息量的一条来自 angarg12,是一份对照性的亲身数据。 他两年前的求职:一边在大厂全职工作一边磨了 9 个月,有 15 年以上经验,走完约 30 家公司的流程,最后拿到约 6 个 offer。这些 offer 差异巨大——有的把他降级到中级,有的把他升级;最低和最高的薪酬包相差约 3 倍。而且他找不出流程和结果之间的规律:没名气的公司连电话筛都不给就拒了他,层级较低的公司给他更低的级别,而以难进著称的公司反而给了更高的级别;面试难度也没什么相关性。他因此彻底相信就业市场是一场数字游戏,其中包含高度的随机性和运气;纪律和努力有帮助,但结果远非保证——上一次他差点没换工作,因为大多数 offer 都不如当时的岗位,直到最后拿到两个高质量 offer。他对本文的评价很克制但意味深长:「我只是粗略读了一遍,但作者在没有正规背景的情况下拿到研究工程师岗位,我很佩服,因为我有 PhD 加多年相关经验都被拒之门外。我不想贬低这份成就,但我会对轶事和成功公式非常警惕。作者辞掉工作、100% 专注于求职,这个赌注得到了回报。我知道更多类似的故事没有成功,人们不得不匆忙接受质量更差的工作,最糟的情况下陷入了长期失业。」wordpad 追问他的面试是否仍以 DSA 和系统设计为主,他答:主要是,但也有 takehome、文化契合轮,以及很多 ML 轮(因为他申的是 ML 岗)。throwaway219450 补充:「两年前肯定是。我经历的每场编程面试都是从 LeetCode 里抽的题。说句公道话,题库这么大,现在也确实很难不这样。」

conceptme 提出了本帖最实际的风险提示: 「18 个月的求职相当残酷,我理解他确实很想要这个,但对大多数在工作之外有『正常』生活的人来说,这会是一个非常冒险的举动。」

对「lab」这个词的质疑意外地引出一段小辩论。 throw0101a 说他不明白作者为什么用这个词:他是在为一家营利公司工作,不是在什么「实验室」;并引用维基百科指出 Mistral AI SAS 就是一家总部在巴黎的法国人工智能公司。「我不明白为什么这个领域的所有公司都被叫作『lab』。这是想把它们的逐利动机扫到地毯底下,还是别的什么?」bootwoot 回应:「我不认为『lab』这个词本身就暗示了任何关于逐利与否的事,它只是指向前沿研究的聚焦。」

唯一实用的一条技术建议来自 homarp,针对文中「买 YouTube Premium 以便下载和后台播放、在散步时听系统设计视频」那段:「你也可以研究一下 youtube-dl/yt-dlp(配合广告拦截器)。」

还有一支完全跑题、但占了不小篇幅的争论。 dosisking 说:「这篇文章正是我认为 LLM 是死路一条、不是真正 AI 的原因。LLM 对语言相关的事有点用,是个不错的搜索引擎,但 LLM 不是 AI。」vjvjvjvjghv 反问他如何定义 AI,并说 Claude Code 写代码比很多人类程序员都好。dosisking 澄清他的意思是 AI 涵盖的东西远不止 LLM,而 LLM 整体是一条死路——人们以为 LLM 会持续变好,他怀疑不会,它们可能已经见顶了;他甚至认为神经网络整体都是死路。他随后加了一句相当刻薄的推论:「他们把写这篇文章的人招进去了,这向我确认了 LLM 技术背后没有实质内容。」vjvjvjvjghv 给了一个更温和的框架:「也许 LLM 之于 AI,就像拨号上网之于互联网。它是一个开端,让事情动起来,并为更好的东西吸引投资。」wilbur_whateley 给出了本串最有分量的一条:对他而言 AI 关乎解决新问题的能力;认为监督学习能做到这一点的人,通常相信新知识来自(1)旧想法的组合和(2)试错,而他不认为这是真的——如果你思考所有可能想法构成的状态空间,人类能探索的显然只是极小的子集,而监督学习只是在模仿人类(只不过速度快、记性好);RL 也不管用,但它至少试图独立于人类知识去学习。vjvjvjvjghv 反驳说这把智能的门槛设得太高了,按这个标准恐怕没多少人类算得上有智能;wilbur_whateley 答:他认为人类和其他生命形式在足够长的时间尺度上、通过演化,是具备这种能力的。最后 throw1234567891 插了一句纯语法的吐槽:「它们确实不是 AI。但 LLM 的复数是 LLMs,不是 LLM’s,除非你是荷兰人。」