直到现在,还有很多软件公司在招聘程序员时,仅仅搞面试,而没有搞笔试。其实,面试和笔试都很重要。两者各具优缺点,互相不可替代。下面俺大致总结一下,面试与笔试,都有哪些优缺点。
面试有如下几个明显的好处,是笔试所没有的:
所谓察言观色,就是面试官通过对应聘者的谈吐、表情、神态的观察,从而加深对应聘者的了解。有经验的面试官,可以在几句话之内,就大致了解对方的性格、心态、自信度、等各种信息。(本系列后面的帖子,会具体介绍一下此技巧)
有经验的面试官在提问时,会随机应变,根据应聘者的回答,动态调整要问的下一个问题。这样一来,面试的效率会高很多。而且,由于问题是动态变化的,没有固定的套路,应聘者较难作弊。
还可以通过面试,制造压力,从而考察应聘者对压力的承受度。有时,俺会找1-2个同事一起去面谈某个应聘者——首先在人数上制造某种压力。然后在交谈的过程中,有人唱红脸,有人唱黑脸。这样一来,就能看出抗压能力了。
说完面试的优点,再来对比一下笔试的。
笔试和面试有一个显著的差别,就是无需单独沟通。所以笔试能为招聘者节省不少时间精力。
假如你招聘的职位比较吃香,可能一下子来了好几个应聘者。如果每一个都单独面谈,会忙不过来。而笔试不需要一对一面谈,可以同时进行,在“并发性”方面优于面试。
在面试中,经常会碰到夸夸其谈的程序员。这些人说起某个技术领域,那是口若悬河、滔滔不绝。咋一看好像很牛X。但如果给他/她一个具体的问题,让他/她写个程序出来,那些没有真本事的家伙,一下就露馅了。
举例:眼下有些计算机系的应届生,问他/她冒泡排序或者二分查找,都能说出个一二三。但是让其写出具体程序(无论是纸笔或上机),很多人就歇菜了。
既然面试和笔试,都不可或缺,那两者该如何搭配捏?俺的做法是分为如下几轮(人事部门的面谈通常放在最后,本文不提及)。
如果每个来公司应聘的人,都一一面谈,面试官会被累坏的。所以,头一轮要利用笔试来过滤掉80%的应聘者。为了达到这个目的,笔试题必须很有讲究。“好的笔试题 ”,才能够把不同能力的人,明显地区分出来。而且,好的笔试题,还可以避免应聘者作弊。
肯定有同学会问:怎样才算是“好的笔试题”捏?其实在“招聘的误区 ”中,俺已经稍微谈到了(参见“只注重死问题,不注重活问题”)。本系列的后续帖子,会更详细地分析这个话题。
笔试过关的人,会安排进行第2轮面谈。
在此,有必要说明一下。所谓的面试,不是纯粹动嘴皮子,偶尔还是要动手的。比如面谈中聊到了设计模式,应聘者号称对XX模式很熟悉,那俺会顺手把简历的背面翻过来,让对方在上面画出XX模式的类图(结合具体的使用场景)。
还有,面谈中该问哪些技术问题,与出笔试题目一样,是有讲究的。要尽量问“好的问题 ”。道理前面已经说过,不再啰嗦。
并非所有人都需要进行第三轮。通常,如果俺要招聘的是一个高成本的开发人员,并且此人顺利通过了头两关,那就会安排进行第三轮“机试”。
上机实战相对于纸笔写程序,会更加真实,更加能看出一个人的实力。关于上机实战的注意事项,俺后面单独写个帖来介绍。俺猜测,会有同学质疑“上机实战”的必要性,俺会在那个帖子里一并解答。
俺不喜欢一个帖子写太长(俺写着累、大伙儿看着也累),所以今天暂且说这么多。下一个帖子 ,聊一下招聘过程中,非技术因素的重要性。
回到本系列的目录
版权声明
本博客所有的原创文章,作者皆保留版权。转载必须包含本声明,保持本文完整,并以超链接形式注明作者编程随想 和本文原始地址:
http://program-think.blogspot.com/2011/03/hiring-experience-1.html
前一个帖子 介绍了笔试和面试的优缺点。今天聊的话题是——招聘应该考察技术还是考察非技术?
之所以把这个话题单独拿出来,写一个帖子,是因为俺注意到:很多公司在招聘时,光考察技术能力,而完全忽略了非技术能力(俺在“招聘的误区 ”中提到过)。今天,俺来解释一下,考察“非技术能力”的重要性。
无论是面试还是笔试,最终目的都是筛选出综合素质(综合能力)较高的人,然后再从这些人当中,找出性价比 最好的。而要评估综合能力,首先就得搞清楚综合能力包含哪些方面。
综合素质有许多种分类法,俺个人比较喜欢把它分为智力部分和非智力部分。
智力因素,就是通常所说的是否聪明。智力的构成,简单来说可以分为:观察能力、记忆能力、思维能力。观察能力负责获取信息;记忆能力负责存储信息;而思维能力则负责处理信息。
显然,思维能力是最重要的。而思维能力,又可以再分为:理解、判断、分析、概括、抽象、推理、创造、等。在这几种思维能力中,最值钱的,应该属“创造”。
那非智力部分,又包含哪些玩意儿捏?这个说来就话长了,俺把主要的列举一下。非智力因素至少 包括了:性格、意志、心态(心智模式)、情绪、兴趣、等。
为啥说非智力因素很重要?俺挑几个来解释一下。
俺很喜欢一句俗话,叫“性格决定命运 ”。这句话彻底道出了性格的重要。虽说性格很重要,但性格没有好坏与否,只有合适与否。招聘的时候,要特别关注应聘者的性格与招聘岗位是否相匹配。假如说你要招一个销售,那性格过于内向的,显然就不太合适。
意志力是克服惰性的关键。意志力越强,就越能够克服惰性。
那什么是惰性呢?俺把它理解为对痛苦的逃避,可以分为生理惰性和心理惰性两种。比方说在冬天的早晨,很多人都不愿意离开温暖的被窝,这就是生理惰性在起作用;再比如一些内向害羞的人,不愿意和陌生人沟通,这就是心理惰性。
显然,在招聘时,尽量找意志力强的人。
当一个人对自己干的事情充满兴趣,那惰性也就会自然消失。因为在这种情况下,痛苦已经被兴趣所引发的激情给压抑掉了。比如一个热衷于打游戏的人,可以通宵达旦,而不觉得疲劳。
所以,招聘时要尽量筛选那些对所从事的工作充满兴趣的人。(关于兴趣的重要性,还可以看看俺刚开搏时写的“老帖子 ”)
关于“心智模式”,俺写过另一个帖子“认识你自己——有关心智模式的扫盲介绍 ”。看过之后,或许你会明白这玩意儿的重要。限于篇幅,此处不再啰嗦。
前面费了很多口水,聊了综合素质的构成以及“非智力因素”的重要。现在来分析一下,眼下很多面试题和笔试题的现状。
Java的考题
final、finally、finalize有啥区别?
String和StringBuffer有啥区别?
C++的考题
指针和引用有啥区别?
sizeof(bool) 是多少?
OO方面的考题
面向对象的4个要素是啥?
算法方面的考题
列举你知道的排序算法?
二分查找的时间复杂度是多少?
看完这几个例子,你是否发现它们的共同点?那就是纯粹考验记忆力 。 前面已经阐述过,智力因素中,重点是“思维能力”。而“记忆能力”的重要性远远不如“思维能力”。如果在面试/笔试中,大部分的题目都是这种类型,直接导 致的后果就是——便宜了那些擅长死记硬背的家伙,而让那些擅长思考的人吃亏(同样的问题,也出现在国内的应试教育体制中)。
除了“无法考察思维能力”这个弊端,上述这些考题也根本无法考察出非智力因素(比如性格、兴趣、心态、等)。拿这样的题目来筛选应聘者,招来的人可能不合群、可能缺乏激情、或许还不能吃苦、或许还眼高手低...
那应该用什么样的题目,才能比较全面地考察智力因素及非智力因素捏?请听下回分解。
回到本系列的目录
版权声明
本博客所有的原创文章,作者皆保留版权。转载必须包含本声明,保持本文完整,并以超链接形式注明作者编程随想 和本文原始地址:
http://program-think.blogspot.com/2011/03/hiring-experience-2.html