考完试没人问你背了几本书,面试官只问你做成了过几个东西——这句话是我结课两年后,坐在面试官那一侧的椅子上,才真正想通的。
最近面了一批候选人,不少简历里都写着“熟悉大模型应用”“做过RAG知识库”“会调agent”,但一追问就露馅。这个场景特别像我两年前刚从知乎知学堂的AI应用开发课结课时的状态:课都学完了,项目代码也敲过一遍,真让我独立讲清楚“为什么这么设计”“效果怎么衡量”,脑子里是一团浆糊。直到自己开始以面试官的角色筛选人、评估人,才重新意识到课程里那些当时觉得“不过就是作业”的项目实战,以及“无非是改改简历”的求职辅导,恰恰是决定一个人是拿到offer,还是继续漂流在投递池里的分水岭。
这篇文章我不打算做课宣,也不是带货,就是以一个“曾经是学员、现在是面试官”的双重身份,把AI应用开发这件事拆开揉碎讲一遍。包括中小自研公司到底认什么、面试官看项目到底看什么、求职辅导改那些东西到底改什么,以及一套能落地的AI应用开发学习路线。内容偏向实操和复盘,适合刚入行想进AI应用方向的人,也适合正在上课但不知道学的东西有什么用的人。
1. 先从面试官桌上的一句话说起
1.1 那个“做过RAG”的候选人
上周我面了一个两年后端转AI的候选人。简历上写得很漂亮:“基于大模型构建企业级RAG知识库,解决内部文档检索效率问题。”
我按惯例追问了四个问题:向量库用的什么?chunk尺寸怎么定的?召回率有没有做评测?bad case都出在哪一类?现场沉默了大概十秒,然后他给的答案是“用了那个开源的,当时没太关注细节”。这个反应我太熟悉了,因为我两年前也是这样的。
作为面试官,我其实不是想听他背出Milvus还是Weaviate的区别,也不指望一个应用工程师能说出faiss内部索引结构。我想验证的是:他有没有真的把一个项目从零做到能跑、能测、能说清取舍。一个“做过”的RAG项目和一个“跑通”的RAG项目,在面试官这里完全是两个物种。前者能讲清楚数据清洗、切分策略、多路召回、重排、幻觉兜底,后者只能复述教程里的步骤。
这引出了一个核心问题:什么样的AI应用项目经历,在面试官眼里才算数?
1.2 两年前的我,和现在的我在同一张桌子的两侧
那时候我上AI应用开发课,心态就是“多学点东西,给自己简历贴个金边”。课程里安排了几个实战项目,我印象最深的是用扣子(Coze)搭一个销售线索提取的agent,还有做一个客服知识库问答系统。
说实话,当时我的完成路径非常“学生气”:老师给了需求文档和接口说明,我照着示例代码调通,界面能跑,问答能答,就觉得自己行了。尤其是“求职辅导”那个模块,我一度觉得它只是帮忙改改简历、练练自我介绍,作用也就是给自己壮壮胆。
两年后我坐在面试官的位置上,一天要看几十份简历,平均每份停留不到一分钟。这时候我才看懂当年课程设计的逻辑:项目实战的目的从来不是教会你某个具体工具,而是逼你完整经历一个AI应用从需求到上线的全过程,让你在面试时能讲出“自己做过的事”;求职辅导的重点也不是美化措辞,而是帮你把做过的事翻译成对方听得懂、记得住、愿意给offer的语言。两个环节分开看都容易轻看,连在一起才是一个完整的上岸闭环。
2. 项目实战的分量:面试官到底在考察什么
2.1 一份“能打”的项目,要过三关
我筛项目经历时,通常就过三道关:真实度、技术深度、业务理解。
真实度看的是细节。你写“优化了Prompt”,那原来的长什么样?改进之后变化在哪个指标上?你是测了二十条case还是跑了两个数据集?这些细节一旦缺乏,面试官只能默认这是顺手写在简历上的装饰品。这里有一个残酷的现实:网上教程附带的项目模板年年都在变,面试官基本都见过,甚至我们自己当年也都是靠同一批demo起手的。
技术深度看的是取舍。AI应用开发的特色在于,它不是一个“统一最优解”的技术方向,而是处处都要做权衡。chunk切300还是500?向量检索和关键词检索要不要混合?温度参数是0.2还是0.7?你的每次选择背后得有依据,哪怕依据是“我做了两组实验对比”,也远比“官方默认值”要有说服力得多。
业务理解看的是视角。面试官想要的不是技术熟练工,而是能看懂业务问题的工程师。你的项目解决了谁的什么问题?谁在用?用得满意吗?如果让你重新做,你会改哪里?这三个问题回答得好,哪怕技术选型弱一点,我通常也愿意给个机会,因为这说明他具备独立负责一个AI应用模块的潜力。
2.2 课程里的项目实战,为什么当时没看懂
现在回头看,课程里那些项目设计其实相当讲究。它看起来只是“做作业”,实际是在模拟一条完整的AI应用生产链。
以扣子开发AI agent那部分为例。当时我不理解为什么老师非要我们用低代码平台搭一个agent,而不是直接调大模型API。现在明白了:agent开发的关键难点在任务拆解、工具定义、编排逻辑和状态管理,这些概念的训练在低代码平台上能快速建立全貌。如果没有这个全貌,直接上手写LangChain代码,只会被各种模块之间的异常处理打死。先把“agent到底是什么、怎么组织工具和能力”想明白,再落到代码,学习效率高得多。
客服知识库那个项目也是这样。它的完整链路是:文档收集、问题梳理、知识库结构设计、检索方案选型、问答效果测试、语料缺陷修复。这一趟走完,你对RAG的理解就不是一句“从库里找相关段落扔给大模型”了,而是知道每一环都可能出脏数据,每一步都需要评测反馈。这些东西在两年后我面过的绝大多数“接触过RAG”的候选人里,能答到第三层的都不多。
我后来还专门研究过“愚公系列”那篇讲扣子开发AI agent智能体应用的内容,发现真正把agent项目吃透的人,实际上是把工具、模型、业务三种语言都打通了。如果当年我能带着“这套项目是为了让我具备什么能力”的视角去做,而不是赶着交作业,后面的路会顺畅很多。
2.3 面试官如何三分钟看穿“假项目”
这里我说几个我们常用的小手段,也算帮正打算去面试的读者避个坑。
第一,问“数据从哪来的”。真做项目的人对数据源和清洗过程门儿清,假项目这时会卡壳。第二,问“模型为什么选这个”。选型思路能从侧面反映一个人对效果、成本、延时的敏感度。第三,问“效果怎么评估”。这是最大的分水岭,很多人习惯做完就完,完全没跑过评测。第四,问“哪里出了问题”。真实项目必有翻车经历,能坦然讲“我遇到什么坑、怎么查、怎么解决”的,基本可以断定是真枪实弹做过的。
需要提醒的是,求职阶段千万不要靠背题硬撑。面试官每天面五六个人,你是不是在背答案,三分钟内就感知得到。与其背十个题目,不如把一个项目从头到尾每个环节问自己三遍“为什么”。
3. 求职辅导的分量:从面试官角度看“包装”与“匹配”
3.1 简历筛选的真实逻辑
好多学员觉得简历就是要写得全、写得满、技术栈列得多。站在面试官视角,第一天筛人时我真的就是“扫关键词”的状态。
一份简历我能停留的时长大概20到40秒。这个阶段我不看你是不是写满了五页纸,我只看这么几个信号:有没有具体项目名、有没有量化结果、项目描述里的动词是否具体(“负责”“搭建”“提升”而不是“参与”“了解”“熟悉”)、业务场景是否能够想象出画面。和你报的课程里那个“求职辅导”环节做的事几乎完全一致——它从不是教你造假,而是教你把你做过的事情,用面试官能快速接收的方式表达出来。
我见过一个很典型的正面案例。候选人写了“使用Coze搭建销售线索提取agent,将单日人工处理量从200条提升至800条,错误率降低30%”。这个描述没有夸大的嫌疑,但它给了我三个提问抓手:agent运行链路、准确率如何定义、数据量级怎么统计。有这种可深挖的简历,我会在初筛阶段优先PASS进去,因为这种投资人式的包装,本质上说明候选人思考过“我的工作有什么价值”。
3.2 求职辅导到底辅导了什么
说实话,结课两年里我和一些当初一起上课的学员还有联系。混得好的人有一个共同点:他们都认真对待过课程里的求职辅导模块,而不只是把它当成模拟面试的彩排。
至少有四点,是求职辅导真正教给我的东西。
第一,岗位匹配意识。AI应用开发这个方向特别宽,有做agent编排的、有做RAG优化的、有做模型微调的、有做Prompt工程落地的。求职辅导教会我的不是去投所有岗位,而是按岗位描述反向调整自己项目里的侧重表达。你面试的是RAG方向,就多说你知识库设计的细节;你面的是agent方向,就多讲工具调用中的兜底策略。
第二,STAR法则的变体运用。以前我讲项目总爱说“做了个XX系统”,正确的做法是用“背景-任务-行动-结果”四段结构。求职辅导课程让我把每一个项目都拆成这个故事线,而在面试时,面试官最容易被这条线带着走。
第三,不会回答时的“拉回话术”。真实面试一定会遇到不会的题。辅导课教的不是“硬编”,而是诚实说“这个方向我了解有限”,然后立刻把话题拉回自己熟悉的地方——“不过这在某次项目中我们遇到过一个类似的点,当时我们是这样处理的”。这个话术是真救命,能避免很多候选人因为一个卡壳就丢掉整体分。
第四,谈薪与offer选择的门道。这块较少人提,但辅导课确实反复强调过:AI应用开发不像纯算法岗那样有公认的薪资锚点,不同行业、不同公司差异巨大。它建议我们了解市场上同区域同规模公司的薪资区间,避免漫天要价,也不要贱卖自己。
3.3 中小自研公司的AI应用开发岗位多吗
这是我在这批热搜词里看到的一个高频问题。基于我这两年接触到的圈子,明确说:岗位数量不算暴多,但确实在稳定增长,而且有一个特点——中小自研公司招AI应用开发,比起学历背景和论文,更关心快速落地能力。
我身边的几家公司都是百人上下、有自研产品的中小型公司。他们一般不设独立算法团队,甚至没有专门的AI部门,落地的模式基本是“业务负责人+后端工程师+AI应用开发”的三角组合。他们要招的AI应用开发人员,需要做的是:把大模型能力接入现有业务、搭一条相对稳定的Prompt或RAG链路、用低代码或代码方式快速交付一个内部工具,然后持续调优。
这个画像决定了他们非常看重项目实战:你必须证明自己“到岗一个月内能独立交付单点功能”。这也是为什么我建议那些正在上AI应用开发课的人,把时间重点压在项目实战上,把自己的课程作业当成“入职前摆给面试官看的Showcase”来打磨,求职辅导里教的简历与面试技巧才有地方落。
4. 从课程到岗位:一份可复制的AI应用开发学习路线
4.1 阶段一:打地基,别急着调大模型API
很多新手的问题不是不会调API,而是基础数据结构、Python语法、接口调试还不过关,直接就上大模型应用,出了错都不知道从哪里排查。
我建议在正式进入AI应用开发课程前,先确保自己能独立完成三件事:用Python写脚本处理JSON数据;用requests库或OpenAI SDK完成一次API调用并能处理异常;理解基本的前后端交互逻辑。这些能力用两三周就能补齐,但它们会决定你后面是学得轻松还是全靠复制粘贴。
注意不要在这一步陷入算法理论的深坑。应用开发和算法研究完全是两码事。你在做的是产品,不是论文,只需要知道模型大概怎么工作、有哪些能力边界就足够了。
4.2 阶段二:主攻Prompt工程与API调用范式
这是AI应用开发最核心的日常能力,也是我面试中考察最密集的一个环节。
你需要掌握的不只是“写一段好的Prompt”,而是一套完整的方法论。具体包括:系统提示词与用户提示词的边界划分、少样本示例(few-shot)的选取策略、输出格式约束(JSON、Markdown结构)、温度与Top-p对输出随机性的影响、上下文长度控制与经济化调用。
我在面试里最长问的一个问题是:“如果用户的输入长度超过上下文窗口怎么办?”能答出“截断还是摘要取决于业务”、能进一步说出“先做检索压缩再进大模型”的人,基本已经跑赢80%的候选人。
这里可以配合“愚公系列”提到的扣子这类低代码平台来练手。它内置了很多Prompt调试功能,能很直观地看到不同参数对输出的影响,适合在这个阶段形成手感。等你能熟练地在界面上把结果调稳,再去逐个阅读底层文档和源码,理解会深刻得多。
4.3 阶段三:动手做一个完整的Agent应用
从学习到面试的转折点,就是你第一次独自完成一个Agent应用。所谓Agent应用,是指具备自主决策能力的大模型系统,它通常包含规划、工具调用、记忆管理和反思修正几个模块,比起单纯的“请求-响应”模式,这是目前AI应用落地里企业需求最汹涌的方向。
我建议项目复杂度不要太高,从一个小而完整的业务开始,比如做一个自动整理销售线索的agent,或者做一个会议纪要自动同步到项目管理工具的agent。开发时建议先在设计层面画清楚agent的主流程:接到任务后先拆解成哪几步?每一步调用什么工具?工具返回异常时是重试、跳过,还是让用户重新输入?这些东西想明白了再动代码。
课程带给我的经验是,至少经历一遍“完整闭环”:定义需求、设计流程、配置工具、调试纠错、记录效果。这个闭环并不要求你写出什么惊艳的算法,但它会逼你把产品思维嵌入到agent开发中,而这恰恰是绝大多数自学的人在常规教程里学不到的。
4.4 阶段四:把项目做深做透,形成面试弹药
学习路线的最后一环,也是最关键的环节,不学新东西,而是把已做的项目挖深。
具体做法是给每个项目补上三件套:评测方案、性能指标、复盘文档。不要只说“我做了个客服机器人”,要能说“我的知识库支持500篇文档,平均检索耗时200毫秒,首轮回复准确率89%,经过三轮迭代把‘答非所问’比例从百分之十七降到了百分之六”。这些数字才是面试中最硬的通货。
我强烈建议你用产品视角重新看待课程项目:这个项目目前能用吗?它是给谁用的?如果它是给业务方用的,你需要加什么功能?如果性能不行,瓶颈在哪里?这套思考方式会让你的项目在简历上自然长出厚度,比专门花一周去背AI应用开发面试题有效得多。
5. 面试官视角的AI应用开发面试题清单
5.1 基础概念类四连问
AI应用开发必问的基础概念题,其实翻来覆去就那几个。我列了个高频表,方便针对性自查。
| 面试题 | 核心考察点 | 回答要点 |
|---|---|---|
| 什么是上下文窗口?超出会怎样 | 对大模型基本运行机制的理解 | 解释Token限制,说明超出后的处理方式 |
| 什么是模型幻觉?如何缓解 | 应用层最关心的稳定性问题 | 提到RAG知识库、Prompt约束、结果校验 |
| 什么是微调?它和RAG的区别 | 技术选型的判断力 | 说出“知识更新/成本/数据量”来判断何时用哪个 |
| 流式输出是怎么实现的 | 对生产级应用的了解程度 | 能讲出SSE机制就合格 |
这几道题不需要背标准答案,关键是能用自己做过项目的经验去举例。你的项目案例才是答案的证明。
5.2 项目深挖类必考三问
深挖类问题主要出现在项目介绍之后。面试官不是想找茬,而是想确认你项目的真实含量。
一说“RAG项目”,我会问检索链路中的召回质量如何保证。说“Agent项目”,我会问工具调用出错时你的系统怎么兜底。说“Prompt优化”,我会问你是如何量化优化效果的。这三问没有标准答案,但有区分度。能当场脱稿画出系统流程、能说出自己测试过的失败case、能在白板上写出关键调试步骤的,通常都在项目上投入了至少一周以上的精力。
5.3 开放设计类实战题
这种题一般出现在终面或技术加面,比如:“我们想做一个销售部门的智能助手,你会怎么设计?”
这种开放题没有唯一答案,我考察的是候选人面对模糊需求的拆解能力。我听到最好的回答是这样展开的:先问业务痛点是什么(是找资料困难还是写文案低效),再定义优先级(先保文档问答还是先做内容生成),再给方案(哪个能力用API直接调、哪个环节需要写Agent工具),最后说实施节奏(两周内上线可用版本、后续迭代哪些点)。
这套思路其实就是AI应用开发课程项目实战环节训练过的那套逻辑。把它用到面试现场,比任何技巧都管用。
5.4 面试避坑三条
第一条,简历里出现的每一个技术名词,都要做好被追问答不上来的准备。第二条,不要贬低上一个方向或者说“以前工作没技术含量”。第三条,遇到确不知道的问题,坦然承认然后给解决思路。面试官要的是能一起干活的人,不是表演完美的演员。
6. 结课两年后,我最想对正在上课的人说的话
如果让我重上一遍那门AI应用开发课,我会这样调整策略。
第一,用“面试官视角”来要求每次项目实战。每做完一个功能,就问自己:这个功能如果写到简历里,别人会怎么追问?追问我答得上吗?答不上,就回去把这段搞懂,直到能对答如流。第二,求职辅导不要等快结课了才重视。理想的节奏是,在你完成第一个核心项目之后,就用辅导课里教的方法修改简历和准备项目讲解,然后去面试市场里真实试水一轮,把反馈带回来,再做第二个迭代版本。一边试水,一边完善,比一次性准备完再出发有效得多。
第三,别神化AI应用开发,也别轻视它。AI应用开发本质上还是软件工程能力,只是把核心的“智能执行逻辑”交给大模型,把你自己的核心职责放在“搭好上下文、管好数据、控好流程、评好效果”上。这门功夫不吃青春饭,反而越做越值钱,因为它背后是对具体业务的理解深度。
我最近还特别想分享一个从实践中得到的小技巧:无论课程里的项目实战也好,还是你为了面试自己设计的项目也好,一定要交付出一个“有名字的作品”。哪怕这个作品只是跑在你自己电脑上,也给它起个产品名、写个说明文档、做一张简单的演示截图。这个看似多余的仪式感,会改变你对项目的态度,也会改变面试官在听你介绍时的感受,你能演示、能讲故事的项目和一句空洞的“做过的”,传递出去的信息量完全不同。
回到最初那句话,面试官桌上没有人在乎你学了多少,所有人都在等你拿出一个能证明自己的东西。我在两年前没完全听懂这句话的分量,结课两年后的今天,算是真正认清它了。