转岗叙事与反问
目录 · 8 题
| # | 问题 | 标记 |
|---|---|---|
| 1 | 为什么从前端转 AI 全栈 | 🔴 |
| 2 | 你的 AI 项目具体你做了什么,哪部分是你独立完成的 | 🔴 |
| 3 | 前端背景在这个岗位是优势还是短板 | 🔴 |
| 4 | 后端和 AI 都不是你的主线,凭什么认为你能补上 | 🔴 |
| 5 | 讲一个你做过的最难的技术决策 | 🟡 |
| 6 | 你怎么跟上 AI 领域的变化 | 🟡 |
| 7 | 面试结尾你反问什么 | 🔴 |
| 8 | 薪资和 offer 怎么谈 | ⚪ |
题目与答案
1.为什么从前端转 AI 全栈 🔴
展开答案
这题筛的是动机的方向:你是被什么东西推走的,还是被什么东西吸过来的。逃离型动机意味着下一个方向卷起来你还会走,面试官算的是招你的沉没成本。
两句会直接失分的话
- 「前端太卷了,想换个方向」——表达的是逃离。而且它暗示你评估行业靠情绪,不靠事实。面试官接下来会怀疑你对 AI 的判断同样是听来的。
- 「我觉得 AI 是风口 / 未来是 AI 的时代」——这是新闻标题,不是理由,任何人都能说。说完这句你和一个没写过一行 AI 代码的候选人在这一题上得分相同。
失分不在于这两句话本身有多离谱,而在于它们没有信息量——面试官从中提取不出任何关于你的事实,只能转去追问技术,你这一题就白答了。
能用的结构:从做过的事推出来的动机
三步,每步都要落在一件具体的事上(下面括号里的都换成你自己项目里的事,不要照抄):
- 起点是一个具体需求:你在前端接过的某个 AI 相关的活。(例如你实际做过的流式输出接入、把模型结果渲染成可交互的界面、给团队做的某个内部工具)
- 那件事让你撞到了前端解决不了的问题:输出内容本身不对、检索回来的片段不相关、首字延迟太久、成本超预算。这些改前端一行代码都解决不了——这一步是全题的转折点,它证明你的动机来自真实的技术障碍,不是来自行业新闻。
- 你为了解决它往下走了一层:具体读了什么、动手改了什么、结果怎样。然后是结论句:这一层的问题我更想解决,而且我发现自己已经在做这一层的事了。
第 2 步是可信度的来源。面试官听到「我发现改 prompt 治不了根,得看检索这一段」时,判断已经变了——因为这句话只有真做过 RAG 排查的人说得出来,参见 04-ai.md 第 9 题。
两个一致性检查,做完再进面试
- 时间线:你说「大概半年前开始往这个方向走」,简历上那个 AI 项目的起止时间要对得上。对不上会被当成临时编的动机。
- 和第 3 题不重复:这题回答「为什么走过来」,第 3 题回答「走过来带了什么」。很多人在第 1 题就把前端优势全讲了,到第 3 题只能重复,显得准备只有一层。
追问「那你为什么不继续做前端,把 AI 交互这块做深?留在前端也能做」:这个追问几乎必来,而且它不是反驳,是在验证你第 2 步说的是真话。答法是承认前提再划边界:AI 交互确实值得做深,而且我打算继续做(这里举你真实做过的那件事);但我在做的时候发现界面能改善的是用户对不确定性的容忍度,改善不了答案对不对——流式和骨架屏能把等待做得不焦虑,参见 01-frontend.md 第 18 题,但检索召回不够、上下文放错、失败没兜底,界面救不回来。我想能对这两层同时负责。答不出这个区分的人,会被判定第 2 步是编的。
2.你的 AI 项目具体你做了什么,哪部分是你独立完成的 🔴
展开答案
全文最重要的一题。面试官用它做一次二分:你是调了个 API,还是做了工程。判断方式不是听你用了什么框架,是听你有没有处理过失败、有没有量过效果、有没有算过成本——README 里写的那三样。
「调了个 API」在回答里长什么样
- 通篇是技术名词罗列:用了 LangChain、接了向量库、做了 RAG。名词是免费的,谁都能说。
- 讲的全是主路径:用户提问 → 检索 → 拼 prompt → 返回。没有一句在讲这条路径断掉的时候会发生什么。
- 效果用形容词:效果不错、用户反馈挺好、准确率挺高。形容词是这一题最大的失分源。
用具体事实替代形容词的三个替换
| 想说的 | 会被追问到崩的说法 | 换成 |
|---|---|---|
| 效果好 | 「回答准确率挺高」 | 「我攒了 N 条 case 做 eval 集,改动前后跑同一批对比,某一类问题从 X 条错降到 Y 条」(N/X/Y 填你真实的数) |
| 稳定 | 「上线后挺稳定」 | 「工具调用失败做了区分:可重试的退避重试 K 次,不可重试的直接返回降级话术,没有让模型自己反复试」 |
| 优化过 | 「做了性能优化」 | 「首字延迟从 A 秒降到 B 秒,手段是某个具体改动;单次请求成本 C 分,靠某个具体手段降到 D 分」 |
右边这一列的共同点是有数、有手段、有对比基线。没有基线的数字也会被追问穿——「降到 1.2 秒」,那之前是多少、怎么量的、量的是 P50 还是 P99。
怎么划清「我做的」和「团队做的」
用三段式,而且主动说,不要等面试官问:
- 我负责的:端到端我一个人写完、出问题我背的部分。这里可以详细讲。
- 我参与的:我写了一部分、方案是和谁一起定的。明确说「这块的检索策略是我和后端同学一起定的,索引和数据同步是他写的,我写的是查询侧和结果处理」这种粒度。
- 我没做但知道的:模型微调、基础设施、数据管道是别人做的,但我知道它大致怎么运作、为什么这么选。
第 3 段是加分项而不是减分项——它证明你有系统全貌,而且证明前两段的边界是真的。全部往自己身上揽的人,反而没有一段可信。
为什么虚报独立性一定会在追问里暴露
因为真做过的人身上带着决策的副产品,虚报的人只有结论。面试官不需要问「真的是你做的吗」,只要问三个技术性问题就能分开:
- 「当时为什么选这个方案,还考虑过什么」——真做过的人有被否掉的备选方案和否掉的理由;只听过转述的人只有最终方案。
- 「这个数是怎么测的」——真做过的人知道测量口径(样本量、P50/P99、是不是同一批数据);虚报的人给的数字整齐得可疑,而且说不出怎么来的。
- 「上线之后出过什么问题」——这个最致命。任何真上过线的东西都出过问题,一个都想不起来,说明你没值过这个班。
崩的那一句通常不是「我独立完成」,而是紧接的那句「具体细节我记不太清了」。它和前一句连起来的含义是:你没做过,而且刚才那句是编的。这个印象会污染整场面试。
追问「这个项目里,如果只保留一个你的贡献,你会保留哪个,为什么」:这是在测你的自我评估准不准,也在最后一次验真。答法不是挑最难的,是挑去掉之后系统就不可用的那个,并说清判据。比如「保留失败处理那块:模型和检索都会偶发失败,没有降级链路的话用户看到的是转圈或者报错,这个是能不能上线的分界;而 rerank 那类是效果好坏的分界,去掉产品还能用」。这个回答顺带展示了你区分「可用性」和「效果」的能力,参见 04-ai.md 第 15 题和第 24 题。挑不出来、或者答「都很重要」的,判定为对自己的工作没有排序能力。
3.前端背景在这个岗位是优势还是短板 🔴
展开答案
标准答案是「优势」,但说「优势」不得分,得分的是你能说出对方缺的具体是哪一块,而且那块正好是你能做的。
抽象化是这题唯一的失分方式
「我有产品思维」「我更懂用户」「我能站在用户角度想问题」——这三句面试官一天听八遍,而且无法验证。说完之后你和任何一个前端候选人不可区分,这一题等于没答。
四个可以点名的具体缺口
AI 团队普遍缺人做、而且做出来普遍难看的东西,按可信度从高到低:
- 流式渲染做对:不只是接上 SSE 显示字,是中断、重试、断线续传、Markdown 边流边渲染不闪、代码块半截时怎么处理、自动滚底和用户上滑怎么共存。这些每一条都是坑,后端同学接完 SSE 就以为做完了。细节在
01-frontend.md第 13-16 题。 - TTFT 的用户感知:后端优化的是接口耗时,前端知道的是用户感知的等待和实际耗时不是一条曲线——首字出来之后用户的等待容忍度会变,所以宁可先出一个字也不要整段返回。这句话说出来,懂的人会立刻认可,因为这是他们量不出来但吃过亏的东西。参见
01-frontend.md第 18 题。 - 评估平台的界面:eval 集要人看、badcase 要人标、A/B 结果要人比。这部分现在大多是 Jupyter notebook 加 print,或者一个没人愿意用的 Streamlit 页面。一个能横向 diff 两个版本输出、能一键标注、能按错误类型筛的界面,直接决定评估这件事在团队里做不做得起来。参见
04-ai.md第 20 题。 - 人工标注工具:同上,标注效率低到没人愿意标,eval 集就永远攒不起来。
前两条证明你在 AI 产品的用户侧有别人没有的手感,后两条更狠——它们是AI 团队的内部生产力工具,直接影响迭代速度,而且没人愿意做。
话术结构:三句,别多
第一句给判断,第二句给对方缺口的证据,第三句落到你能做什么:
「优势,但不是『我懂用户』这种笼统的优势。(第一句) 我看过的 AI 产品里,模型侧做得不错、界面上的问题挺集中:流式一断就整段重来、Markdown 边流边渲染在代码块那里闪、评估基本靠脚本跑完看日志。(第二句,把你真实观察到的填进去) 这几块我做过/能直接做,而且我知道它们不是锦上添花——评估工具做不好,团队就没法量化改动效果,改 prompt 只能靠感觉。(第三句)」
关键是第三句要把界面工作接到工程后果上(评估做不起来 → 改动无法量化),不要停在「体验更好」。停在体验的人被归类为「前端」,接到工程后果的人被归类为「能把 AI 做成产品的人」。
短板要主动说一句
这题不要只讲优势。承认一句「后端的分布式和数据库调优我不如专职后端,这是我在补的部分」,然后立刻转到第 4 题的证据链。主动认边界比被问出来强很多,而且它让前面的「优势」听起来是判断而不是自夸。
追问「你说评估平台的界面重要,那你会怎么设计这个界面」:这是把叙事拉回技术的追问,也是这一题的兑现时刻——夸完自己能做,就得当场做得出来。给三个必备视图:单条对比(同一条输入,两个版本的输出并排 diff,检索到的片段可展开,标注按钮就在旁边)、批量结果(按错误类型分组的失败列表,能筛能排序,点进去回到单条)、版本对比(两次 eval 跑的总体指标加上逐条涨跌,重点是把「哪些条从对变错」单独列出来——总体分数没变但错的换了一批,这是最容易漏掉的回归)。再补一句数据侧要求:每条记录要能追到当次调用的完整上下文,否则界面上看到错了也没法查,这一条对应 04-ai.md 第 3 题。答不出具体视图的人,前面那段「我能做评估平台」会被当成话术。
4.后端和 AI 都不是你的主线,凭什么认为你能补上 🔴
展开答案
这题的敌意是真实的,别当成客套。部门负责人在算一件事:招你之后需要多少人多久带你上手。所以你要给的不是态度,是证据。
「我学习能力强」为什么零分
它是自评,不是证据。所有候选人都会说,包括那些确实学不动的。同一类零分表达还有:我很有热情、我下班都在学、我上手很快。这些句子的信息量是零,因为它们不可验证也不可否证——面试官既不能确认也不能反驳,只能忽略。
判据很简单:一句话如果没法被追问出更多事实,它就是零分的。「我学习能力强」追问不出东西;「我用 K 天从零把某个东西做到能跑,代码在这儿」追问得出一串东西。
证据链的四个环节
按顺序讲,每一环都要落地:
- 我做了什么 —— 具体的东西,有边界。不是「学了 RAG」,是「自己搭了一套检索问答,语料是某个具体的东西,分块和检索策略试了几种」。
- 产出在哪 —— 能被看见的东西:仓库、部署地址、内部文档、demo。这一环是「做了」和「说做了」的分水岭。如果代码不能公开,就准备好口述架构和几个关键决策点,效果差一些但仍然成立。
- 怎么被别人用上了 —— 最强的一环。同事在用、团队采纳了你的方案、别人基于它继续做。「有人用」证明的不只是能力,是你产出的东西达到了别人愿意依赖的质量,这是自学和工程的分界。
- 踩过什么坑,怎么发现的 —— 这一环是防伪。真做过的人有具体的坑(比如切块切断了表格导致检索不到、隐式类型转换让索引失效),照着教程跑一遍的人只有流程。
怎么把这个题库本身当成证据(用法有讲究)
系统性准备可以当作准备度的证据,但不能作为主证据,否则听起来是「我看了很多资料」。正确用法是当第 4 环的载体:
「补的方式是按这个岗位实际要考的东西列了一份清单,把每一块拆成具体问题逐个过:RAG 排查、评估怎么攒 eval 集、成本和延迟怎么权衡,还有后端的事务、并发、索引。过的过程里发现自己原来判断错的地方,比如我以前以为 structured output 保证 JSON 合法就不用校验了,实际上字段语义还是会错,参见我在这块的记录。」
关键是说出一条你被纠正过的具体认知。它一举证明三件事:你真的过了一遍、你有自我修正能力、你说的其它话大概也是真的。只说「我准备得很系统」不如说这一条被纠正的认知。
后端这块该怎么给边界
不要声称对等。给一个可核查的层次:
「专职后端的分布式和调优我不如他们。我能独立做的是:Node 侧的网关和流式转发、Java 的业务层加事务、SQL 能自己看执行计划调慢查询。再往下——比如分库分表方案、大规模缓存一致性设计——我知道选择的依据在哪,但没独立落地过,需要 review。」
三层结构(能独立做 / 知道依据但需 review / 没碰过)比一句「我后端还行」强很多,因为它让面试官能立刻对着自己团队的活匹配你。对应的技术底子在 02-node-java.md 第 10、13、16 题和 03-sql.md 第 3、5 题——说了「能自己看执行计划」,就要真能读出 Using filesort 该怎么处理。
追问「你自己练的东西没经过生产,量级和真实生产差很远,这个差距你怎么看」:不要辩解说「差不多」,这题答「我知道差在哪」比答「差得不多」得分高。差距在三处,主动点出来:一是量级带来的问题不同(自己跑几百条文档不会遇到索引重建、增量同步、并发写冲突)、二是没有真实用户的输入分布(真实用户会问你完全没想到的问题,eval 集靠自己编覆盖不到,参见 04-ai.md 第 20 题)、三是没有值过班(线上半夜出问题的排查压力和成本超支的真实约束,自己练是模拟不出来的)。然后给一句你怎么缩小:把你真实项目里遇到过的线上问题拿出来说。承认这三条的人显得清醒,说「差距不大」的人显得没做过生产。
经历与学习方式(第 5-6 题)
5.讲一个你做过的最难的技术决策 🟡
展开答案
「难」不在技术复杂度,在取舍。面试官要的是:有没有两个都说得通的选项、你依据什么判的、代价你认不认。没有取舍的故事不叫决策,叫任务。
三种会被判失分的选材
- 实际上没有分叉的事:「我们要做实时通信,我选了 WebSocket」——这不是决策,是唯一解。听完面试官只能换题。
- 只讲结果好的事:全程顺利、上线大获成功、没有代价。真实决策一定有被牺牲的东西,没有代价说明你没在真实约束下做过选择,或者你不愿意承认。
- 决策不是你做的:「我们团队决定用 X」——那这题问的是你的领导。要挑你有实际话语权的,哪怕范围很小:一个模块的方案、一次重构的边界、一个第三方库的取舍。范围小不减分,没有决策权才减分。
五段结构,卡在哪一段就崩在哪一段
- 约束:当时的死条件。时间、人手、已有系统不能改、成本上限、必须兼容什么。这一段决定了后面选择成不成立——没有约束的话,任何选择都显得随意。
- 两个方案和各自的代价:都要说得通。如果其中一个明显更差,你的决策就不难。
- 判据:你按什么排的优先级。这是全题最关键的一段——判据是可迁移的,故事不是。面试官记住的是「他按能不能回滚来排优先级」这种东西,因为这能预测你在他们团队里怎么选。
- 代价与兜底:你放弃了什么,怎么控制它的风险。这一段是可信度来源。
- 回头看:如果重来会不会改。这一段是加分段,见下面的追问。
崩得最多的是第 3 段。很多人第 1、2 段讲得很细,到「为什么选 A」时给出「A 更好」「团队更熟悉 A」——「更熟悉」是理由但不是判据,它没有说明在什么维度上更优。判据要长成「在这个场景里,出错的成本比慢一点的成本高,所以我按可回滚性排在性能前面」这样。
AI 相关的取舍最容易讲出判据
如果你有 AI 项目,优先从这几类里挑(都换成你真实做过的):
- 上不上 Agent:多步自主决策的灵活性 vs 可控性和排查难度。判据是「失败能不能定位到哪一步」,参见
04-ai.md第 13 题。 - 效果 vs 延迟和成本:加 rerank、加检索条数、换更大模型都提效果,代价是 TTFT 和单次成本。判据是这个场景里用户等得起多久、这个功能的单次成本上限是多少,参见
04-ai.md第 24 题。 - 要不要上语义缓存:省钱和降延迟 vs 命中错的相似问题返回错答案。判据是错误答案的代价大小,参见
04-ai.md第 25 题。
这三类的共同好处:判据天然是量化的,而且面试官自己每天在做同样的取舍,你的答案立刻可比。
追问「现在回头看,这个决策做对了吗,如果重来你会怎么选」:这题的正确答案通常不是「完全正确」。全对意味着你没从中学到东西,而且听起来不诚实。最好的答法是分开三件事:方向仍然对(在当时的约束下这个选择成立)、执行上有一处会改(具体是哪一处、当时为什么没看到、代价是什么)、判据被修正过(比如「我当时按开发速度排优先级,后来发现在这个场景里可观测性应该排更前面,因为出问题时我们花了三天才定位」)。第三条最值钱——它说明你的决策方式会随经验更新,而不是只积累了一个个案例。回答「重来也一样选」并且给不出任何反思的,会被判定为不复盘。
6.你怎么跟上 AI 领域的变化 🟡
展开答案
这题在筛信息处理方式,不是筛勤奋程度。转岗候选人尤其会被追问这个,因为你的技术判断力还没被岗位验证过,面试官只能从你的信息源和过滤方式来推断。
列清单是最常见的失分方式
「我关注了几个公众号、看 Twitter、逛 HackerNews、订阅了某些 newsletter」——列了一堆但没有一条能证明它改变了你做的任何事。这种回答的问题是它不可区分:一个真正在跟进的人和一个刷信息流的人说出来一模一样。
第二种失分是把「跟上」等于「追新」:每个新模型都试、每个新框架都上手。面试官在生产环境里最怕这种人,因为技术选型的成本主要在维护,不在尝鲜。
答法:三层结构,重点在中间那层
- 信息源分层(这层快速带过,一两句就行):官方文档和 changelog 是一手(模型能力和 API 变更只信这个)、少量固定的高质量二手(挑一两个你真在看的说,别列一串)、社区和讨论只当发现渠道,不当结论来源。
- 怎么判断值不值得投入(这层是得分点,展开说):你的过滤规则。可以直接给出你的判据——比如「先问它解决的是我遇到过的问题吗,没遇到过就只记一笔不动手」「问它替代的是什么,说不出被替代对象的东西通常是包装」「看它的失败模式有没有被作者讲清楚,只讲能力不讲边界的先放着」。规则可以是你自己的,但必须是能拒绝东西的规则——没有拒绝标准的过滤器不是过滤器。
- 验证方式(这层给动作):怎么从「看过」变成「知道」。最小可行验证:拿你已有的 eval 集跑一遍新模型或新方案,用同一批数据比。这句话说出来含金量很高,因为它说明你有基线可比——参见
04-ai.md第 20、23 题,评估集是判断新东西的地基,没有它「跟上」只能靠感觉。
必须给一个具体例子,否则前面三层全空
准备一个真实的:某个东西你看了之后决定不用,说清为什么;再准备一个:某个东西你看了之后动手验了,说清验证方法和结论。决定不用的那个例子比决定用的更有说服力,因为它证明你的过滤器真的在工作。
用你自己真实的经历填。如果你最近确实没有这样的例子,那在面试前找一件小的做掉,比在现场编一个安全得多——编的会被追问版本号、追问具体行为差异,两句话就穿。
追问「最近半年 AI 工程上有什么变化,是你改了做法的」:这题在验第 3 层是不是真的。要给的是做法的改变,不是新闻。结构:以前我怎么做 → 什么信息让我改 → 现在怎么做 → 怎么确认新做法更好。举例的方向(换成你真实经历过的):以前靠人工看几条输出判断 prompt 改动好不好,现在固定跑 eval 集加人工抽检,因为发现人工看几条会系统性偏向自己想看到的结果;或者以前把检索内容直接拼进 prompt,后来意识到检索内容是数据不是指令,改成了带隔离标记并且不让它触发工具调用,参见 04-ai.md 第 26 题。答不出任何做法改变、只能罗列新模型发布的,判定为在刷信息流而不是在实践。
反问与谈薪(第 7-8 题)
7.面试结尾你反问什么 🔴
展开答案
「暂时没有」是这一题唯一的零分答案,而且它会追溯性地削弱前面的表现——一个真想来的人不可能对未来天天要做的事没有疑问。反问还有一个实用价值:这是你唯一能主动获取信息的窗口,对方答得含糊的地方就是你入职后要面对的地方。
按对象分层,别混着问
问错人比不问更差:向 HR 问技术架构、向技术面试官问薪资结构,都会显得你没搞清对方是谁。
技术面(同级工程师 / 技术负责人)——问具体做法,暴露不了短板还能展示深度
- 现在的 AI 功能有没有 eval 集,改 prompt 之后是怎么确认没退化的?
- 线上 badcase 的处理链路是什么样的——谁发现、怎么记录、怎么进回归集?
- 检索这块目前的召回瓶颈在哪,是分块、embedding 还是 rerank 那一段?
- 单次请求的成本和延迟有没有硬指标,超了之后一般怎么权衡?
- 前端和模型侧的接口是怎么约定的,流式那一层的错误和中断是谁负责兜的?
- 代码 review 和上线流程大概什么样,prompt 改动算不算需要 review 的变更?
这六个每一个都在展示你知道这个岗位的工程难点在哪。第 1、2 条尤其有效——如果对方答「目前主要靠人工看」,你就知道这个团队在评估上是空白,这既是风险也是你的切入点。
部门负责人 —— 问团队结构、优先级和判断标准
- 这个岗位是新增还是补位?如果是新增,是因为哪块业务的量上来了?
- 团队现在的分工是模型侧和应用侧分开,还是每个人端到端负责一条功能?
- 未来半年最想解决的问题是什么,如果只能完成一件是哪件?
- 你怎么判断这个岗位上的人做得好不好,三个月和一年分别看什么?
- AI 功能的需求是业务方提还是团队自己定,需求被否掉一般是因为什么?
- 这块的技术决策权在哪一层——比如换模型、换检索方案,谁拍板?
第 9、10 条最值得问:第 9 条给你入职后的优先级,第 10 条直接问出考核口径。第 12 条能问出你未来的实际自主空间,很多人入职后失望就来自这一点。
HR —— 问流程、稳定性和成长路径,措辞要中性
- 团队目前的规模和构成大概是什么样,转岗过来的同事多不多?
- 后续还有几轮,大概什么时间给结果?
- 这个岗位的成长路径是什么样的,往上是深入技术还是带人?
- 试用期的考核标准是怎么定的?
会暴扣分的问法,问题本身合理但措辞踩雷
| 别这么问 | 为什么扣分 | 换成 |
|---|---|---|
| 「加班多吗?」 | 直接读作「怕干活」,无论答什么你都已经失分 | 「团队的迭代节奏大概是怎样的,有固定的发布周期吗?」 |
| 「离职率高吗?」 | 暗含你已经在打听团队有问题 | 「团队目前的构成是什么样的,最近半年有新人加入吗?」 |
| 「能不能远程 / 几点下班?」 | 一面就问是把条件放在工作内容之前 | 拿到 offer 阶段再问,那时候问是正常尽调 |
| 「我表现怎么样?」 | 把评价权递出去,还会得到一个客套的敷衍答案 | 「基于刚才聊的,你觉得我在哪块和岗位要求差得最多?」 |
| 「你们公司主要做什么业务?」 | 说明你没做过基本功课,这是最伤的一条 | 先查清楚,然后问「我看到你们在做 X,这块的 AI 功能是这个团队负责吗?」 |
最后一行那个换法(「差得最多」)是这一题的高分选项之一:你得到的是真实的短板反馈,而且它表达的是想改进而不是想被夸。
执行细节
- 现场准备 5-6 个,问 2-3 个就够。多了会挤占时间,而且显得像在念清单。
- 优先问对方刚才提到过的东西,「你前面说到评估这块目前是人工看,是因为 eval 集还没攒起来吗」比问一个准备好的问题得分高,因为它证明你在听。
- 不要问已经在 JD 或官网上写清楚的东西。
追问「你问的这些我们大部分还没做,如果你来了要从零开始搭,你会先做什么」:这个反问经常被反手打回来,而且它其实是一道设计题。答法:先说清判据(先做能立刻减少反复劳动的那件,不先做最完备的那件),再给顺序——第一步把线上真实请求的输入输出和检索片段完整记下来(没有数据后面都是空谈,参见 04-ai.md 第 3 题);第二步从这批真实数据里挑出错的、按错误类型分类,攒出第一版 eval 集,几十条就能开始用,不要等完备;第三步做一个能横向对比两版输出的界面,让改动效果可见,这一步正好是我的强项;第四步才是优化检索或 prompt。然后补一句风险认领:这四步里第二步最容易停摆,因为标注要人投时间,所以标注工具的易用性不是可选项。答成「先上一个 rerank 提效果」的人,会被判断为不知道没有基线就没法确认提没提。
8.薪资和 offer 怎么谈 ⚪
展开答案
这一题标 ⚪ 不是因为不重要,是因为「我想先了解清楚岗位和职责再谈数字」在流程早期是完全合理的回答,不算答不出。真正的错误不是拒答,是在信息不足的时候先把数字说出去。
顺序:什么时候不该报数字
一面 HR 电话里问期望薪资,这时候你手上没有职级、没有薪资结构、没有其它 offer 作为参照,先报的一方吃亏——报低了直接封顶,报高了可能连流程都进不去。这个阶段的答法:
「我对贵司这个岗位挺感兴趣,薪资我希望在了解清楚职级和职责之后再谈。方便的话,这个岗位对应的薪资区间大概是多少?」
把问题递回去是标准动作,不是耍花招——HR 手上本来就有区间。对方给了区间,你就有了锚点;对方不给,你至少知道这家不透明。
被逼报数字时怎么给区间
有些流程必须填一个数才能继续。这时候三条规则:
- 报区间,不报单点。单点会被当成上限来砍。
- 区间的下限就是你能接受的最低值,不要报一个你其实不接受的下限——对方大概率就按下限给。
- 给区间的同时加一句可调条件:「这个区间是基于我对岗位的理解,如果职级或者职责范围和我理解的不同,可以再谈。」这句话保留了你后面调整的空间。
区间怎么定:以你现在的总包(base 加奖金加其它,不是只算月薪)为底,按你的市场判断往上给一个幅度。转岗有一个特殊考虑——你在往一个新方向走,如果这家的技术环境和成长空间确实好,接受一个较小的涨幅是可以的判断,但这必须是你算过之后的选择,不是被压价的结果。区别在于你有没有明确知道自己让了什么、换到了什么。
拿到 offer 之后怎么谈
这是你唯一有真实杠杆的时刻——对方已经决定要你,替换成本在他们那边。
- 先要完整结构再谈总数:base、月数或年终奖的计算方式、是否有股权或期权(行权价、归属节奏、有没有回购条款)、签字费、补贴、社保公积金基数按什么交。只谈 base 会漏掉很大一块。
- 一次把要谈的全部提出来,不要谈成一条再提一条。挤牙膏式的反复议价会消耗对方的耐心和好感。
- 给理由,不要只给要求:理由的合法形式是市场对标、其它 offer、你能立刻承担的额外范围(比如前端加 AI 应用两块你都能接)。「我需要更多钱」不是理由。
- 有其它 offer 就说,但不要虚构。同城同类岗位很容易被交叉验证,编造被发现是直接出局,而且业内会流传。
- 谈不动 base 时换维度:签字费、职级、评估周期提前(比如约定半年而不是一年做一次调薪评估)、明确的项目范围。这些有时比 base 好谈,因为不占用团队的薪资带宽。
- 要求书面:口头承诺的年终奖比例、调薪安排要落进 offer 或邮件。「入职后再说」的口头承诺,兑现率靠不住。
什么情况下该直接走
- 反复压价并且要求你先放弃其它机会:让你先拒掉别家再谈,这是操纵。
- 不肯给薪资结构或职级:连结构都不透明的公司,入职后的其它承诺也别期待。
- 口头承诺不肯写进 offer,尤其是年终奖比例、股权条款、职级。
- 谈判过程中出现施压话术:「今天不签就给别人了」「我们已经很给你面子了」。这个态度是团队文化的样本,谈判时怎么对你,入职后大概也怎么对你。
- 算完之后你自己不满意,但在说服自己「先进去再说」:这个念头本身是信号。转岗期尤其危险,因为你会用「我在转型所以要让步」来合理化一切。
转岗定价的一个提醒
不要在薪资问题上替对方论证你该便宜。「我是转岗的,所以我知道薪资会低一些」——这句话不用你说。你带过来的东西是实的(README 那条口径:能把 AI 能力做成用户敢用的产品,这块 AI 团队缺人),把它当成定价依据的一部分,而不是需要打折的原因。
追问「我们能给的比你的期望低一些,你怎么考虑」:不要当场答「可以」,也不要当场答「不行」。当场答「可以」会让对方怀疑还能再压,当场翻脸则关掉了后面的路。答法三步:先确认差距是不是结构性的(「是 base 的差距,还是总包算下来的差距?年终和股权那部分怎么算」——很多所谓的差距在算清结构后就不存在了);再问差距的原因(是职级带宽的硬上限,还是评估里对我某一块能力有保留?如果是后者,那是可以补的信息);最后给条件式回应(「如果 base 上确实有硬上限,那我想谈两件事:一是签字费或者半年后的调薪评估,二是职级」)。然后明确说你需要一两天算一下再答复——正常公司都接受。这个流程展示的是你会在压力下先获取信息再决策,这个印象本身对入职后的位置有好处。