编辑|杨文
「LeetCode 式的编程面试已死!至少对我的团队来说是这样。」
今天,Anthropic 工程负责人 Felix Rieseberg 发帖称:「我可以确定传统编程面试已经失去参考价值,这个月我直接把它从自己团队的面试流程里砍掉了。」

他还发布一篇题为《冲劲胜过资历:给初级工程师建议》的博客文章,专门写给那些还没有积累起社会资本与话语权的工程师。

知名 AI 博主 Yuchen Jin 随即转发评论:「我太高兴了,AI 终于干掉了 LeetCode 式的编程面试。我和很多年轻的 AI 人才聊过,他们中的大多数会直接跳过还在使用 LeetCode 的公司。」

编程面试,「死」在了 AI 手里
传统编程面试曾经发挥过作用。
在限定时间内快速定义问题、找到优雅解法的能力,曾是预判一名工程师能否在团队中取得成功的粗略但有效的指标。那些模拟真实场景的小型编程挑战,也确实能揭示候选人的某些真实水平。
但现在不行了。
给候选人出一道简单的 React 题,与考查汇编语言已经没有多大区别,Claude 在这两类任务上的表现都更加出色。Anthropic 团队中最能创造影响力的工程师,未必擅长这类限时测试,传统编程题的成绩,已经难以预测一个人进入团队后的真实表现。
Rieseberg 还观察到一个新的现象:一些入行不久的工程师,正在迅速超过从业多年的同行。后者的编程功底可能更扎实,也更熟悉传统开发流程,但前者能够借助 AI 更快地把想法变成产品。
过去,工程师需要多年积累,才能熟悉各种框架、代码库和工程细节,这些知识构成了资深工程师的壁垒。如今,AI 可以快速补齐大量具体知识,一个人能产生多大影响,不再高度受限于从业年限。
用 Rieseberg 的话说,「饥渴感打败了工龄」。
有眼光,却没有话语权
在给出建议之前,Rieseberg 先聊到了年轻工程师的真实处境。他们往往拥有新鲜视角,却缺少推动事情落地的话语权。
他引用了几个例证。
Rieseberg 加入 Stripe 时,创始人 Patrick Collison 曾提醒所有新员工,认真留意那些让他们感到奇怪的地方。
Collison 相信,新人更容易发现组织内部的摩擦与机会,而老员工可能早已对这些问题习以为常。
1991 年,管理学者詹姆斯・马奇也曾写道:
组织的发展有赖于「持续吸纳天真而无知的人。
导演奥逊・威尔斯被问到,为何有信心尝试从未有人用过的拍摄手法时,他回答:
无知,纯粹的无知,没有什么比无知更能带来自信。在我看来,只有当一个人开始真正了解某个行业,才会变得胆怯或谨慎。
Rieseberg 在 Notion 的经历也是如此。
当时,一道面试题要求他设计离线模式,Notion 内部普遍认为,这是一道带有陷阱的题目,因为离线模式几乎不可能实现。原因有二:
一是 Notion 数据模型过于复杂,整个工作区难以完整同步;二是内部流传着一种说法,CEO Ivan Zhao 无法接受只下载个别页面的产品体验。
后来,数据模型复杂这一点得到了验证,但「创始人一定会反对」这个说法,从未有人真正核实过。Rieseberg 这个无知的新人,不了解这套内部共识,他只想到了直接去问。
加入 Notion 不久后,Rieseberg 曾想为各个团队配备大屏电视,用来展示实时数据看板,却遭遇了重重阻力,最终不了了之,他也没有执着到愿意为此与整个组织较劲。
一年后,刚入职的 Ji Pei 提出了同样的想法。Rieseberg 不以为然地告诉他,不必再尝试了,因为自己已经试过。结果,Ji Pei 早已向相关人员提交申请,第二天,电视就到位了。
Rieseberg 意识到,在不知不觉间,他已经成了那个习惯说「不可能」的老员工。
新人靠这5招逆袭
认清了自己的优势与局限之后,Rieseberg 给出了五条建议。
第一,优先考虑业务影响,不要只盯着待办事项。
早在 AI 编程出现之前的 2011 年,Patrick McKenzie 就写道:
公司聘用工程师,是为了创造商业价值,不是为了编写程序。
工程师首先需要搞清楚所在公司真正想实现什么。
如果身处大公司,则要了解自己所在团队或部门的目标;同时,留意直属上司的上司在承担哪些目标,往往是判断业务重心的有效参照。
第二,选择一个足够大胆的想法。
可以提出几个方向,但其中至少要有一个,一旦成功,就能显著提升组织实现目标的概率。平庸的想法很难引起真正的注意。
第三,用一个周末把它做出来。
Rieseberg 见过一些小团队,也见过单枪匹马的工程师,他们直接做出能跑起来的原型,绕过了撰写需求文档、争取内部支持、游说设计师或产品经理这一系列漫长流程。
一个可运行的原型,远比一百页文档更有说服力。
第四,集中精力把一个想法做好。
资历较浅的工程师容易犯一个错误,把太多想法塞进同一个原型,最终让三个好构想淹没在二十个糟糕构想里。
如果一个原型既要创造新的编程语言,又要搭建后端,甚至还要开发移动应用,那么它很难取得成功。
制作可运行原型的目的,是把一个想法表达得足够清楚,让管理层迅速看到机会,同时相信这位工程师有能力继续推进。
第五,充分利用新鲜视角。
对于面向用户的产品,入行不久的工程师更容易感知用户的真实体验,也更容易察觉产品哪里好用、哪里存在问题。
Rieseberg 在 Slack 和 Notion 的老同事,很难真正代入一个外部用户,理解他们使用 Slack 或 Notion 时究竟是什么感受。
对于基础设施或工具开发,同样如此。新人还没有学会那些用来解释某件事为什么「不可能」的全部理由。
更看重品味、共情和行动力
编程面试,恐怕真的回不来了。
曾经有多少人捧着厚厚的《算法与数据结构》,只为叩开一扇好工作的大门,换取一个更好的未来,想到这里,难免有些感伤。
但 Rieseberg 也承认,作为一个长期反对论资排辈的人,他其实忍不住感到乐观。他已经亲眼见证了许多用这种全新方式打造出来的产品。
在 Anthropic,工程师们早已习惯在命令行中使用 Claude Code,因此很少有人重新思考它的交互方式。两位入职时间不长的工程师 Anthony Morris 和 Alice Zhao,只用一个周末,便捣鼓出了一个可以跑起来的图形界面原型。
大约八天后,第一个公开版本上线。这款为 Claude Code 量身打造的图形界面,如今已成为一款颇受欢迎的产品。
Rieseberg 认为,自己可能不是唯一一个正在思考新面试方法的管理者。企业需要找到那些能够借助 AI 做出优秀产品的人,但如何识别这类人才,目前还没有成熟答案。
他也尚未找到完整的方法。不过,在浏览简历和作品集时,他会特别留意那些规模不大、但能体现品味、共情能力和原则性思考的原型项目。
参考链接:
https://x.com/felixrieseberg/status/2115200995546566910
https://felixrieseberg.com/hunger-beats-tenure-advice-for-junior-engineers/
https://x.com/Yuchenj_UW/status/2115220471377768841
4001102288 欢迎批评指正
All Rights Reserved 新浪公司 版权所有
