怎样才算是好的问题捏?这可是见仁见智,众说纷纭啊。关于问题的好坏,在不同的维度下有不同的标准。今天,俺就从“开放性/封闭性”这个角度来进行阐述。
★什么是开放性问题?什么是封闭性问题?
所谓的开放性问题,就是说问题的答案不是唯一的(通俗地说就是:没有标准答案)。比如说:“如何翻墙?”反之,封闭性问题都有唯一的标准答案。比如说:“三角形的内角和是多少?”
★教育体系导致的偏差
为了让大伙儿更好地体会这两类问题的差异,请允许俺先来恶毒地攻击一下天朝的教育体系。
根据俺的亲身经历,中国大陆的教育体制,是一种极端的应试教育。在这种教育体制下,负责出考试题的人,显然都希望出封闭性问题(因为有唯一的标准答案,容易打分嘛)。而教师为了让学生能考得好成绩,就拼命培养学生解答封闭性问题的能力。
有些理工科的考试用封闭性问题,也就罢了。最恶心的是,有些文科的问题,居然也能搞成封闭性问题(真是不服不行啊)。记得俺初中上政治课,有一道题目是
为什么要坚持四项基本原则?,政治老师写了洋洋洒洒几百字,然后让我们一字不差地背下来......
在天朝之下,虽然各位同学懂得如何应对封闭性问题。但遗憾的是,在进入社会,参加工作之后,很多同学都会发现:工作中碰到的问题,几乎都是开放性问题。光凭这点,天朝的教育制度实在是非常的失败!
费了这么多口水谈教育体制的弊端,俺还想说明一点:天朝的学校里培养出来的好学生,在工作中未必就能力强;甚至是学习成绩和工作能力成负相关的关系。所以,俺在招聘时,通常不关心应聘者的学校、专业、学历。
★如何设计开放性问题?
既然开放性问题如此重要,那如何才能设计出开放型问题捏?可以从如下几个角度来考虑。
◇提问实践性的问题
所谓的实践性问题,就是给定某个需求,询问应聘者该如何实现。通常,给定的需求往往有不止一种的实现方式,因此这类问题通常属于开放型问题。
这类问题往往和应聘者今后所从事的工作内容息息相关,因此是最有效的考察方式。好比你要招聘一个厨师,你当然得询问他/她,某某菜该如何做。
俺招聘软件开发人员时,通常会在笔试阶段,让应聘者完成某个程序。很多人以为,写程序仅仅是考察技术能力,其实不然。俺除了看这个程序本身是否符合需求,还会看程序的代码风格、注释、错误处理等等细节。通过这些细节,可以从侧面了解应聘者的性格。
◇提问理解型的问题
所谓理解型的问题,顾名思义,就是无法依靠死记硬背来回答的。那些单纯靠死记硬背既可搞定的问题,俺称为“记忆型问题”。俺在“学习技术三部曲”(需翻墙)里面提到的“WHAT、HOW、WHY”,可以帮你判断一个问题是理解型的还是记忆型的——WHAT型的问题通常是记忆性的,WHY型的问题通常偏重理解性,HOW型的问题则两者兼有。
考虑到本系列帖子不仅仅是面向IT开发人员,所以俺举一个小学数学的例子(大伙儿应该都上过小学)来说明:
如果问:3的倍数有什么特征?
很多人都能回答:3的倍数就是各位数之和能被3整除。(比如,27是3的倍数,因为2+7能被3整除)
但是问:为什么各位数之和能被3整除,就是3的倍数?
就少有人能答得出来了。
显然,大部分理解性的问题都是开放性问题。它需要被提问的人对问题的领域有一定的理解,才能回答。而且不同的人,理解的角度不同,所以是没有标准答案的。
另外,或许有些擅长背题库的人,也能回答出WHY型的问题。但是由于他/她是机械记忆,并没有真正理解。所以你只要在他/她背完答案之后,针对答案中的某个环节再问一个“为什么”,对方就歇菜了。
◇提问个性化的问题
所谓的个性化问题,就是该问题和被提问者本人密切相关。既然问题特定于某人,显然不会有标准答案(属于开放性问题)。
比如俺在面试XX程序员时(XX表示某编程语言或某个IT领域),经常问:你最近看了什么XX方面的书籍、资料、文章?
假如对方一个都说不出来...
俺会想:此人很可能对该领域没啥兴趣且没啥学习热情。
假如对方说了某本书的名字...
俺就会接着再问:请介绍一下这本书里面,你印象最深的章节。
假如对方支支吾吾说不出来...
俺会想:连印象最深的内容都说不出来,多半是忽悠!
假如对方流利地说出了某个章节的内容...
俺会针对他/她说出的内容,再追问一些WHY型的问题,以考察对方是否真的理解了。
......
经过上述的连番盘问,那些只会背题库,肚子里面没啥货色的,就很难蒙混过关了。
类似的个性化问题,还有如下供参考:
你为什么离开前一个公司?很多应聘者在回答个性化问题时,往往不会说出真实想法——最典型的就是关于
你为什么到我们公司来应聘?
你今后有什么职业规划?
你业余时间都干些啥?
......
你为什么离开前一个公司这个问题。所以,主考官要根据对方的回答,针对性地问出一连串的后续问题。通过不断的追问,如果对方在一开始说谎了,后面就会露出破绽。
◇提问主观性的问题
所谓的主观性问题,就是让应聘者对某些问题发表看法。因为人与人之间是千差万别,所以这类主观性问题也是没有标准答案的开放性问题。
举几个主观性问题的例子:
你理想中的工作环境是什么样的?为什么?通过主观性问题,首先是了解应聘者的喜好;进而可以了解其价值取向,看问题是否深刻/全面;最后,可以分析出应聘者的一些性格特征。
你喜欢用哪种编程语言,哪种开发工具?为什么?
你希望从事哪个方面(UI/网络/数据库/算法/等)的软件开发?为什么?
......
和个性化问题类似,有些精明的(狡猾的)应聘者在回答主观性问题时,会投其所好,故意迎合主考官。为了不被这种人蒙蔽,主考官一定要多问几个“为什么”。
★总结
上述介绍了4种常见的开放性问题。一般来说,实践性问题和理解性的问难,既可以考察技术能力,也可以考察非技术能力;而后面两种,则偏向于考察非技术能力。在安排方面,头两种可以用于笔试和面试;而后两种偏重于面试。
本系列下一篇,谈一谈如何通过笔试题来筛选应聘者。
回到本系列的目录
版权声明
本博客所有的原创文章,作者皆保留版权。转载必须包含本声明,保持本文完整,并以超链接形式注明作者编程随想和本文原始网址:https://program-think.blogspot.com/2011/05/hiring-experience-3.html