面试兵法--沟通
面试的过程本身就是面试者和面试官之间进行沟通的过程,但是可惜的是,面试者(特别是应届毕业生)大多沟通能力不强,而且普遍都不重视对自身沟通能力的培养。我在课堂上讲沟通方法时,不少学生觉得我啰嗦,他们说:“老师,只要技术过关就OK了,什么沟通不沟通的不重要!”但是他们面试回来之后,总是会说:“这个问题其实我知道,就是没说好!”实在是太悲哀了,如果面试官问的问题我们根本就不懂,那答不上来也就算了,但是明明我们知道,但是由于沟通能够不够而给面试官留下不好的印象,这就太郁闷了。那么下面我们就一起来看看,怎样才能提升在面试过程当中的沟通能力。
通常的面试,都是一问一答的形式,由面试官发问,面试者回答。面试官根据回答的内容来判断面试者是否适合该公司的岗位。也就是说能否应聘成功,取决于面试官对面试者的印象。有了这个认知之后,我们就可以认真的想一想,在面试当中应该抱着怎样的目的来和面试官沟通呢?对了,我们的目标是给面试官留一个好印象。紧接着的问题就是,怎样才能给面试官留下好印象呢?主要有以下几个方面的因素:
第一,回答问题尽可能的完整。有些同学回答问题,让面试官觉得像在挤牙膏,问一句答一句,好好的一个问题,非要分成好多次才能答完。请大家想想,一个面试官每天可能要面十几个人。碰到这样的面试者,他不累么?他不郁闷么?郁闷的结果是什么?想必大家都猜得到!要想做到这一点其实也不难,具体的方法我会在稍后为大家列出一个回答面试题的套路,只要能够套用这个套路,就可以很好解决这个问题。
第二,回答问题要有逻辑性。我们面试的岗位通常都是程序员,这个岗位对人的逻辑思维能力要求很高。一个说话颠三倒四的人,还有什么逻辑性可言?想让自己的语言有逻辑性并不难,不需要你去研究黑格尔的《逻辑学》,更不需要你花大笔的钱去参加相关课程的培训。因为通常我们的日常对话只包含两种逻辑,第一是时间顺序逻辑,第二是重要性逻辑。拿两道面试题举例。第一道题目:请简述Servlet的生命周期。对于这个题目的回答就应当选用时间数据逻辑,从Servlet对象的创建开始,按照它的时间的顺序逐一的解释生成、初始化、提供服务和销毁的过程。第二道题目是:请简述抽象类和接口的区别。这个题目的答案没有明显的事件线索,我们就可以采用重要性逻辑,也就是说假设抽象类和接口之间的区别有五个方面,你应该选择最重要的那个方面先讲,然后是次重要的,然后是再次,以此类推。是不是很简单?当然在本文当中不可能把表达当中的逻辑阐述清楚,如果大家希望能够更进一步的提升自己的逻辑性,推荐一本书——《金字塔原理》,这本书是由麦肯锡公司的咨询顾问编写的,对于提升沟通技巧非常有好处。请放心,它不但很有用,而且很有趣,我相信大家不会有任何的枯燥感!
第三,尽可能的将面试官所提出的问题都回答上来。大家肯定觉得这句话是废话,能回答上来的问题,我肯定答啊,关键是碰到不会的问题怎么办?对于这个问题,我想首先纠正大家在想法上的一个误区。大家都认为在面试的过程当中,面试官是主导者,他掌握着面试的进程,想问什么就问什么。其实并不是这样的,面试者只要能够掌握一种技巧,就可以掌握面试的主动权。在讲解这种技巧之前,我想先给大家讲一个故事。在2006年末,我在一所大学里讲课,校方把我安排在博士生的宿舍,和一个研究农学(具体是什么方向我记不清楚了)的博士住在一起,我们况且就称他是A博士吧。刚认识A博士的前两天,我发现他每天愁眉苦脸,一问才知道,当时他正被毕业论文和答辩搞的焦头烂额。因为在博士在读期间他为了挣钱,基本上都在外面接私活干,主要是为种子公司培育新的黄瓜品种,没有为毕业答辩做准备。大家也知道,博士生的毕业论文要求非常的高,而且答辩也不好过。所以他现在担心自己毕不了业。聊来聊去的我也就当个“狗头军师”,给他出出主意:
我:还有不到两个月的时间就要答辩了,你论文写完了没有?
A博士:写了个大体的框架,里面的具体内容还没有写。写内容不难,从网上找找,拼一篇就可以了。关键是前两年我都没在自己的方向做太多的研究。我怕搞出来论文以后,答辩的时候老师问的问题我回答不上来!
我:这个确实比较难办,关键是不知道他们都问些什么内容?对了,能不能找找你的师兄,问问他们答辩的时候老师都喜欢问什么问题?你事先可以先准备一下!
A博士:我已经问了,老师最喜欢问的就是 他们自己最擅长的领域!那么多老师,我根本没办法准备啊。
我:说的也是。那你对你们专业的那块东西比较熟悉?
A博士:这两年我没干别的,净种黄瓜了,对国内的黄瓜品种我都非常的熟悉,从育种方法、种子的特性到。。。。。。。(此处省略两万字,大家也知道,像这样的高级知识分子,一旦谈到自己的领域,就开始滔滔不绝,两眼放光了)
我:好了好了,我知道了。看来现在也没什么别的好办法了,我就给你出个主意吧。你的论文就写关于黄瓜以及和黄瓜类似蔬菜的培育方法。其中凡是需要数据论证的地方,你就拿黄瓜举例子。在答辩的时候,你也采用相同的策略,不管老师问你什么问题,你就往黄瓜上面扯。我想就算是你的老师,也不可能比你对黄瓜更熟悉了,这样你既可以把问题都回答上来,又可以让老师觉得你可以理论结合实践,这样不是很好么?
A博士:这个主意貌似不错,也只能这样试试了。
两个月以后,他顺利的通过了自己的毕业答辩。当然我这个“狗头军师”也顺利的蹭到了一顿大餐。其实大家都应该已经发现了,A博士的答辩和我们的面试有很多相通的地方。
1)面试官和答辩组的老师所提的问题的不确定的,这些问题很大程度上取决于他们所擅长的领域;
2)面试和答辩是否通过取决于印象的好坏;
3)面试者的知识范围通常都小于面试官,所以他们总会落入被动当中;
在这样的前提下,我们怎么才能变被动为主动呢?最简单的方法就是将面试官的思路引导到我们所熟悉的领域。还是拿刚才的那两道题目做例子。在回答完Servlet的生命周期之后,可以加上这么一句话:“在Web应用的开发过程的当中,Servlet通常会充当MVC模式当中的控制器角色”。同样的,在第二个问题之后,你可以加上“抽象类主要在模板模式当中使用,而接口的应用范围更广,几乎可以再所有的设计模式当中找到接口,因为使用接口可以很好的接触系统之间的耦合”。这样做的原因是告诉面试官你除了他们所提问的问题之外,还熟悉包括MVC模式、模板模式以及接口的常见用法等。如果面试官对这些内容感兴趣,那么他们就会很自然的顺着你的思路继续的文下去,比如说“能继续说说你对MVC模式的理解么?”或者“能说说你是怎么使用接口的么?”哈哈,上钩了!!!如果他们对你所提到的技术没有兴趣,没关系,我们也没有任何的损失。(当然,实施这个方法的前提是面试者对对自己说提及的技术都非常的熟悉,否则这样做只能惹火上身,如果你对本系列文章当中所提到的技术都不熟悉,那么说明这些文章并不适合你,还是先好好的学习技术吧!毕竟面试技巧只能够锦上添花!)
有了以上的认知,我们就可以指定一个套路,凡是技术问题,都可以使用同一种方式来回答:
1)首先确认面试官的问题。也就是说在必要的时候,可以跟面试官确认一下他的问题,比如说如果问题时“请你简述一下异常总共分哪些种类?”这个问题实际上时有些歧义,因为异常有很多种分类的方法,这个时候我们可以反问一句:“请问您所说的异常是否包含Error?”这样的反问一方面可以帮助我们确认面试官的问题,一方面也可以让我们争取到宝贵的20到30秒的反应时间。
2)首先用一句话对所需要回答的问题进行一个概述;
3)选用时间顺序逻辑或者是重要性顺序来组织你的语言,对问题进行有逻辑的回答;
4)总结整个问题。总结其实就是对问题答案的要点进行重复;
5)用一句话介绍你还了解那些和该问题相关的其他技术;(当然,我还要再重复一遍,你说提到的技术应该是你自己最熟悉的)
好了,一段长篇大论之后,又到了说再见的时候,希望这些内容能对正在为找工作发愁的同学有用。“休息,休息一下!”