Files
2026-06-06 05:21:10 +00:00

132 lines
5.5 KiB
Markdown
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
---
name: interview-prep
description: 帮用户准备面试。基于目标 JD、公司、岗位方向生成"高频面试题 + 参考回答 + 行为面 / 技术面 / Case 面分类题库",并产出可打印的『面试备战手册』。当用户说"帮我准备面试""明天有面试 / 后天面试""面试题""面经""模拟面试""我要面 X 公司 Y 岗位""帮我准备 STAR 故事""怎么回答这道面试题""自我介绍 / 离职原因 / 优缺点 怎么答",必须触发本 skill。请勿用本 skill 改简历(去 jd-resume-tailor / resume-builder或推荐方向去 job-intent-tracker
---
# Interview Prep面试准备
干 4 件事:
1. **拆解面试场景**:明确目标公司 / 岗位 / 面试轮次(一面 / 二面 / 终面 / HR 面)
2. **生成题库**:从 4 类题库行为面、技术面、Case 面、岗位特定)中按需取题
3. **生成参考回答**:用 STAR / SCQA / MECE 等框架,结合用户简历事实
4. **产出"备战手册"**:一份可打印的 .md / .docx / .pdf含题目 + 参考思路 + 自检清单
---
## 何时触发
强信号:
- "帮我准备面试 / 模拟面试 / 模面"
- "明天 / 下周面试"
- 提到了具体公司 + 岗位
- "高频面试题 / 经典面试题"
- "怎么回答 ___ 这个问题"
- "自我介绍怎么说 / 离职原因怎么答 / 期望薪资怎么谈"
弱信号(先确认):
- 只说"想了解一下面试" → 问是哪个方向 / 什么轮次
---
## 工作流
### Step 1: 锁定面试场景
用 AskUserQuestion 收集:
- 目标公司(具体名字 / 大厂 vs 创业 vs 外资 / 公司类型)
- 目标岗位(精确到方向,如"用户增长 PM"而不是"产品经理"
- 面试轮次(一面 / 二面 / 终面 / HR 面 / 全流程演练)
- 时间紧迫度(明天 / 这周 / 下周以上)—— 影响"广度 vs 深度"
- 用户已有材料JD / 简历 / 公司公开信息 / 已知面试官背景)
如果用户给了 JD 和简历,**先调用 jd-resume-tailor 的 parse_jd.py** 抽出岗位关键信息,避免重复拆。
### Step 2: 选题策略
按"轮次 + 方向 + 时间"决定题库结构。读取对应文件:
- 行为面(任何轮次都会问)→ `references/behavioral.md`
- 技术面(技术 / 数据岗主战场)→ `references/technical.md`
- Case 面(咨询 / 战略 / 高级 PM`references/case.md`
- HR 面(任何岗位的最后一公里)→ `references/hr_round.md`
- 岗位特定题库:
- 互联网产品 / 运营 / PM → `references/role_internet.md`
- 技术 / 研发 / 数据 → `references/role_tech.md`
- 金融 / 咨询 / 商科 → `references/role_finance.md`
题量推荐:
- **明天就面**:每类 5~8 题,重点高频题
- **3~7 天**:每类 10~15 题
- **>1 周**:完整覆盖 + 模拟轮次
### Step 3: 生成参考回答
**关键原则:参考回答必须基于用户简历里的真实经历,不是泛答。**
调用 `scripts/star_story_builder.py`(如果有简历):
```bash
python scripts/star_story_builder.py --resume resume.md \
--questions questions.json --out answers.md
```
或者,如果没有简历,用通用回答框架(从 references/answer_frameworks.md 读取)作为模板,让用户填空。
参考回答的格式:
```
【题目】___
【考察点】HR / 面试官想看你的什么能力
【回答框架】STAR / SCQA / MECE / 5W1H 之一
【建议长度】X 分钟(一般 1.5~3 分钟)
【参考回答 (基于你简历里的 ___ 经历)】
S: 当时的背景 / 问题
T: 你的任务 / 目标
A: 你的具体动作(重点,要细节)
R: 量化结果 + reflect
【可能的追问】1. ___ 2. ___ 3. ___
```
### Step 4: 产出"备战手册"
调用 docx skill 生成一份完整的 `interview_prep_<公司>_<岗位>.docx`,结构:
```
封面:公司 + 岗位 + 面试日期 + 倒计时
1. 公司 / 岗位 速览1 页)
2. 自我介绍(中 + 英两版,针对该岗位定制)
3. 行为面题库X 题)+ 参考回答
4. 技术面 / Case 面 题库X 题)+ 参考思路
5. 反向提问清单(你向面试官问什么)
6. 薪资谈判脚本
7. 面试当天 Checklist路线 / 着装 / 物品 / 心态)
```
**同时输出一份精简版 .md**,方便用户在地铁里 / 路上 review。
### Step 5: 模拟面试(可选 - 用户主动要才做)
如果用户说"模拟一下",进入互动模式:
- 一次问 1 题
- 等用户回答(语音 / 文字)
- 给反馈:内容 / 结构 / 表达 三维度
- 如果用户说"换一题"或"再来一道难的",继续
模拟时**保持面试官人设**:用真实面试官的口吻、追问方式、压力点(但不要变成 attacker要 constructive
---
## 反模式(不要做)
- ❌ 给一份"通用 50 题"应付了事 → 必须按公司 / 岗位定制
- ❌ 参考回答全是"我具有出色的沟通能力"这种空话 → 必须用具体故事
- ❌ 不让用户自己练,全程"我替你答" → 错过模拟价值
- ❌ 编造用户没有的经历做 STAR 故事 → 用户面试时会穿帮
- ❌ HR 面问题答得太"训练痕迹重"(机械化) → 要给"3 个不同风格的版本"让用户选
## 与其他 skill 的协作
- 用户说"我简历不够强,先改简历再来面试" → 转 `jd-resume-tailor``resume-builder`
- 用户说"我还在犹豫要不要投" → 转 `job-intent-tracker`
- 面试结束后用户说"我想复盘一下" → 留在本 skill进入"面试复盘模式",问表现、卡点、追问,帮用户为下一轮做准备