高级前端程序员面试笔试宝典
上QQ阅读APP看书,第一时间看更新

经验技巧4 常见的面试失误有哪些?

谨慎是一种习惯,要慢慢养成。

——《悬崖》

“百密一疏”用在程序员面试中再贴切不过了,不管求职者如何小心仔细,失误也是在所难免的。尽管求职者无法完全避免失误的发生,但是通过努力,却可以尽量减少失误的次数,努力将自己的优势不断发挥出来,争取“四两拨千斤”,找一个适合自己的工作。

以下是一些常见的面试中犯的失误,求职者应该引以为戒。

1.非技术性问题准备不充分

程序员面试不仅考查求职者的技术水平,还考查求职者的非技术水平,而很多求职者却厚此薄彼,过度重视技术性问题,轻视非技术性问题,自然也就舍得花费大量的时间去准备技术性问题,而对非技术性问题准备的时间则是少之又少。

很多求职者误以为只要精通C/C++/Java,玩转各种数据结构,技术足够牛,企业没有理由拒绝自己,自然也就能顺利地敲开企业的大门了。其实,技术牛既不是进入企业的充分条件,也不是必要条件,因为企业需要的人才首先必须是一个人格健全的人,如果这个条件都不满足,其他的都是多余的,而非技术性问题的设置就是用来考查求职者性格特征的。一个人如果人品不好,那技术水平越高,对社会、对国家、对人类的危害反而越大。而求职者对于非技术性问题的回答往往会影响面试官对求职者的判断,只有把非技术性问题回答得像技术性问题一样好,面试官才可能露出欣慰的笑容。

2.不做模拟面试

如果要做一场学术交流会或是做全校师生的大会发言,相信很多“新手”都会私底下对着墙壁默念无数遍,以期待面对真实场景的时候不怯场、不紧张,而这种行为非但不会被认为是一件好笑或是愚蠢的事情,反而会被认为是一件认真负责的事情。那为什么不能把这种方式应用在面试中?

模拟面试是提高个人沟通技巧的最有效方式。模拟面试初期,可以不用求助别人,自己将常见的一些面试问题列出来,自己一一作答,直到自己对自己的回答满意为止。通过这种自问自答的方式,不仅可以发现自己在面试过程中存在的潜在问题,并进行有针对性的改进与提升,进而提高回答此类问题的能力,还可以增强个人自信,提高面试的成功率。等到自己差不多能够比较熟练地回答出这些常见的问题时,找一个同学或是朋友扮演面试官的角色,请他帮忙模拟面试,不仅可以增加实战经验,还可以从对方那里发现很多自己可能忽视的问题,何乐而不为?

3.死记硬背答案

程序员面试中的很多问题,也许是“陈芝麻烂谷子”,熟能生巧,反复记忆,在面试中自然能够得心应手,但“授之以鱼不如授之以渔”,记忆总有短路的一天,而解决问题的方法却不会过时。

而且,很多从来没有出现过的问题,不能也不可能靠死记硬背答案而取胜,所以,如果无法保证能够将经典书上的知识倒背如流,那么请不要一碰到不会的问题就直接上网搜索答案或是求助他人,最好的方法就是努力学会独立解决它,学会思考问题的方法。我们脖子上长的是大脑,而不是硬盘,存储知识应该让硬盘去做,大脑要做的事情是分析与思考,只有带着疑问和反问去了解别人的思想,大脑才会发挥出更大的价值,否则,与硬盘有何分别?请记住:思维的深度,决定你人生的高度。胸怀的广度,决定你事业的长度。

4.滔滔不绝或寡言少语

据说,自负的人一般有一个共性:看不起比自己弱的人,嫉妒比自己强的人。所以,没有人喜欢自己身边有这么一个自负的人。

与面试官交流时,话不在多在于精,半天也没有说到重点的废话,不仅会让面试官觉得求职者自负,在故意兜圈子,而且还会让面试官觉得求职者沟通能力有问题。

长时间沉默或者说话都是“嗯、哦、对、是、好的”一类词的人,面试官也不喜欢,会让面试官觉得求职者似乎有所隐藏或是沟通能力有问题。虽然说是金子总会发光,但当你身上披了厚厚的一层灰尘时,待在某一个角落还是很容易被忽略的。而且,对于寡言少语的求职者,面试官不得不猜测他们到底想的什么,而这种沟通往往会让人非常崩溃,与其如此,面试官还不如把更多的精力放在面试其他的求职者身上。

面试官关注的重点不是题目的答案,而是求职者解题的思路与方法,所以对于不太说话的求职者,编者建议:如果面试官提出的问题自己不确定,最好说出来;如果面试官提出的问题自己不理解,最好多问,千万不要慌张,在保持镇定的同时,要多与面试官沟通、交流、讨论,面试官也会很乐于去启发求职者的思维,甚至给出提示。但如果不说话,连基本的沟通都没有,何谈面试成功?

所以,回答问题的时候一定记得,既不要嘴比脑子快,也不要脑子比嘴快太多,把握好节奏,没有想清楚的时候,千万不要随便张嘴。再者就是回答问题要精简,但精简并不意味着放过重要内容,而是用简单的内容概括出问题的答案,同时暗示面试官自己比别的求职者更适合这份工作。

人与生俱来就有两个天赋:聆听和微笑。在面试时,用10秒钟的时间讲,用10分钟的时间听,有本末倒置之嫌,最合理的时间分配是说的时间基本略小于听的时间。根据研究报告显示,最容易被企业雇佣的求职者,在面试中会花费40%的时间进行说,还会花费60%的时间进行倾听,这也正好说明了人只有一张嘴,却有两只耳朵的道理。而且,回答一个问题,最好不要超过2分钟的时间。

5.编码火急火燎

面试中按照面试官的要求,在纸上写代码是一个不可缺少的环节。可是很多求职者往往会犯一个错误,以为越快写完越好,于是火急火燎地把代码写出来,迫不及待地提交面试官,结果漏洞百出,非但没有因为速度快而加分,反而因为粗心大意而被面试官不屑一顾。

编码不是百米赛跑,越快越好,它需要的是耐心仔细,而急中出错,很多需要考虑的边界问题、极限问题、异常问题等都是需要慢慢思考出来的,此时的“慢性子”不仅不会吃亏,相反还会让你完成得更快、更好,错误更少。

6.不会的问题就放弃

面试中,求职者每当遇到不会的问题或是没见过的问题时,就不假思索,果断地放弃。这种“果敢”不仅不会让面试官产生好感,反而会让求职者失去很多就业的机会。在这个世界上,无论你觉得自己多么得了不起,也永远有人比你更强;无论你觉得自己多么得不幸,永远有人比你更加不幸。所以,无论一个人的水平有多高,面试中总会遇到他突然卡壳的难题。而面试中的难题,也是企业为了区分优秀程序员与一般程序员而专门设置的题目。

其实,在这个世界上,没有艰苦的生活就不能激起人们昂扬的斗志,技术人要想拯救自己的生活就要勇敢向困难、向未来开战。敢于向困难开战的人,才有可能成为强者。

如果说能顶住困难的人是高手,那么敢于挑战困难的人则是真正的高人。做高手难,做高人更难,所以,遇到不会的问题是一件再正常不过的事情了,但一遇到困难就放弃,就退避三舍,永远只是懦夫的行为,迎难而上才能彰显强者的品质。不管遇到什么样的情况,只要静下心来努力思考,总会有思路,千万不要在做题的时候气馁和放弃,如果自己都不相信自己,就没有人可以帮助你了。也许最终你还是未能解决问题,但是在解决问题的过程中,你让面试官了解到了你清晰的思维能力以及扎实的基础,这些难得的品质一样能够打动面试官。