招聘面试-01-面试前准备
1.人才画像
1.1 简介
所谓人才画像,就是解决你想招一个什么样的人进来的问题。
以XX系统C++开发人员为例,我希望他是一个这样的人:
基础知识扎实(数据结构、计算机网络、操作系统、算法)
有相关的经验(校招可以是自己做的课程之外的实践、竞赛获奖经验等,社招就必须有过硬的经验)
主动性强、学习能力强、能钻研、能吃苦、对技术热情、踏实、好沟通、会总结(写博客)
稳定性高,愿意留在公司长期工作
好沟通、团队合作意识强
可以看到,上述信息都比较零散,没有结构。这样的结果就是,我们难以综合地、全面地考察一位应聘者是否符合我们的要求。
1.2 工具
这里介绍一个工具,我们可以从知识、经验、能力、动力四个角度来定义你想要招的人。
知识 | 就是知道什么 | 比如: 是否知道软件开发的流程 (先做什么、再做什么、最后做什么之类的) |
经验 | 就是做过什么 | 比如: 是否开发过C/C++的项目 是否做过网络通信方面的项目 |
能力 | 就是能做什么 | 比如: 是否能管理好自己的工作 是否能够有效沟通 是否具备团队合作能力 是否能保证代码质量 |
动力 | 就是喜欢什么 | 比如: 喜欢成为技术专家还是管理人员 |
其中知识和经验可以通过浏览简历和专业问题获得相关精准信息。后者则需要有技巧地去挖掘真实情况,这也就是面试中最需要技巧的部分。
1.3 流程
一个有效的招聘系统应该具有漏斗的效果,每个步骤后只留下最合格的应聘者。设置这种层层筛选的招聘系统的目的就是:找到合适的优秀人才,长期为公司服务。
整个招聘流程应该是分阶段的,一开始可以采用比较省时的方式,比如简历或电话筛选、测评等,过滤出知识、经验基本符合要求的应聘者,而面谈(面试)这种更为深入、费时的方法,只用来筛选那些最合格的应聘者,过滤的内容也更为全面、复杂。
这样的流程,一是可以确保在各个决策点上,应聘者均能受到公平对待,二是也能覆盖所有的考察维度,以确保能全面地了解应聘者的优势和缺点。
下面,我们按照上述方法对XX系统开发人员的人才画像进行定义:
知识 | 开发知识:C/C++语言、数据结构、计算机网络、Linux操作系统、算法 行业知识:软件开发流程 业务知识:校招不做要求,社招需具备XX等软件开发经验 |
经验 | C/C++开发经验(项目、实践等) |
能力 | 学习能力:新技术、项目代码、业务知识 沟通能力:不闷、能讲道理 总结能力:举一反三、写博客之类的 |
动力 | 对技术有热情,喜欢做开发 主动性强 留郑意愿强 |
1.4 例子
在实际的例子中:
第一个步骤是宣讲并接收简历投递。这里需要注意的是,宣讲不能开始得太晚,一般秋季就要开始进行了,开始的越晚,优秀的人才被签走的概率就越大,越往后碰见优秀人才的概率越小。
第二个步骤是在线笔试。这里需要注意的是,如果是线下笔试的话,一般要么分批进行,要么先进行简历初筛把人数降下来,比如按照学历、成绩、意向等把明显不符合要求的人筛选掉,把参加笔试的人数降下来。如果是在线笔试的话则没有这个限制,能测尽测。
第三个步骤是人力资源面。人力资源面主要问一些通用问题,比如学历、成绩、经历、意向、思维、表达、性格、合作、创新等,有些是基本项(如学历、成绩、经历、表达、合作、意向)、有些是加分项(创新)、有些是一票否决项(思维、性格)。
第四个步骤是用人部门面。考察人主要是部门负责人、技术专家等角色,主要针对技术问题进行提问,这里一般会分技术路线或者分职能方向,比如C++/Java、测试、运维等,各有侧重。以技术为例,如果是研究生,主要问些研究方向、项目经历中的内容,如果是本科生,则主要考察基础知识的掌握情况,这里主要侧重经历的真实性、技术含量、对技术的热情等。
需要注意的是,有时候人力资源面和用人部门面会合并一起进行,这个步骤由于人数也不少,一般采用在线面试的方法。这两个步骤会过滤掉绝大多数的应聘者,留下的基本上就是符合要求(大于80分)的人了。
第五个步骤是加试。对于一些特殊的岗位,比如开发岗,可能要求上机编程,这个步骤的目的是区分开80分和90分的人,把那些真正优秀的人筛选出来。
第六个步骤是企业高管(含总经理)面试。这个步骤和上一个步骤一般同一天进行,这个步骤会邀请那些基本合格的候选人来公司面试和笔试。不要小看来公司这个细节,这是企业给候选人营造良好印象的大好时机,对于候选人来讲,经过这个步骤,这个公司就从一个冷冰冰的企业logo变成了鲜活的人生经历,这个步骤可以大大提高offer的有效率。
2.面试前准备
2.1 面试分工
面试分工的目的是使得面试流程进行得有效和高效。
高效体现在:面试者不用重复回答相同的问题,可以缩短整体考察时间。
有效体现在:
- 考察维度更加全面:每个项目将被至少考察一次
- 单个项目考察深入:比如至关重要的维度可以反复考察
- 考察结果比较客观:面试后讨论澄清达成一致意见,避免单个面试官偏见误判
下面是一个例子:
面试分工 | 关键背景资料审查 | 制定决策能力 | 计划组织能力 | 积极主动 | 学以致用 | 专业知识与技巧 | 动力适配性 |
电话面试 | ✓ | ✓ | ✓ | ||||
专业面试 | ✓ | ✓ | ✓ | ✓ | |||
能力面试 | ✓ | ✓ | ✓ | ✓ | ✓ |
在上述例子中,面试分了三轮、共考察7个项目,每个项目至少被考察一次,学以致用等至关重要的能力被反复考察多次。
2.了解资料
主要包含以下三个资料:
- 了解应聘者的学历、工作经验和背景
- 背景与目标岗位是否匹配
- 简历中是否有空白期、重叠期或其他有疑问的地方
例如:
- 学历方面:
- 本科/研究生/博士
- 本科录取批次
- 培养类型(独立/对外合作办学、异地校区)?
- 研究方向/课题,导师
- 专利、论文
- 经验方面:
- 兴趣/作业/毕设/实习/研究课题
- (注意原创程度、团队角色等)
- 背景方面:
- 专业是否对口
- 经历是否对口
- 绩点、排名、保研情况
- 班委、学生会、入党
- 简历疑问:
- 考研二战、三战
- 工作中途考研、行政保研、支教保研
- 本科无项目/实习经历
- 关键信息未提供(成绩排名等)
- 留级、留校
3.设计问题
前面提到,知识和经验一般根据简历和专业提问就可以精准获得信息,而能力和动力则需要有技巧地设计行为问题来考察。
这里的要点是:设计的行为问题要因能力和动力而异。这是因为每个岗位所需要的能力都不一样,如果采用通用的提问方法,得到的回答中可能没有你想要的信息,影响沟通效率和面试效果。比如你想要考察自驱力,你问他平常怎么安排课余时间,他可能会告诉你他喜欢打篮球、看纪录片之类的,然后稍微展开一下,几分钟就过去了,你也不能获得足够有效的信息以做出判断。
具体做法,可参考以下四个步骤:
1.浏览面试目标:基于岗位能力要求,设计问题(有技巧,后面会讲)
2.修订问题:常用问题根据面试目标做下修订,贴近应聘者的实际情况
比如最近面试的非常规面试者基本分这几类:
- 性格、态度、沟通问题:面子做好,不得罪人(防止发帖造舆情),事后直接拒绝
- 专业不对口:问核心专业课中的核心概念(数据结构、计算机网络)
- 实践经历太少:问概念
- 都是其他语言写的:问研究课题相关内容(技术难度)
- ACM比较多:问算法、题目数量、类型、奖励、团队分工
- 实践比较多:挑一个技术含量高的、体现开发能力的仔细问, 问到代码级别
- 没做过C++:从事C++方面有啥优势
3.确定问题顺序甚至面试目标的顺序:
比如简历上提到获得过ACM亚洲区奖牌,可以先问这个,帮助他更快地进入状态。
不一定非得按照知识、经验、能力、动力的顺序来。
4.拟定补充问题:如果常规问题都达不到效果,如何进一步追问
4.规划时间
这里有一个黄金时间定律,就是10+10N。
第一个10分钟指的是:开场+知识经验澄清+结尾预留的10分钟。
第二个10分钟指的是:每个能力需要花费10分钟来收集有效信息。
例如,你想考察5个目标能力,那就需要10+10*5=60分钟的时间。