面试时,面试官不仅会考察专业技能,更得考察候选人的软实力,比如候选人的沟通能力,以及团队协作能力,更重要的是,得确保候选人不是刺头,能和现有团队和睦相处。如果发现候选人虽然能力很强,但进团队后由于沟通能力差等因素,无法和团队里有效合作,那么这个人同样是无法应聘成功的。
这方面,有经验的面试人不会直接问,比如不会直接问,你和上个团队相处怎么样?因为候选人总会说好的,至少我面试的候选人都不会自曝其丑。
但大多数面试官能从候选人的谈吐举动中对候选人的软实力进行打分,这里我就结合最近的一些面试实例来告诉大家衡量的依据,大家也可以据此避免一些可能犯错的地方。
或许之前大家在面试时也出现过如下案例中所说的情况,唯一的差别是,别的面试官淘汰你了,但不会和你说原因,你可能也就一直重复这些问题,而我不仅会指出问题,更能给出正确的做法。
这里给出的案例完全是对事不对人,并没有任何想要映射到某个具体的人的企图。
案例一,在闲聊中无意中露出了自己不稳重。
小A来了,我下楼去接他,从见面开始,到进面试方面,小A一直是没话找话,而且说话有些轻浮,不稳重。作为面试官,我只能敷衍他。
这类人,如果技术可以,那么什么都好说,但如果出现可上可下的情况,被淘汰的可能性很大,因为大多数公司想找个稳重的职业素养好的候选人。
正确的做法是,在面试的过程中,包括从面试官接触开始到被面试官送出门,你可以面露微笑,也可以不是特别严肃,但别嬉皮笑脸,更别没话找话。
案例二,没准备好之前公司的离职原因,自曝家丑,兼说如何说离职原因。
这个是我听说的一个案例,候选人小B,被问到为什么要离职,从他的回答中,被面试官听出是因为他上份工作没做好,给公司造成损失,所以在上家公司里呆不下去了。
我不知道最后的面试结果,但这样一来,我估计除非这个候选人能力特别强,否则很悬。
如果大家被问到为什么离职,大家可以从客观情况上找原因,比如要换城市发展,或公司业务方向调整(或干脆关门),总之不是因为大家主观上不稳定,而是客观情况导致不得不换。
如果被面试官感觉是你主观上为了追求高工资低压力的工作,虽然这本身不错,但就会重点考察你的稳定性,而且一旦你最近换工作比较频繁,而且没有足够的解释,那么一定会被面试官认为你可能不稳定。
案例三,回答问题时,话很多,但没法说到点子上。
比如我问,你在数据库层面有过哪些实际的优化经验,同时再强调下,是实际经验,而不是理论经验。
这时如果候选人开门见山地说,没项目经验,但看过一些技术文档,随后再说下看到的一些要点,这样最多就是让面试官感觉这部分能力有些欠缺。
我们也知道,候选人不可能十全十美,在某个方面没有实际经验,这很正常,更况且有时候我们问的是加分项,比如我们要招个初级程序员,数据库层面的实际优化经验是个加分项,哪怕他说不出什么,也没问题。
但这里给大家要强调的是,别为了掩盖自己的某个缺陷,让候选人感觉你表达上有问题,或者谈吐上没逻辑性。
还是拿刚才的数据库实际优化经验举例,我见过一些候选人,的确也能说上些要点,但最后都被归结成“理论经验”,而不是“实践经验”。这样,候选人给我的感觉就是没按要求回答,这就涉及到软实力方面的问题了。
这里给大家的建议是,遇到没接触过或者不大熟悉的问题,尽量别蒙混过关,毕竟面试官经验比较丰富,能蒙过去的可能性很小。这时或者可以干脆承认没这方面经验,或者可以谈些类似的经验。
案例四,回答问题一定得有条理,争取先用最短的话说清楚,然后再展开。
比如我给出了一个场景,然后问这样做是否会出问题。这时我希望听到的回答是,候选人先说出结论,然后说出理由。哪怕候选人结论说错,但理由有一定的道理,那么也算过。
但有些候选人会啰嗦地说一大堆,在五句话后,我还是无法清晰地听出候选人的结论。这时候选人就不是仅仅暴露出能力方面的问题了,我就会给候选人打上“沟通上有问题”或“表达能力不佳”这类的不好标签。
还是这句话,如果候选人在某方面能力不强,这本身问题不大,只要候选人能在其它方面弥补即可,但千万别因此心存侥幸,企图用模棱两可的回答来蒙面试官。
案例五,随着我不断深入提问,候选人会逐渐不耐烦。
我们知道,跳高比赛中,选手大多会以“无法成功挑战某个高度”而告终,在面试里,面试官也会通过一些超越候选人能力的问题来看候选人对某个知识的掌握深度。
比如第一层问题,在Oracle方面,候选人能有哪些调优的经验,这时大多数候选人都能回答出,假设候选人提到了索引。
那么在第二层,我就会问索引的应用场景,哪些地方可以用,哪些不能用,大多数候选人也能说上。
后面是第三层,问下索引的物理结构,以及Oracle对索引的一些内部优化,这时能说上来的候选人一般都很强。
后面还有第四层,如何根据执行计划,查看索引需要被改进,以及如何改进。
从上述四层问题里,我们能看到是逐步推进的,对一般的高级开发来说,能说到第三层就不错了,掌握第二层知识点也行。但我就见过一些候选人,因为回答不上,所以东拉西扯,或者顾左右而言他,或者干脆情绪不稳定。
这时,我就要怀疑候选人与别人的沟通能力,我可能会担心,万一把他招进来,他在和其它人沟通时,会不会也出现这类沟通不善的情况。一旦让面试官有类似的想法,这对候选人就很不利了。
案例六,候选人不擅于表达出自己的想法,或者让人有误解,或者用简单的话来回答问题
比如我问ArrayList和LinkedList有什么差别,各自都适用于哪些场景?
一些不善沟通的候选人就会只说,一个基于数组,一个基于链表,然后需要我不断提示,再不断深入回答。一个两个问题这样就算了,如果大多数问题都这样,那么候选人就可能会被打上“表达能力欠缺” 的标签了。
这里给大家的建议是,首先用适当的语句(当然也不能太多)清晰地回答出问题,然后在面试官许可的情况下,说下这个问题的衍生情况,比如在上述问题里,说出LinkedList是基于双向链表的,同时说出双向链表本身有什么优势。
案例七,在面试中,总是想套出面试官对这个问题的答案。
比如我问java里final关键字作用在类上是什么含义,这是个比较基础的问题,一般候选人都能回答上。但哪怕回答不上,你也别反复套面试官的话,比如说个回答,问面试官对不对,或者根据面试官的脸部表情反复修正自己的结论。
这样会让面试官感觉候选人有些投机取巧,或者至少没主见。还是这句话,会就是会,哪怕不会,也别暴露出自己性格或沟通方面的问题。
根据上述的案例,我们来总结下候选人在面试时应当注意的要点。在java web轻量级开发面试教程里,我已经有所总结,这里仅仅是展示软实力方面的要点。
要点一,一旦你见到面试官,其实面试就已经开始了,你的一举一动都被面试官看在眼里,在这个过程中,你应当展示出自己很稳重,这样就会给人以踏实感。话说回来,面试最长也就一个小时,哪怕装,这应该也不难吧。
要点二,你可以回答不出一些问题,但别让面试官感觉你在沟通表达等方面有问题,更别让面试官感觉你无法和团队成员一起协作(比如得控制自己的情绪)。
要点三,稳重,沟通表达能力强,协作能力强,这些甚至比专业技能更重要,哪怕你通过了技术面试,如果你在这些方面给面试官留下了好印象,那么有些面试官甚至会帮你多争取工资。
最后,我也想不断收集面试的素材,从而提升自己在技术面试官方面的能力,如果大家在这方面有好的经验,或者有类似的素材,也请通过评论等方式来告诉我,谢谢大家。