程序员面试背了十年的八股文,被DeepSeek废了

AGI
在招人这事上,所有AI公司都应该向梁文锋看齐。

文 | 字母AI

自李博杰称DeepSeek面试官说他写代码的时候作弊一事过后,许多程序员都在网上表示,自己在面试DeepSeek的时候,都要经历两轮非常严苛的代码能力面试。

简介为前阿里技术专家的视频号博主,ID为“军哥程序员”发视频表示,DeepSeek确实要面试两轮代码,并且还表示,DeepSeek的面试官几乎全程都在询问代码相关的问题,正常面试更是长达70分钟。

过去十几年,程序员面试早就形成了一套成熟的应试套路。背题、刷题、共享面经,一条龙服务,从几块钱的 PDF 到十几万的“包过内推”,每一个价位都有对应的产品。只要你花够时间准备,进大厂的概率不低。

但DeepSeek这套面试,把这些套路全废了。

你背的东西它不问,你刷的题它不出。它问的那些问题,你没在线上真刀真枪做过,就是答不上来。

由此可以看出一件事,DeepSeek奉行的是“代码即正义”。

DeepSeek的代码即正义

军哥程序员表示,面试官开了摄像头,直奔主题,只让他做了三四十秒的自我介绍,然后就立刻揪着简历上的项目开始连环追问。

DeepSeek的面试官问了军哥程序员许多问题,每一道题,都是那种在一线干过的程序员才经历过的。

我挑几个有代表性的问题,给你拆解一下DeepSeek招人的思路。

“你的会话记忆用的是message window还是token window,线上为什么这么选?”

大模型本身没有记忆,你跟它聊了二十轮,它不会自动记得第一轮说了什么。要让它“记住”之前的对话,得把历史消息塞回给它。

message window就是按条数存,最近N条消息全塞回去;token window是按字数存,在规定的字数以内可以保存,超过字数就会截断。

听起来简单,但线上选哪个,取决于你的业务场景。如果你是客服对话,那你的轮数多但每轮短,用message window就够了;如果是长文档或者整个代码库分析,那么每轮的内容会非常长,用token window效果更好。

这个问题没有标准答案,面试官要听的是你为什么这么选,选错了会怎样。

“Redis持久化的时候,会话过期策略怎么定的?”

用户跟AI聊天,会话存在Redis里,可Redis是要花钱的,因此容量是有限的,不可能永远存。多久过期?用户半小时没说话就清掉,还是保留七天?如果用户突然回来,发现之前聊的没了,体验好不好?这些都是线上才会遇到的问题,写demo的时候根本不用想。

这个问题是“有典故”的。程序员圈内有个很搞笑的故事,某个运维或开发在crontab里配了一条代码,为了让磁盘定期清理,所以每月30号凌晨清理一次日志。

可是2月没有30号,所以2月的数据没有清理,于是3月的某一天,由于日志量过大,导致磁盘被撑爆了。

“有没有遇到过并发会话冲突?”

这也是个随处可见的情况。你在手机APP上跟DeepSeek聊了一半,到公司打开电脑网页版DeepSeek继续聊。

两边登录的是同一个账号,都在往同一个会话里写消息。手机这边刚发了一句“帮我改一下这段代码”,电脑那边已经在读之前的对话历史了。

两边的会话状态都在写Redis,会不会互相覆盖?手机上最后发的那句话,电脑端能不能看到?如果用户在两边同时发了消息,上下文怎么拼?会不会读到脏数据?

“长期记忆用向量库存储,记忆越来越多,检索越来越不精准,怎么优化?”

这是最考功底的题目之一。向量库存的是把文字转成的一串数字,靠数学相似度来找最相关的记忆。刚上线几千条记忆时检索很准,等攒到几十万条,噪声记忆开始干扰,真正相关的那条可能已经被抛到很后面的位置了。

这道题是DeepSeek付费大户们经常碰到的。你两周前跟它聊过“我是做Java的,主要搞支付系统”,今天你问它“帮我写个重试机制”。

理想情况下,DeepSeek应该记得你是Java开发者,给你写代码的语言是Java。

但如果你跟它聊了几百轮,聊过生活、聊过python。这个时候当你再去管DeepSeek要代码,它很可能给你吐出来的是python。

看出来了吧,这些问题有一个共同特点,它们全部来自线上实战,没有一个能靠背书过关。

军哥程序员回忆到,面试官问他线上故障排查的一个点,他答得含糊,面试官连续追问了三个问题,一直追到具体改了哪块逻辑、效果提升了多少百分比才结束。

军哥程序员表示,如果你只是用LangChain写了个demo,没经历过线上项目的坑,那你“绝对撑不过二十分钟”。

“八股文”行不通了

军哥程序员在视频中提到一件事,说八股文一点用都没有。

什么是八股文?

“八股文”原本是明清科举考试的固定文体,文章八个部分、固定格式、题目出自四书五经,不需要有自己的思想,格式套对就行。

以往程序员面试都是背题,因此业内才会戏称面试为“八股文”。

比如HashMap的工作原理、JVM内存模型、synchronized和volatile的区别,诸如此类。题目出现次数多了,就有人专门整理成册,叫“程序员面试宝典”,在圈子里地位堪比考研押题卷。

网上搜“Java面试八股文”,几千篇文章清一色标着“大厂面试必背”“背完这篇拿offer”,牛客、CSDN 上甚至有“八股紧急背诵”专栏,按公司热度排序,标明哪些题在大厂面试中出现的概率高。

一些计算机培训机构,除了培训学员的代码水平外,也会专门开设课程培训面试技巧。在国内的各大社交媒体,经常有打着程序员名义的账号,售卖各种面试指南。

面试时间就一个小时,面试官要快速判断一个人的水平,最省力的办法就是问有标准答案的问题。你会背说明你准备了,你准备了说明你重视。至于你真会不会干活,入职再说。

于是形成了一条心照不宣的产业链:有人整理八股文,有人背八股文,面试官也知道你在背。

更魔幻的是“面经共享”,面完的人把题目发到网上,后来的人提前背好去面同一个岗位,同一套题所有人都用同一套方案来回答。

圈内人管这叫“面试造火箭,入职拧螺丝”。

在这个背景下,再来看军哥描述的DeepSeek面试,就知道它有多不一样了。

还有一点,程序员圈子里的一个潜规则,只有初级码农才面代码。

任何一个程序员,无论他在学校的绩点如何,他刚入行的时候,唯一能做的事,就是在框架里套现成代码。

但是当你积累了足够的经验,你就能看懂里面的实现逻辑,遇到业务痛点还能自己改、做优化。

到了后面,精力更重要的是考虑业务的整体、并发、线上bug这些事。

所以越是高级的人才,就越不会面试代码。

DeepSeek不这么想,不管你是应届生还是华为天才少年,前两轮就是纯代码面试。

这就叫代码即正义。

这套打法的好处很直白。

第一,筛选机制极度公平。代码写得出来就是写得出来,写不出来就是写不出来,没法靠包装简历过关。尤其是对于不善社交的程序员群体来说,这反而成了最友好的招聘方式,你只需要把代码写好,其他都不重要。

第二,团队基线高,过了代码这道门槛,意味着进来的人能力都在一条线以上,Code Review不用教基础,沟通不用翻译概念,不会出现“资深工程师写的代码还不如实习生”的离谱情况。

不过DeepSeek自己心里也明白,代码并不是一个人的全部。它只是把代码放在了最前面,当成了入场券。

军哥程序员表示,三面不问代码也不聊技术,全是聊认知和判断,比如你怎么看Agent这个赛道?它最大的瓶颈在哪?如果让你从零带一条线,你第一步做什么?

这再一次证明了,DeepSeek也是过来人,知道市场是个怎样的环境。所以无论高低贵贱,你都得会代码。

三家面试,三种哲学

大厂对于招人的态度是截然不同的。

先说字节跳动。

字节AI算法岗的标准流程是笔试加三轮技术面加一轮HR面,总共五轮。

笔试三道LeetCode Medium,技术一面就上手撕代码,要求速度和干净程度极高,过不了代码直接挂。一面还会深挖项目经历,然后出一到两道算法题。

二面开始问模型结构,比如Decoder-only架构、SFT/RLHF/DPO训练范式、LoRA原理,一个知识点能追到数学原理层。比如你提到RoPE(旋转位置编码),面试官会一路追问到旋转矩阵的推导过程。

三面是交叉面,聊工程系统,DeepSpeed ZeRO的并行策略、DP和DDP的区别、多卡训练的硬件利用率估算 。

你仔细看字节的这些题目,会发现一个特点:它们都是可以提前准备的。

这些知识点是固定的,网上有标准答案,你花时间背了就能答出来。字节的三面交叉面问的工程系统问题,本质上也是大模型领域的“高级八股”,刷过牛客面经的人都清楚。

字节的题你提前三个月刷LeetCode、背面经,是有可能蒙混过关的,答案有标准,刷多了总能碰到原题,书读百遍其义自现。

但DeepSeek的题,你没做过线上项目就是答不上来,你没法提前准备“你线上故障排查改了哪块逻辑、效果提升了多少百分比”这种问题,因为那是你自己的亲身经历,背不了别人的。

打个比方:字节像考驾照,科目一科目二科目三,每个环节都有标准流程,练够了就能过;DeepSeek考的是你遇到加塞、爆胎、追尾,这种真实路况你怎么处理。

再说腾讯。

腾讯AI算法岗的流程也是笔试加三轮技术面加HR面,核心岗加总监终面,最多五轮。但腾讯的风格跟字节完全不同。

腾讯最大的特点是层级递进。

一面的面试官是同组同事,考的是模型理解力,比如BERT、LoRA、位置编码这些大模型基础八股,加一道简单算法题。

二面的面试官是直属主管,开始聊底层优化和项目匹配,比如微调经验、DeepSpeed、增量预训练、业务场景结合。

三面的面试官是隔级主管,考的是系统设计和潜力判断。HR 面聊价值观和职业动机。如果有总监终面,那聊的是战略思维和长期适配性 。

腾讯的面试官职级逐轮升高,考察维度从“能不能干活”逐步过渡到“有没有潜力”。

代码权重在三家里最低,高级岗的算法题难度和占比都明显下降。

三家的招人哲学是不同的,各有各的好,不能简单的用一句“你代码查的少,所以你们发展的不好”来概括。但是,如果你享受编程和AI的整个过程,那DeepSeek确实是一个不错的选择。

本文系作者 字母AI 授权钛媒体发表,并经钛媒体编辑,转载请注明出处、作者和本文链接
本内容来源于钛媒体钛度号,文章内容仅供参考、交流、学习,不构成投资建议。
想和千万钛媒体用户分享你的新奇观点和发现,点击这里投稿 。创业或融资寻求报道,点击这里

敬原创,有钛度,得赞赏

赞赏支持
发表评论
0 / 300

根据《网络安全法》实名制要求,请绑定手机号后发表评论

登录后输入评论内容

扫描下载App