
技术面试里最难受的时刻大概就是被问到一个完全不会的问题。我在一场二面上体验过坚持狡辩的完整下场被问 Kafka 事务消息怎么保证 Exactly Once没用过但觉得能猜顺着幂等生产者开始编——第一层追问糊过去了第二层开始冒汗第三层事务协调器挂了怎么办直接把我钉在原地。那场面试凉得明明白白。后来复盘想通了一个底层逻辑面试官把问题问到你不会的地方多数是故意的。他要的就是一层层追问、探到你的真实边界——这是技术面的常规操作。所以硬编等于在边界上造假追问链必然拆穿你还会让你前面答对的部分也变得可疑。被问到不会的标准动作是三步1. 承认但把边界说精确。不说这个我不会说事务消息我没在生产里用过我对 Kafka 的了解主要在幂等生产者和消费位移管理这一层。这句话传递两个信息我不装以及我会的部分在哪。面试官拿到准确坐标往往会把问题调整到你会的区域继续。2. 把已知迁移过去。没用过它的事务但要做跨分区的原子写大概率需要协调者角色加两阶段提交类似分布式事务 2PC 的思路。——三步里最值钱的一步展示知识结构的迁移能力这比背出标准答案更能说明水平。3. 说出你会怎么搞清楚它。如果岗位用得到我会从官方文档的事务设计入手重点看协调器故障恢复那通常是这类设计最复杂的地方。能指出复杂点在哪本身就是判断力。这套动作我后来在另一场面试实测过被问 Redis 混合持久化细节同样只知道大概三步走完面试官来了句没用过没关系你这个推理是对的。同一种局面两种结果。三种不会别混着处理场景典型感受正确接法概念完全没听过这是什么东西承认 请面试官给一句上下文再迁移推理用过但细节忘了肯定见过想不起来说清用过的场景和结论承认细节记不清别瞎补开放设计题没思路题太大无从下手别沉默把澄清需求的过程说出来——考的就是拆解过程第三种最容易触发硬编式慌乱但它考的不是知识是过程先澄清约束和规模再分层给方案边说边推。为什么会说不会反而是加分项换到面试官视角招进来的人入职后一定会遇到不会的东西这是工程师的日常。他真正要验证的是——你面对未知时是掩饰还是暴露、是停住还是推理。能精确说出自己边界、当场展示学习路径的候选人比看起来什么都会但不知道哪句是真的的候选人用人风险小得多。最后两个提醒三步法只救少数不会的题一场面试一半的题靠它就是准备不足高频题该刷还得刷承认不会之后别道歉式找补哎呀这个真没准备到大方一点姿态本身也是答案的一部分。参考原文面试被问到不会的问题怎么办别硬编我用三步把「不会」答成了加分项知乎同题讨论直接说不懂还是坚持狡辩我的回答