走自己的路,让别人去说吧------《程序员笔试面试宝典》

这是我第一次找工作,现在把自己找工作的一些情况以及心得整理出来,一来对自己的经历作一个总结,二来可以为师弟师妹们提供一些信息。本人本科专业计算机科学与技术,毕业后直接保送了本校的计算机软件与理论专业读研,研究生阶段从事的基本都是软件类研发工作。

1.无悔的选择

在研二时,我就开始纠结于找工作还是继续念博士之间,但紧迫感不够。到了研三,不能再犹豫了,我做的决定就是先找工作,看看找的情况,毕竟找工作是一份很宝贵的经历。对于工作,我真正拿到了4个offer:华为的软件研发、阿里云的无线平台开发、百度的客户端研发和腾讯的后台研发。但最后我还是选择了攻读博士学位。

2.出师未捷身先死

我是从研二放暑假回学校后开始着手找工作的,应该算比较晚的,复习的内容其实就是面试指南、《编程之美》和各种专业课书(如数据结构、操作系统、计算机网络等)。现在校招的时间越来越早,当第一批公司来的时候我还有很多内容没有复习。

来的最早的公司是联发科,毕竟是第一次找工作,当时我心里还是很紧张的,笔试题不算难,我顺利过关了。接着就是一面了,一面大概半个小时的样子,主要问的就是实验室做的项目,一面结束后等待二面消息,可是当身边很多同学都收到二面通知时,我却依然没有收到二面通知,第一次找工作就碰壁,当时对我打击还是挺大的。后来我静下心来总结了一下这次面试失败的原因,其实联发科问我的问题并不是特别高深,都是一些基础知识,失败的主要原因我觉得在于两点:第一点是面试太紧张;第二点是准备不充分,尤其是项目部分,与面试官的沟通不是很好,面试官对我做的项目应该没有什么了解,而我又没有提起面试官的兴趣,因此我说的话面试官不懂,面试官问的问题我也没有清楚明了地回答。

3.过五关斩六将

接着9月下旬华为、中兴等公司陆续开始了校招。华为面试的场面非常壮观,每天参加面试的学生数以千计,4轮面试不停,我是从下午一点开始面试的,第一天直到晚上九点才面了三轮,而第四轮面试需要等到第二天,于是我拖着疲惫的身体返回学校。华为的面试一共分为4轮,分别是:技术面试、机试(上机编程)、性格测试和HR(人力资源)面试。技术面试就问了一下实验室项目然后让写了个简单的程序就通过了,接着是上机测试与性格测试,机试并不是要求编写的程序完全正确了才让通过,而是根据写的程序进行打分,然后参照同一批人的水平来决定是否通过,其实通过率还是挺高的。而最关键的就是性格测试了,很多人都在性格测试这一关止步了,实在可惜,我一个同学就因为性格测试的时候仔细斟酌,害怕回答得不好,最后没有通过性格测试。对于性格测试,我的心得就是不要太紧张,放轻松点,做题前后要保持一致,尽量不要前后矛盾,按自己的真实想法耐心回答即可。第二天进行的第四轮面试其实也只是随便聊聊天,面试官就问了一下我的家庭背景以及一些与技术无关的问题,接着就直接发给我口头offer了。

之后是百度、腾讯和阿里云三家互联网公司,我感觉百度最注重算法,面试时间也最长。其实能拿到这3个offer我个人觉得很重要的一点就是心态,我去面试这三家公司的时候心里很放松,没有一点紧张,我就权当是去锻炼锻炼,这样效果反而会更好。当然也不是只要不紧张就可以了,面试成功的因素是多方面的,与你碰到的面试官,当年的就业形势都有很大的关系。但是在自身方面,除了心态好,还有就是要有充分的准备,尽量把自己会的面试官也感兴趣的东西告诉面试官。在项目方面因为有了之前面试的经验,我在与面试官讨论项目的时候越来越熟练,对项目的理解与总结也越来越好,因此讨论项目这一部分我的问题越来越少,而且我个人认为不仅要对自己做过的每一个项目做充分准备而且一定要实话实说,因为每家公司注重的与感兴趣的内容不同,或许他们会对你没有准备的项目很有兴趣,如果这时候你显得很生硬,那么就对你不是很有利了。在我面试期间,阿里云对于我曾经参与过的与编译器有关的项目很感兴趣,而百度则对网络安全中的身份认证感兴趣。当然,实话实说的意思是不能说假话,但是并不意味着要把所有实话都说出来。如果说假话被面试官拆穿了,那么就彻底没戏了,有时候可能有人会抱着侥幸心理,不过我碰到的这三个公司的面试官对我简历上写的项目总有一个会很熟悉,有的甚至不止熟悉一个,因此还是踏踏实实、实话实说比较保险。这三家公司的面试题与华为、中兴的区别甚大,他们更注重的是你的能力和反应,一个问题面试官可能会与你讨论很长时间,如果很顺利地回答好了,那么面试官会将这个问题延伸,如果不能回答出来,面试官会给你提示并且与你讨论。总之你和面试官交流的过程就是把自己的能力展示给面试官看的,就算回答不出来或者答得不完美其实也没有很大的关系。

4.成绩第一

除了心态好、对项目熟悉之外,就是技术了。我在面试过程中,虽然没有把面试官问的问题全部回答出来,但是也差不多,因为有很多面试题涉及的知识都是我以前在实践中或者在技术书籍中看到过的,在研究生阶段我利用课余时间看了不少专业书籍,如《编程之美》、《编程珠玑》、《计算机程序设计艺术》、《Windows程序设计》、《C陷阱与缺陷》、《C专家编程》和《深度探索C++对象模型》等。这些书籍对我找工作的帮助非常大,不仅仅是面试题中可能会出现,考虑问题的思路或者是方法都可以从书中得到启发。

在面试过程中,笔试成绩高还是很有优势的,我在阿里云面试的时候就是得益于笔试成绩很高(后来面试的时候看到的,接近满分),面试过程中面试官貌似对我很有信心,没有特别为难我,尤其是第三轮面试的时候,部门领导直接说已经可以确定我通过了,整个过程中都说我的笔试成绩很好,因此没有问什么技术问题,都是给我介绍他们的工作情况。

拒绝我的Marvell(美满)上海研发中心是一家全球领先的半导体厂商,因为是外企,因此他们对英语有比较高的要求。我很早就投了这家公司的简历,过了很久之后才接到了他们给我的电话,让我去面试,一面结束后我才了解到之所以让我去面试是因为我有参加ACM竞赛的经历,所以在这里插一句,有机会的话一定要尽量多参加一些竞赛,一来可以锻炼自己的能力,二来可以结识一些不错的同学,而且有可能会让你拥有比别人更多的机会。Marvell的面试一共有三轮,三个面试官全都问技术,三面下来花了四五个小时,面试官不同于上面提到的那三家互联网公司那种随和的感觉,每个人都很严肃、很犀利。第一面主要问我算法,让我设计一个两部电梯的调度算法,主要从人性化的角度去考虑,我设计了几个方案之后面试官都不太满意,算法题结束之后又用英语交谈了一下,第二面的面试官主要问的是与项目有关的内容,还有一个与专业无关的测试,问项目的时候问得非常细致,幸亏来之前有所准备,这些结束之后他让我说说如果让我测试一款手机我会怎么测试,越完整越好,由于在此之前我曾去中兴西安研究所参观过手机测试部门,所以就说了一些自己见到的,面试官对我的回答结果应该还算满意。第三面的问题包罗万象,软硬件都有所涉及,软件我还能应付,硬件就有些力不从心了,因为研究生阶段我都没有接触过硬件。当天面试完毕之后我感觉应该没戏,不料过了一段时间我收到了Marvell美国那边的邮件,叫我把GPA和英文简历发给他们,当时我已经决定上博士了,还在准备英语考试,所以就没在意,随随便便发了一下,之后就没回音了,我感觉是因为英文简历不过关。那份英文简历是我在暑假的时候草草做的,没有修改,很多地方都不完善(甚至有语句不通的可能)。虽然没有收到Marvell的offer,不过我的收获还是很大的,这次面试完我知道了自己的知识和水平还有很大的提升空间,只有以后再努力了。

5.走自己的路,让别人去说吧

最后我拒绝了所有的offer,选择了继续攻读博士学位,这里有一些主观原因,也有客观原因。总之,选择了就要走下去,其实每个人都会在生活中遇到很多选择,我觉得不管你选择了什么,只要是你自己的选择就不要后悔,踏踏实实地走下去,坚持是最重要的。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章