You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

175 lines
17 KiB
Markdown

2 years ago
# 08 | 人才招聘招人过程中容易犯的5种错误
你好,我是许健。今天我想跟你谈谈“招人的那些事儿”。
五年前上海研发中心想设置Kubernetes团队就是因为我的团队里有一个在Linux内核方面很有影响力的高级别技术专家最后我才能说服总部在上海部署Kubernetes团队。同样地也是因为我们有一个在OpenStack社区存储方面很有影响力的人才能在上海成立云计算存储团队。
对于一个管理者来说,能不能招到“对的人”,几乎决定了你想做的事儿能不能成。软件和互联网行业尤其如此,一个厉害的员工能影响一个团队,成就一个产品。可如果经理招到一个不合适的人,非但不能提升团队实力,还有可能因为团队不和,导致原来有能力的员工离职。所以,作为招聘经理,我们就得自己承担后果,甚至需要自己把那个不合适的人裁掉。
你看“招人”对经理和团队的成功来说至关重要如果要我说我觉得招人这件事值得我们花费工作50%的精力。那问题来了我们的时间这么宝贵这50%的时间到底应该怎么用才能不浪费呢?
这里需要我们先了解招人时容易犯哪些错误,下面我会用递进的方式,分析常见的问题,带你从简单的注意事项开始,学会如何在招聘时“避坑”。
## 1.向候选人炫技
第一个容易犯的错误就是“炫技”,我自己在早期也犯过这样的错误。我先列举几个面试片段,带你感受一下。
片段一:
> “你能给我讲讲什么叫做CAP吗
> 候选人(卡壳):“……”
> 我:“那我来给你讲一下吧……(超级细致)”
片段二:刚才的问题还有一个升级版本,那就是候选人主动要求面试官给他讲一下。
> “你能给我讲讲什么叫做CAP吗
> 候选人:“好像是分布式系统设计有关的,具体细节说不好,您看上去挺资深的,能给我讲一下吗?”
> 我:开始飘飘然地讲起来………
你可以想想,如果一场面试中,大部分时间都是面试官自己在说,那是我们面试别人还是别人面试我们呢?其次,当面试官在炫技的时候,其实很难判断候选人是不是“对的人”,因为我们只是在考虑自己。这不但偏离了招人目标,而且还白白耗费了时间和精力。
那么正确做法是什么呢?很简单,做任何事情我们都要明确目的。公司安排面试,是希望经理去尽量客观地了解应聘人员的情况,所以我们应该把精力花在**挖掘候选人的信息**上。
面试官才是把握时间和控制局面的那个人。面试不是去证明自己比应聘的人厉害。如果候选人总是“带节奏”反问的话,我们完全可以直接跟他说,现在不方便解答。
如果已经判定这个候选人不行,那就换个简单的问题交流一下,让候选人感觉好一点,然后送他离开;或者让他问两个问题,借机宣传一下我们所在的公司,再送他离开。切记不要说什么“你怎么这么简单的问题都不懂”这一类的话。
## 2.总问是非问题
刚才我们明确了招人时不能自己盲目炫技,而是要更多地收集候选人的信息。这个收集信息的过程,其实就是通过向候选人提问,并根据他们的回答来做判断的过程。那问出好的问题就很重要了。但是很多人在面试时都会犯一些基础的错误,比如总问是非题,而不是开放式问题。
我前面举的那个“让候选人介绍什么叫做CAP”的问题本质上其实就是“是非问题”也就是说问题答案不是“Yes”就是“No”。我们通过这样的问题得到的信息量非常少那怎样提问才能获取更多的信息量呢
这就是我们接下来要讲的——追问细节。通过这个方法,我们可以考察候选人的逻辑能力。具体怎么操作呢?
举个例子,当我们查看候选人简历时,发现里面提到候选人有分布式系统的经验。这时候,我们就可以让候选人给我们讲一下,这个分布式系统设计实施过程中碰到的实际问题,问候选人是如何考虑系统一致性问题,又是如何看待系统可用性问题的。比如我经常会提出的问题有这些:
* 如果我现在还希望有分区容错呢?怎么实现?
* 硬件失效系统行为如何,网络延迟增加系统行为如何?
* 你怎么做监控呢?
我们可以这样一步步地去深挖,追问上线后候选人可能会碰到了哪些具体的问题,并要求他给出细节,看他是怎么解决的。
整个过程需要我们精神高度集中,因为这是在考察候选人的思维逻辑是否清晰,也就是看他是否能够把一件很复杂的事情理得很清楚。
要注意,只要抓住细节,我们就不容易跳坑了。如果这个项目是候选人亲自做的,他一般都能说出具体的实例,比如他踩过的坑、吃过的亏,有些人甚至能说出准确的系统吞吐量、可用性指标等具体数字。
有些候选人表面上看起来逻辑清晰,他会说:“这个问题分三个方面,第一,第二,第三……”
我们可不要被这样的形式所迷惑,而是应该关注回答的内容,是不是真的符合逻辑。说不定他只是用了这个“第一、第二、第三”这样的叙事框架,但内容上却答非所问。
## 3.忽略了候选人抗压能力
在面试中,如果候选人在面临高压时不能保持思路清晰,不能顶着压力坚持不轻易放弃任何一个题目,那多半他在实际的工作中抗压能力也好不到哪里去。
面试时,我们可以用一些递进式的提问方法,从各个角度去考察候选人的思路,给他压力(比如限制时间、增加需求条件等等),看看他的反应和思路。
那我们怎么给面试者营造高压氛围呢?我给你举一个具体例子。
比如我们要考察候选人的系统设计水平就可以要求他设计一个分布式的作业系统。不需要候选人用什么Kafka、Zookeeper、Kubernetes 这些时髦名词,我们就让候选人用最基础的、从无到有的方法讲他会怎么设计这个系统,然后再根据他的回答往下问一堆问题:
* **算法优化**:你现在的实施算法需要遍历两个循环,有没有办法做到一个循环出结果?
* **边界测试**:现在你给我写一下测试用例,怎么把你的系统搞死?
* **监控运维**:系统上线了,你有你的客户,还有你的依赖,如果客户现在到你老板那里投诉你,说系统不稳定,你怎么办?你觉得需要在这个系统里做哪些监控?
* **服务降级**:如果你的依赖挂了,你会怎么办?你的依赖没有死彻底,但是性能下降了,你怎么办?
有些候选人在时间到了以后还坚持说:“再给我五分钟”。我们能感受到他的坚持,感受到他正在全力整理思路。
如果是我,虽然会拒绝给他加时机会,但却会给他留个微信联系方式。如果对方能够在面试结束以后,主动把面试里没有回答得很好的题目重新答好发给我,我一般会再给他一次机会。
这个机会可能是直接给一个项目限期一个礼拜把代码提交到GitHub上然后请他来公司跟我们做Code Review。你也可以这样试试说不定能获得一个意愿和能力都很合适的员工。
如果候选人真的很在乎这个岗位他一定会接这个题目我曾经有一次花两个多小时跟候选人做Code Review做完以后我对他的能力基本就清楚了。而且通过这个交互过程他对这个岗位也会有一个更了解得更清楚。当然这样做也有缺点就是投入很大我们的机会只会给那些我们觉得很有潜力的候选人。
总结一下,其实我们怎么走出总问非问题和忽略抗压能力这两个误区呢?
**其实有相通的解决方法,使用递进的提问方法全面考察候选人,期间观察他的逻辑是否清晰,有没有细节和具体实例。同时,还要关注对方是不是能在压力下够坚持,不轻易放弃。**
## 4.泛泛而问
前面是具体问问题的误区,其实还有对候选人履历没做深挖的误区。问十个项目,但是每一个项目只是浅尝辄止,还不如盯着一个项目,把祖宗十八代都刨根问底效果好。围绕一个项目,你可以这样问:
* 挑一个你最最满意的项目来跟我讲一下吧?
* 你们为什么要做这个项目?
* 你在这个项目中具体起了什么作用?碰到哪些具体的困难?
* 如果再让你做一遍,你会有哪些不一样?
* 你从这个项目里学习到的东西,有在后续的项目中实践过的例子可以分享一下吗?
真正自己做过的事情,候选人的回答一定会有细节,而不只是说一些笼统的原则。
> 我:“你为什么想离开原来的公司?”
> 候选人:“我不大认可现在公司做的事情的意义,我还觉得我的领导做的是更上级领导希望看到的工作,而不是真正对公司有意义的工作”。
**这个时候****我们****千万不要停下来,随意换下一个方向去问,而要盯住这个点深挖**:“可以分享一个具体的例子吗?”“你觉得你的老板是一个什么样的人,他为什么会做出这样的决定?”
面试官精神一定要高度集中,因为只有精神高度集中,我们才能抓到这些要深挖的契机,并提醒自己从那里切入。**对于敏感问题不要不好意思问,不要回避,深入进去。**
那我们要怎么沿着候选人的回答,追问更深入的问题呢?你可以从下面几个角度入手。
* **量化结果**:候选人说提高很多,到底多多少;做得很好,到底什么叫好;受到肯定,具体有哪些肯定;产生效益,到底产生了多大的效益。
* **询问例证**:候选人说一个观点,面试官不要直接就默认了,可以请他举自己身上的例子说明。想进一步了解的话,让他再举一个例子。还可以让他把自己对这个例子的总结、反思过程讲出来。
* **追问原因**:多问为什么。对于候选人的决定,无论是技术决定还是非技术决定,都要深挖原因。
* **考察提升意愿**:同样一件事,候选人回头复盘时,会不会考虑自己能不能做得更好?具体怎么做更好呢?
我们通过这些角度切入,就能有效地深入了解候选人的情况,更全面地评估他是否符合公司、团队的期待。
## 5.只关注技术能力
很多技术出身的经理,面试时可能更多关注候选人的技术能力。原因是技术容易判定,但人性、协作能力这些软实力是很难挖掘的,也正因为难以挖掘,很多人都忽略了这个问题。
那软实力要怎么挖掘呢?我们可以从背景调查和候选人面试时表现出来的逻辑冲突点分析。
我曾经面试过一个人,觉得这个候选人很好,技术扎实、很有主见、超级自信,而且当时所有在场的面试官都给他评了“优”。
但后来做面试总结时却发现了一个问题:这个候选人很强,但是在回答他在原公司的职业发展细节时,却闪烁其辞。这是为什么呢?
后来,我们通过背调才发现这个人的团队协作能力很差,在原公司跟很多人发生过冲突。而这些在面试时都是看不出来的,因为这类问题往往要在激烈冲突时才能暴露出来,而面试中候选人都比较理性克制。
除了背调,我们还有什么判断方法呢?就是找逻辑冲突点,下面的例子就用了这个思路。
有个候选人的教育背景、动手能力都不错,可当他回答为什么选择离开原公司时,完全归因到了原公司待人不公,并给出一些细节做证明,却对自己是否有问题绝口不提。
作为面试的一方,我们并不清楚对方的原公司是否真的有问题,所以面试时我们就根据这样一个逻辑冲突点去引导他进行责任分析。最终发现他在分析责任的时候,会习惯性地把责任归因到别人身上,却缺少对自身的反省。
这种情况很常见,我们要给自己提个醒,候选人口中说的一切(对于原公司和原公司老板的描述)只是候选人的理解,并不代表事实。
不知道你注意到了没有,抓到冲突的关键是我们要对细节高度敏感,发现问题的逻辑矛盾点。比如一个人这么优秀,那他为什么没有在原公司得到重用呢?
这里我想提醒一下,要不要录用协作能力有问题、或者看问题不客观的候选人呢?我们虽然要抱有一定的开放性,但一定要谨慎,绝不能过于乐观。
比如刚刚这个案例中的候选人,他把责任完全推给原公司领导“有眼无珠,待人不公”,我们作为面试官,可不要自我感觉良好,觉得自己就一定比候选人原公司的领导厉害,别人驾驭不住的人我可以驾驭,别人拗姿势拗不过来的人我就能拗过来。
我的建议是一定要谨慎,你可以再问问他对他上上家公司领导的评价,如果他觉得两任领导都不行,那哪怕这个候选人的技术很不错,我也偏向于不招。
**责任归因是常用的软实力考察方法。很多事情都不是那么黑白分明,一般双方都有责任,哪怕自己真的一点责任也没有,优秀的人也会主动反思,会内省。一个人一旦停止从自身发掘问题,他自我提高的过程也就停止了。**
从另一个角度看,如果他说一件事做得非常好,那他会把成功全部归为自己,还是能想到别人的支持呢?其实有错从自己身上先找原因,有成绩也能想到别人的思想,不单适用于候选人,对面试官自己的日常工作也同样适用。
具体操作时,我们可以让候选人列举一些项目失败的例子,或者是候选人经历过的一些逆境,让候选人分析反思。这是为了判断候选人的态度是积极正向的,还是悲观负面的;他是把责任都归咎于外因,还是会主动向内找寻自身的问题。如果老是归责给别人,我们就要小心了。
在面试的全过程,作为面试官我们的精神要高度集中,去观察候选人回答问题时的表情、神态等细节,比如说是自信真诚还是闪烁犹豫。这样就能更好地判断候选人的回答是否为真,有没有夸张。
万事都有因缘,多一个心,至少可以和对方核实一下。**如果核实不了,宁愿不招,也不要因为当前的项目压力就去招聘一个我们存有疑问的候选人。**
## 总结
好了,今天的内容讲完了,我们来总结一下。
招人是组建团队第一步,极其重要,一定要花大力气去做。而经理人在招人容易犯错,本质上都是对候选人的情报没有做全面、细致的收集。要想避免在招人时犯错,就得从简单的方法开始做起,具体怎么做呢?
首先,不要向候选人炫技,要始终牢记面试是尽力挖掘候选人的信息,以便做出客观评价,而不是去满足面试官的虚荣心。
接下来,不要总问是非问题,而是要通过递进的提问来获取细节和具体案例。我们还可以用限时和增加条件的方法,验证候选人的抗压能力。
而且,面试过程中我们需要精神高度集中,才能找准深挖的切入点。我们要“刨根问底”,围绕一个点做系统了解,远比浅尝辄止的效率高。
另外,虽然人性、协作能力这类软实力很难挖掘,但也不能忽略,我们从技术和待人处事多方面切入,才能降低误判概率。在软实力挖掘上,一是可以通过背景调查做挖掘;二是从候选人面试时表现出的逻辑冲突点入手。
总之,想招对人是这样一个思路:以了解候选人情况为目标,通过递进提问、压力测试和深挖项目这三个方向做全面考察,关注技术能力之外也要留心候选人的软实力。做好这些,我们基本上就能招到水平还不错的人了。
## 思考题
在招聘任务比较急、时间比较紧的情况下,如果你在面试过程中犹豫了,哪怕只是直觉上觉得吃不准,你会怎么办?如果候选人是应聘关键岗位的高级别人才,你又会怎么办?
欢迎在留言区晒出你的经历和疑问。如果有收获,也欢迎你把这篇文章分享给你的朋友。