grilllisted
Install: claude install-skill shaokeyibb/anti-asu-skills
# /grill:出能问穿简历的题
核验报告能告诉面试官"哪里可疑",但**证实或证伪只能在面试现场完成**。这个 skill 的产出就是那几道题。
## 什么样的题算合格
一道好的核验题,必须同时满足四个条件。缺一条就重出。
### 条件一:扎在候选人自己的项目上
题目必须锚定简历上的**具体一条 claim**,问的是"你那个系统里的那件事",而不是一个通用技术问题。
- ❌ "讲一下 Raft 的选举流程" —— 八股,背过就能答,与他的项目无关;
- ✅ "你的 Raft 实现里,如果一个 Follower 在收到 AppendEntries 之后、写盘之前宕机了,重启后它的状态和 Leader 认为的状态会差在哪里?你的代码是怎么处理这个差异的?" —— 必须真的实现过并想过持久化时机才能答。
### 条件二:答案依赖真实经历,AI 无法代答
这是最核心的一条,也是当前最难的一条。候选人可能在面试中借助 AI 辅助(远程面试尤其如此)。因此题目必须让**通用知识失效**:
**让 AI 失效的四种机制**:
1. **锚定私有细节**:答案取决于候选人项目里的具体选择——"你为什么把这个超时设成这个值?" AI 不知道他设了多少,只能泛泛而谈。
2. **要求反事实推理**:从他的具体实现出发推导后果——"如果把你这个锁的粒度放大到整张表,在你那个场景下最先出问题的是哪个接口?" 需要同时掌握实现和场景。
3. **设置前提陷阱**:题目中嵌入一个**错误前提**,正确的回答是先指出前提有误(见下)。AI 倾向于顺着提问者的前提往下答。
4. **要求量级估算**:让候选人用他项目里的真实参数现场算——"按你说的 QPS 和这个数据结构,一天大概占多少内存?" 需要真实数字才能算。
**注意**:目标**不是**防作弊本身。防作弊是次要收益。核心目标是**区分"做过"和"读过"**——这两者的差别正好体现在这些细节上。
### 条件三:带坑
题目里埋一个陷阱,让**只学过表面知识的人自信地掉进去**,而真正做过的人会停下来质疑。三种坑:
- **错误前提坑**:题目断言了一个不成立的技术前提。真懂的人会说"等一下,这个前提不对,因为……"。
- **看似简单坑**:问题表面平常,但正确回答需要意识到一个隐藏的边界情况。
- **诱导坑**:题目暗示了一个流行但在他的场景下错误的答案方向。
**坑必须是技术性的,不能是文字游戏**。目的是区分理解深度,不是刁难人。
### 条件四:面试官能判断对错
参考答案必须写得足够具体,让**不是该细分领域专家的面试官**也能判断候选人答得对不对。因此每道题都要附:
- 正确回答**必须覆盖**的要点(可勾选);
- **典型的错误回答**长什么样;
- **陷阱是否被识破**的判断标准;
- 如果候选人答不上来,**这说明什么、不说明什么**。
## 出多少道题
**3—6 道主问**,按简历上值得核验的 claim 数量定,不要凑数也不要硬砍。
**但每道主问必须配齐三件套**,缺一不可:
1. **参考答案要点**(可勾选,标出关键项)
2. **典型的错误回答**长什么样
3. **答不上来不说明什么**
**追问不限量**——主问下面挂多少层追问都可以,追问不需要配三件套。
### 为什么是"数量宽松、仪表严格"
早期版本硬性要求"��好 3 道",实际效果是**规则被系统性规避**:产出会用"可选追问""收尾题"绕开限制,实际问出十几道,而多