[ZZ]找工作战术总结

 

 

原文链接:http://blog.csdn.net/csufuyi/archive/2008/11/12/3285743.aspx

 

2008109日淘宝网在中南的第一场笔试,到 2008116日在慎重思考之后,选择中兴通讯(深圳),这是一段难忘的日子。此时时刻,很多公司的招聘仍然在如火如荼的进行着,趁着激情仍在,记录下这段心路历程,希望能对学弟学妹们求职有所帮助。我把整个求职的准备过程分为战略上的准备和战术上的准备,所投职位全部为软件研发类,投其它职位的仅供参考。

战略篇

20085月份,完全搞定了小论文,开始制定找工作的战略规划。由于我研究课题方向是偏理论,已经有接近两年的时间没有做过大的实践项目了。日常所做的工作多为阅读英文论文,讨论其中的问题,提出改进方案,做模拟实验。因此计算机基础知识和C/C++方面的编程能力软不如本科阶段大四保研的时候。我心里很着急,决定5月到9月这段时间一定要狠补充基础,充实项目经验。

首先花了几天时间做了份简历挂在51job上,没想到后来居然还收到了几个电话通知我去面试,最后很偶然的选择了广州的一家公司,花了两个月的时间完成了一个C/C++项目,工作的同时每天晚上复习林锐的《C/C++高质量程序设计》第三版。这本书很早就在网上流传,被奉为笔试面试的圣经,最新的版本加入了很多扩充的内容,完全值得买一本。这本书的阅读方法,最好像高考第一轮数学复习一样,扎实的阅读,一字一句的认真理解。这本书的所有知识点在后面的笔试和面试中一再重现。常考(至少在试卷和面试过程中上出现三次以上)的知识点有:sizeof(),String类的构造函数,析构函数,拷贝构造函数和赋值函数,虚函数和多态,虚析构函数,虚构造函数。

项目做完以后,我回到长沙开始准备简历同时复习其它重要课程,下面列出了C/C++面试笔试相关的书单。

1《高质量程序设计指南:C++/C》第三版

2C Programming Language》第二版(《C陷阱与缺陷》《C专家编程》两本很薄的小册子,可以配合着第一本看)

3《数据结构》严蔚敏

5《程序员面试宝典》

6《编程之美》《编程珠玑》

7《算法导论》

C Programming Language》第二版,这本书是C语言的圣经,我看的是英文版本,但是看得比较粗糙,导致后面在面试时细节处出过小问题。看这本书的时候建议做好笔记,并把典型的小程序先不看书在纸上写一遍,然后跟书上的对比,再在自己电脑上跑跑加深印象。我经历的这么多面试中,仅有一次是上机写程序的,其它的全部是笔试的时候写,或者当着面试官的面写,这就要求养成在纸上几乎是一遍写好的习惯。在纸上写程序很锻炼思维和编程能力,因为这样强调一步到位的缜密的逻辑思维。这本书有配套的习题解答,能把习题自己做完并和答案对比分析,这样能算比较扎实了。

常考的要写的小程序:itoa(),atoi(),strcpy(),strncpy(),quicksort()binsearch()。回过头来看,C语言中的难点仍然是函数指针和二维数组,这两个知识点再怎么认真阅读,反复做题都不为过。想做Java方面开发的也要打好C的基础,同时打好java基础,熟悉主流的java框架,最好有大项目的经验。我从一开始就决定了要做C/C++相关的开发,所以就没有太留意Java方面具体如何操作了。《C陷阱与缺陷》和《C专家编程》这两本书可以检验你第一本书是否看到位了,如果这两本书里面发现的问题你都思考过,你够扎实了。书单上的前两条你完成以后才有资格在简历上写上“精通C/C++”。

下一步是复习数据结构,数据结构的书我看过很多不同版本的,觉得最合适的,还是严蔚敏的那个版本,伪代码比较严谨。学过数据结构的都知道常用的一些数据结构,比如数组,链表(双链表),栈,队列(循环队列),二分查找,快速排序等(图之类的考得很少)。复习的关键在于是能否在压力之下(笔试时间较紧或者面试官面前)快速而准确的写出他们的C语言实现或者程序关键代码填空。

常考的知识点:各种排序算法及稳定性和复杂度分析;二叉树的遍历(递归实现,栈实现,队列实现(层序),已知前序中序确定后序,变态一点的已知前序后序列确定中序有多少种可能);二分查找;二叉查找树的删除节点;循环队列的数组实现;双链表的插入和删除。我腾讯面试失败的一个细节就是栽在最简单的循环队列上,广东北电的笔试就是栽在二叉查找树的删除算法上。

《程序员面试宝典》这本书其实很一般,写的比较粗糙,但是就是有很多公司比较懒,直接从上面取题目出来考,所以还是要看一遍比较好,但是看的时候一定要带批判的眼光去看,因为上面的题目很多解答都是不完整的,有的思路甚至是不对的。可以把它当成网上的帖子一样,带批判的眼光看。

《编程之美》这本书上面的题目搜集得很好,即使不参加面试笔试,平时拿来训练思维也很有好处。其中许多题目会在笔试面试中出现,并且是作为压轴或者难点题目出现。每天拿出一道来,大家集体讨论一下,然后写写程序跑一下,也是非常有意思的。《编程珠玑》也是一本好书,其中开篇的那个问题多次被面试官问道,也是提升编程功底的好书。

《算法导论》,把这本列出来是觉得这本书实在是最出名的算法方面的书籍。但这本书并不是可读性最好的,建议自己选择自己最能读懂的算法书籍,把那些基础算法思想都真正的弄懂并运用到一些笔试面试题目的分析中。比如贪心法,分治法(一般是将问题规模减半,你听说过减一法么?你真正理解递归么?子问题之间有交集么?),动态规划(将原问题分解为子问题,这些子问题之间有交集),回溯法(如何裁剪状态空间树?),分支限界法(是深度优先还是广度优先?)

操作系统、数据库和计算机网络也是考察的范围,但是比重没有前文提到的高。操作系统注意一些基本的点:进程和线程区别,进程间通信和线程间通信,进程状态转换,进程调度算法;数据库的一些知识点:常用SQL语句,范式,存储过程和触发器;计算机网络方面:OSITCP/IP协议有哪几层,各个层次有哪些协议;TCP三段握手过程;TCPUDP的区别;TCP/UDPIP包头结构及各个字段有什么用;滑动窗口协议;写一个简单的Socket通信程序。

很重要的一点是,找工作最好有一个好的团队并肩作战,团队作战强于单兵作战。我们就是实验室五个人的一个团队,大家有消息共享,互相通知,有发现自己不会的拿出来讨论,真理总是越辩越明。每次笔试完以后,把不会的题目和不确定的题目拿出来讨论。我几乎每次笔试都有收获。而且笔试题目就像刚从磁盘换入内存的页面一样,一旦命中,下次命中的可能性也很大(局部性原理)

最后想说一点关于项目经验和科研的,项目经历不在数量(当然有一长单的项目更好了),而在于深度。对自己所做的工作能很好的描述,项目细节能经得起面试官的质疑。对硕士生而言,科研课题也是自己的卖点,也是最好忽悠面试官的地方。要让他知道你做了很扎实的研究,功底很深。描述项目的时候,要根据所投公司的职位要求来描述你的科研项目,重点展示你的分析和解决问题的能力。我的体会是,越是有技术含量的公司,越在乎你的课题是否做到一定的深度。

平常发现自己无所事事的时候,可以去http://www.topcoder.com/tc上面去挑战一下自己,做做算法竞赛的题目之类。我们班上的大牛就是topcoder上的大牛,N个互联网公司抢着要他。

      

 

战术篇

       记得华科的BBS上有个作者的签名档很有意思,形象的描述了整个找工作的过程。仿照他的描述,我自己的状态变化大概如下:

任务:卖身

Offer1/3     面试8/12 笔试 12/20 简历筛选 30/50

也就是说,每走完一个环节,都面临着一轮淘汰;要拿到一个offer,都必须走完这样一个流程。我简要的说说每个流程需要注意的地方。

网申简历:在9月份开学之前,认真做好两份简历(中英文)。做好以后多拿给几个有经验的人看,让他们提提意见,不要不好意思。简历一般为2页,可以不贴照片(你投的公司多了,杳无音信,会觉得贴照片有些浪费,还是2毛钱的简历实在!)。在中华英才网上也注册两份简历(中文和英文),便于以后网投的时候从模板导入。在网申的时候要认真仔细的填写每一项(据说网申是淘汰率最高的一个环节),不要怕麻烦,不然到时候别人都有笔试机会,你就只能坐在那里自己郁闷了(虽然很多公司允许霸王笔,但争取到一个机会,人也被整郁闷了)。我第一次的网申简历没做太好,结果一连被好几个公司默拒了;后面赶快反省,原因可能是项目经历填写不够详细,另外我填的是CET6的老分制的分数,假如按新分制的分数来筛选的话,考满分都挂了,后来干脆换成新分制填上去了。后来重新修改后的简历基本上能通过筛选了。

做好简历以后要关注就业网站:中南大学就业信息网,湖南大学就业信息网,华中科技大学就业信息网,华南理工大学就业信息网。把自己感兴趣的公司的简历投递截止时间,宣讲会时间,地点,做成一个表格,方便自己安排行程。有些公司不来长沙,只去武汉或者广州的话,根据自己的实力情况,可以安排外出行程。感觉投简历也不是有公司就投,漫无目的的投。一般有机会参加笔试或面试的话就投,完全没有机会的就不要投了,投简历也是一个费时间费神的活儿。

笔试:笔试全面考察的是基础知识,对较简单的题目,要认真细心,争取能考到80分以上,不然很少有机会让你面试的;对于较难的试卷,把会做的有思路的题目认真做好,不要贪多,有的公司看你一道题做得好就会给你机会;还有的公司,因为试卷改不过来,只看选择和填空题,后面的大题都不看的。还有一点:某道题目你想出了比较精妙的解法,记得一定要写出完整的思想,然后再写代码,我有两次遇到过,阅卷的人只知道普通解法,并不清楚你的精妙解法,在精妙的解法上面打了一个大叉,简直比窦娥还冤!

面试:自信,诚实,谦虚。每一次面试,都要精神饱满,展示出你的良好素质。在屡遭打击以后,要充满信心其实很难的,有时候自己都在怀疑,我是不是真的一无是处了?要明白,公司需要的是最合适的人,而不是最优秀的人,遭受打击是很正常的。也没有必要委曲求全,要明白,你应聘的公司需要很多人,而你只需要一个offer;面试过程中尽量诚实,不要不懂装懂,但有一点,面试官没有提及的时候,尽量不要主动去暴露自己的缺点(比如某公司对英语要求不太高,你不要刚开始自我介绍的时候就说我的英语不太好。这样虽然诚实,但造成的印象不会太好)。假如你某方面很强,也不要太过张扬,大部分公司都需要招一些老老实实干活的人。

Offer

有人会说,拿offer就没有什么可操作的了吧,其实不然。公司给你offer的时候,务必要问清楚一些相关事项(诸如公司的发展前景,工作地点,月工资,试用期时间、工资,年底奖金,户口,五险一金(住房公积金的比例,基数)。常常听到有人拿到offer了,对公司的了解还糊里糊涂,这也是只有搞研发的找工作才会出现的情况。另外一点:有时候公司给你考虑签约的时间很短,但这个时候还有另外的更好的公司面完了还没发offer,这时候需要把话说得好听一点,争取到更多的考虑时间。

昨天,还收到了华为的面试短信,但心已不再像前几天一样,时刻企盼着陌生的短信和陌生的电话。从116号签约到今天1111日,什么也不做,什么也不想,随波逐流,让自己的身体和心灵得到彻底的放松,然后开始一段新的旅程。是的,生活是一段一段的,期待一段不一样的日子。

找工作的日子让我收获最大的是对心态的考验和对自我的认识。每来了一个心仪的公司,就来了一份希望,全力以赴的去投入,获得接受检验的机会,然后在各个环节被BS多次;然后收拾好心情,迎接下一轮BS,对人的心态确实是很打的考验。经历过了今年如此众多和惨烈的笔试和面试,以后的职场道路上,多了一份自信。

       下面记录这些我曾经尝试过的公司,是为纪念:

淘宝、科乐美、网易游戏、三一集团、群硕、51.com、深信服、广州邦普、金山软件、北京超图、广州本田、步步高教育电子、厦门网宿科技、TP-Link、文思创新、深圳同洲电子、立信集团从兴电子、中兴通讯、巨人网络、湖南拓维、迅雷、广东北电、BaiduOracle、三星,华为,中软国际,优益软件。

 

你可能感兴趣的:([ZZ]找工作战术总结)