这是面向面试官的技术面试 Do/Don't 精华清单,主要覆盖算法面试。有些项更适用于 phone screen 或白板面试,但大多数都通用。我在每次作为面试官面试前都会复习一遍,久而久之已经内化到不太需要再依赖它了。
Caution
如果你是候选人,这页不是必读。不过了解面试官关注点会对你有帮助!
Legend
- ✅ = Do
- ❌ = Don't
- ⚠️ = Situational
Before interview
| Things |
|---|
| ✅ | 确保你的环境光线充足。 |
| ✅ | 找一个安静且网络稳定的环境。 |
| ✅ | 确保摄像头和音频可用,测试 VC 工具是否正常。 |
| ✅ | 准备 2-3 道题,并熟悉不同解法。好题通常有多种解法与 tradeoff。 |
| ✅ | 选择不同 topic 的题目,以便识别知识盲点。 |
| ✅ | 熟悉编码环境(CoderPad/CodePen),设置快捷键、自动补全、tab 缩进等。 |
Introduction
| Things |
|---|
| ✅ | 询问候选人是否需要上洗手间或休息。 |
| ✅ | 说明面试流程(介绍、时长、可用语言、最后 5 分钟 Q&A)。 |
| ✅ | 自我介绍,并让候选人自我介绍。 |
| ✅ | 说明将有多道题(如适用),不要求全部做完,且可能会中途打断。 |
| ❌ | 让候选人自我介绍过久。 |
Upon delivering the question
| Things |
|---|
| ✅ | 询问候选人是否做过这道题。 |
| ✅ | 给出一个简单示例及对应输出。 |
| ✅ | 先让候选人讲解思路,再开始写代码。 |
| ✅ | 适当给提示。 |
| ✅ | 如果给提示后仍卡住,给出解法并推进到 coding 环节,以获取 coding signal。 |
During coding
After coding
| Things |
|---|
| ✅ | 让候选人给测试用例并与其一起过一遍代码。 |
| ✅ | 找出候选人遗漏的边界情况,让他补充。用“如果输入是 X,你的代码会输出什么?”来引导,而不是直接指出问题。 |
| ✅ | 记录候选人在每道题上花的时间,便于反馈。 |
| ✅ | 询问 time complexity 和 space complexity。 |
| ✅ | 保存代码(拍照或复制)。 |
| ✅ | 距离结束 5 分钟时及时打断:如“我先打断你,我们进入下一部分”。 |
Wrap up
| Things |
|---|
| ✅ | 让候选人提问,并尽力回答。 |
| ✅ | 感谢候选人并祝他一切顺利。 |
Post interview