http://bbs.yingjiesheng.com/thread-1109024-1-1.html
本人上海某211计算机小硕,学校一般只能自己多努力。今年求职从9月正式开始,目标是各大软件公司的软件工程师。投了多少简历已经忘记了,有些是毫无目的的投着玩,有些是确实喜欢的职位,有些投了简历没去笔试,有些去笔试没面试,也有去面试被刷了的,总结下:
笔试:intel,淘宝,腾讯,百度,google,微软,emc,思科,中兴
面试:oracle,intel,淘宝,腾讯,百度,微软,emc,中兴,华为,百姓网
被据:淘宝(二面),腾讯(一面),google(笔试),百姓网(二面),微软(一面)
面试没去的:marvell(成都职位),摩根。
offer:oracle,intel, 百度,emc,ibm(实习留用),华为,中兴
最终选择了百度,于11月结束了求职之路。回顾这两个多月的求职之路,感受颇多。
简历准备
由于本人从研一开始就在外面实习,所以简历一直在不断更新完善,主要内容包括了学校,专业,实习经历,获奖经历,项目,删除的编程语言,技术,研究方向等。简历从最开始的1页,慢慢发展到最多时的4页,中英文的就8页了,自己也觉得太多了,就开始不断修改完善,加上平时出去面试次数多了就发觉其实面试官看简历基本不会细看,需要把关键点着重指明,让面试官一眼看到,比如学校,学历,实习经历,如果有几个实习经历,最好写与求职职位相关的实习,获奖经历,同样是最好相关奖项,然后是项目经验,项目不在于多,而是突出技术难点,自己的贡献等特点,不要像写项目说明那样写很多没人看的。
笔试准备
笔试主要考察基础知识的掌握,比如编程语言,操作系统,网络,算法,数据结构,一般不会太难,重点是基础知识。
我投的职位主要以c/c++软件工程为主,所以c/c++必须熟悉。我主要看了c++ primer和深度探索c++对象模型这两本书,需要仔细看,每本书都要看几遍。然后就是做网上的c/c++试题,基本上要保证c/c++的笔试题都会做。
对于c/c++底层开发linux操作系统是必须的,比如emc的笔试对linux要求很高,linux编程,linux内核,shell脚本都是要比较熟悉,推荐书籍有APUE,linux kernel development,Classic Shell Scripting。其中APUE对于linux下的开发而已是必须的,如果是做linux下c++的后台那么网络编程需要熟悉,推荐unix网络编程卷1,tcp/ip详解卷1。
网络主要就是考基本的网络概念,大学里面的网络课的教材再复习下就可以了。
数据结构,算法:这个在笔试阶段不是很难,考些基本的内容,比如链表,队列,栈等,需要熟悉基本数据结构,算法,推荐算法导论,编程之美,编程珠玑
面试准备
面试的话和笔试就不太一样,主要考察内容不仅仅是基本知识的掌握,更加强调解决问题的能力,包括逻辑思维能力,表达沟通能力,理解能力。面试其实很难准备,因为不知道对方会问什么。我主要准备了我的项目,必须能够很完整的介绍我的项目,包括项目的内容,用途,难点,项目中的困难等。这个面试是需要平时多练习的,经验多了自然发挥就好了,所以在正式找工作前可以先找些单位练习下面试。面试时关键是不要怕,想说什么就说,要敢于表达自己,即使觉得很傻也没事。当然有些公司的某些职位需要对口人才,如果有相关经验最好准备下,比如淘宝需要海量数据处理方面的人才,那么如果这方面不是很了解可以准备下,但是个人觉得不是很好,大多数的公司还是看重基础能力,学习能力,对于某些需要经验积累的问题还是相对要求不高。
我的笔试/面试经历
9.16日 百姓网面试,投百姓网其实并没准备,只是随便投了个简历,面试也没什么准备直接过去了,面试内容没有算法,没有智力题,很细的问题,关于web方面,没有相关经验,不是很了解,被据了,看来不是很适合百姓网的要求。
9.26 IBM二线经理面试
在ibm实习的,二线经理面试而只是随便聊聊,没问什么,关键是说了她得职业发展,问了我的发展计划等等。
9.27日 中兴面试,中兴面试比较简单,基本就是看着简历问问题,做过什么项目,用了什么技术,对职业规划怎么看待等等,没有技术问题。
9.27日 intel电话面试,intel电话面试主要面试英语,大约聊了15分钟,内容包括学校的学习,课程,实习经历,项目,自己的优势,职业规划,这些内容平时都要用英语准备下,不然面试临时准备用英语会很累。
9.28日收到中兴offer,待遇不是很好,所以拒掉了。
9.29日 intel笔试/面试。笔试主要考c/c++,算法和智力题。题目不是很难,但是比较基础,包括了c/c++的很多内容,算法和智力题也比较基础,但是整张卷子要做到很好也比较难。由于在去intel之前已经在往上准备了c/c++,算法,智力题,所以那份卷子做到不错。笔试后直接面试,intel的面试分3轮,第一个面试的人主要问我的简历,简历上写什么他问什么,问的很仔细,项目的内容,设计方法,难点,遇到的困难等等,不能有点含糊,他会很仔细的追问,不仅问项目,还会问学校的研究课题,论文的内容,发在哪个期刊,看来intel很重视平时的学习和工作,而不只是会解题。
第二轮则没有问很多技术的内容,而是问了团队合作,学校生活,学习,职业规划,觉得主要了解我的性格,爱好,对未来工作的想法。
第三轮是经理面,难点比前面难很多,上来出了个图算法,好久没看图算法了,基本忘记,有点准备不足,勉强对付,不是很好。第二题更加难了,是关于编译器里面表达式优化的题目,基本不会做,在面试官不断的提醒下才一步步有点思路,基本上都是面试官把答案给我了。后来问面试官,他说并不是很看重我解题的答案,而是看我的表达能力,逻辑思考能力,沟通能力,学习能力,这些是最关键的。
intel的面试官当时给了我口头offer,原因在于我那份c/c++的卷子做的不错,intel是做驱动开发,很看重c的能力。正式offer在11月给的。
10.10 IBM CDL总经理面试
9月份IBM二线经理面了,这次是CDL的经理面了,有点紧张,比较level太高了,随便聊了大概10分钟,主要是学校,喜欢什么,以后想做什么,没有具体内容,随便聊天。
10.11日 oracle笔试,面试
oracle有我师兄推荐过去比较顺利。面试分3轮,上来一个技术面把项目介绍一遍比较常规,已经说了好多遍了在其他面试中。然后面试官开始问c++题目,感觉面试官对c++很熟悉,对编译器也很熟悉,主要内容在c++ primer和深入探索c++对象模型书上有。所以关键还是看这两本书。之后问了很多数据结构算法的题目,不是很难。之后上机做个测试,一道编程题,一道智力题。也不难。下午一个老外面试了下,老外面试还是有点紧张的,主要是语言问题。他说的有点太快,听不太懂,不过勉强应付了。第三轮是经理面,没问什么技术问题,就是聊天,关于职业规划,关于他们的项目,关于英语学习,总的考察还是看重学习能力,沟通能力,逻辑思考能力。oracle后来也给了我offer
10.11日 淘宝笔试
淘宝笔试很乱,大家坐在一起,题目不难,但是要全对很难。而且淘宝在杭州不可能去那边,所以只是去试试笔试,心态不是很端正,结果做的不好。
10.13日 google笔试
google笔试纯粹体验,并不抱希望,题目不难,最后一道算法不会,其他还好。
10.14日 淘宝面试
淘宝面试比较难,也许我没准备的缘故吧,上来就是写算法题目,可能淘宝很需要这类人,一面过后,二面,直接问海量数据处理,完全没有思路,从来没有接触过这类问题,所以可想而知,根本不行,被拒了。
10.15日 腾讯笔试
腾讯笔试排场很大,卷子是高考卷子,题目是软考内容,和淘宝一样,腾讯很看重笔试成绩,而我这方面准备不够,是个不足之处,以后大家要去腾讯或者淘宝笔试,需要复习下软考内容,软考内容考的东西很多,很细,包括编程语言,操作系统,数据库,网络,设计模型,数据结构等等,题目总体不难,但是我只得了76分,好多人得了90分。腾讯很看重成绩,所以被拒也是很自然的事情。腾讯给我的教训是需要搞请公司看重什么,腾讯看重成绩,所以要重视笔试,不能随便。我比较看重c/c++,算法,数据结构,linux,对于理论方面复习不够是个失误。
10.16日 百度笔试
百度的笔试形式比较简单,就三部分,第一部分靠c++的stl,第二部分考算法,第三部分考系统设计。形式简单但是题目不简单,不过百度貌似笔试通过了面试时是不看笔试的,关键是百度的笔试内容都是算法设计一类的,比较难给分,可能不是特别看重。要准备百度的笔试有本书要看,编程珠玑,百度的笔试很多题目会来自这本书。当然算法数据结构,c++是必须的,系统设计很重要,包括分布式算法,cache算法等系统结构里面学到的内容。说实话,在求职开始时并没想到能进百度,只是抱着尝试心态参加的。
10.18:百度面试(1,2,3轮)
百度的面试可以说是我所有面试里面的最好。一天1,2,3轮全面完了。
第一轮想对常规,先问项目,然后c++,面向对象,写代码,问算法,没有特别难的题目。
第二轮开始就难了,不问常规题目了,上来是个分布式存储的题目,从来没做过,只能临时想,想给个方案,和面试官讨论,再根据面试官的要求改进,这样一步步修改,虽然最好结果依旧不是最好,但是我觉得面试官看重的是和他讨论的过程。第二题是个算法题,严格的说是数学证明题,完全没有思路,也是在面试官的提醒下一步步进行的。最后面试官问了个常规题,我一下子信心来了,回答的很快。后来问了面试官面试题回答不好是不是会被据,他说关键是看重我的学习能力,分析问题,理解问题的能力,答案对当然好,但是不对也不是说就不要,关键是面试的过程中我是否能够和面试官有效的沟通,能够理解面试官的问题,然后独立分析问题,解决问题,这才是最关键的。
第三轮相比第二轮更加难点,上来给了个智力题一样的游戏题目让我做,有点像编程之美上的游戏nil,题目关键是要找到解题的方法,找到方法就能做出,比较幸运的我找到了,多亏了编程之美,大家一定要看这本书。之后是到文件系统的题目,开始我并没有理解是做个文件系统,用了商用的存储系统,在面试官的一步步引导下设计了一个文件系统。之后面试官问了些其他问题,比如offer选择,职业规划等等。
百度的面试是我发挥最好的一次,与其说我发挥的好不如说是百度的面试官给我这个机会,面试官并不是很看重结果而是一步步引导我让我发挥自己的潜能,所以我在面试中越到后面越觉得不是在面试,而是在很一位高手讨论问题。这是我在其他面试中没有的感觉。所以面试时一定要敢于说出自己的想法,这样面试官才能知道我们的想法,才能引导我们,挖掘我们的潜力。
10.21 华为面试
华为的面试很累,面了1天,我面的销售服务类,这是我投的唯一一个非技术类的岗位,所以关键在于沟通能力,表达能力,因为自己也没什么压力,所以只管说,想说什么说什么,反正也没想过去华为,当做一个锻炼。
10.22 emc面试
EMC是我在找工作开始时最想去的单位,确实是个非常好的公司。因为我在那边实习过,比较熟悉那边的情况,对emc的发展也是很看好。由于实习过,所以面试占了很大优势,过去面试很有亲切感。我原来的manager帮我在面试官那边说了很多好话,所以面试不是特别紧张,顺利通过了。
emc的面试不难,题目很基础,考些数据结构算法,c++,设计模型,关键是基础。3轮面试,2轮技术面,1轮经理面。经理面一般用英语,准备下应该可以对付。
EMC关键要通过笔试,emc的笔试很难,linux的东西很多,内核也很多,算法,数据结构都要准备,还有智力题,c++等等,很多很杂,我花了将近1个月把网上所有emc的笔试面试题都收集了并自己做了一遍。
最终拿到emc的offer但是没能去十分过意不去,emc确实很好,但是可能不是最适合现在的我吧。
10.23 思科笔试
思科笔试是我最后一个笔试,没有太重视,关键是emc面试结束了感觉有点松了,结果面试也没去。
总结下收到offer和被拒的原因:
被据原因:
淘宝:二面海量数据不懂,直接被bs。
腾讯:一面不难,不知道为什么被据,估计是笔试成绩太低。
google:笔试被据,不是很难,但是估计得全对才行。水平不够
百姓网:业务不是特别对口,做网站不擅长。
offer原因:
oracle有师兄的内部推荐,方便很多,而且确实不是特别的难。
intel:c/c++的考试成绩比较好,面试不是特别难,没有做什么题目,加上运气也不错,offer。
EMC:在里面实习过,以前的manager帮我说了很多好话,如果没有实习过估计也没戏,不过面试确实不怎么难,笔试比较难。
华为:一般都能进
百度:意料之外的offer,开始找工作完全没想到去百度,去百度面试是我所有面试中发挥最好的,可以说超长发挥了。可以说百度激发了我的潜能。
ibm:在那边实习的,拿到百度offer就拒了。
面试没去的:marvell(成都职位),摩根。
marvell是成都的,有点不够成熟,明知道自己不会去成都还投成都,有点不好。而且回复了面试短信又不去,做的很差劲。以后不能这样,要果断点。
摩根:投行it不是太适合希望长期从事技术的。
总结:
外企十分看重学生的基础,综合素质,沟通能力,英语。他们认为很多东西慢慢学习是可以学的好的,并不一定要有相关背景,可以招进去慢慢培养。
民企更看重人的实际能力,更像是社招,需要有相关背景的多些,比如淘宝,百姓网,腾讯等。腾讯和淘宝很看重笔试成绩,需要好好准备。
最终选择百度而不是emc,intel,ibm这类外企的原因不是说百度比外企好,而是百度这类民企更加适合刚毕业的我。外企普遍的情况是比较清闲,并不是特别适合当下的我,所以去了百度,不知道是不是正确,但是我想刚毕业应该去百度尝试下,何况百度是我意料之外的offer。