最近离职的小伙伴有点多,比较缺人。陆陆续续面试了近十位候选人,一面通过率大约 50 % ,还没有确定的 HC 。
1. 准备工作
搜集简历。发帖、邮件公告、朋友圈、招聘网站,都是简历来源。离开的人有各种各样的理由,待遇差、不喜欢的工作方式、不开心、不受重视,当然也有各种各样的人想要进来。这就像围城,城里的人觉得外面好,想出去;城外的人觉得城里好,想进来。我认为互联网团队保持长期活跃的招聘渠道是必要的。一方面招聘人需要较长周期,另一方面也是警示,避免人员离职导致项目风险,还能与外界随时保持沟通。这次简历主要由 HR 提供。HR 会和候选者沟通,确认基本情况,与我预约面试时间,然后发送一封正式的面试邀请邮件和简历给我。通常,面试会在隔一天的非工作时间段进行。这样是为了避免时间冲突,并准备面试。准备面试主要是,打印简历,挑出简历中的一些关键信息。这些关键信息包括,与职位相关的技能、项目。有些候选者,可能会在简历中使用特殊字体凸显某些关键字,引导面试官。这样也非常不错,前提是确实很熟悉,否则可能适得其反。
2. 面试过程
面试分为如下过程:
- 自我介绍
如果候选者准备了不一样的自我介绍,我会给他表现的机会。如果只是简历内容,我会让他跳过。
- 算法
Leetcode 上面一道中等的算法题。算法题没有强制要求白纸写代码,能给出正确的数据结构、思路、边界就行。主动与面试官沟通,表述思考过程,都是加分项。
- 基本技能
考察工具使用、组件使用、编程语言等。比如 Git 的基本命令、Golang 的一些特性、Docker 原理等。
- 项目
主要关注与职位相关的项目,也考察表达、沟通能力。我会根据表述,提出一些挑战,问一些底层的实现细节。比如,为什么不用 A,而用 B,它们有什么区别; 多进程与多线程的区别;宕机了,怎么办; 有没有关注业内的同类明星项目等。
- 团队介绍
我会简单介绍一下团队的情况,主要负责什么项目,引起候选者的兴趣。如果我认为候选者面试还不错,可能会多说点。
- 候选者提问
最后将主动权交给候选者,解答候选者的疑问。
3. 面试反馈
面试大概有 8 个问题左右,持续 30 分钟到 40 分钟。面试完成后,需要给 HR 反馈面试情况。下面是我的反馈格式:
|
|
如果候选者回答问题没有明显缺陷,并有一两个亮点,相处没有不适感,我就会让候选者通过面试。