找工作小结(一)

转至:http://hi.baidu.com/lewutian

本来十月底就想写个总结,但是当时想还没签约,还是等都确定了再说,但是现在想想就算把三方寄出去了,也还有毕业的事情未确定,真要尘埃落定估计要等到34月份了,可是现在其实已经有多面试场景开始淡忘,所以还是趁现在还有依稀的印象的时候,先记起来吧。

今年各大公司来高校招聘的时间比往年大大提前,我想原因可能有以下两个:1、许多公司对今年的就业市场行情比较看好,决定提前抢人。2、大部分理工科的硕士改成了两年半,也就是明年3月毕业,因此也使得大部分高校的找工作时间相应提前。在8月份的时候通过内推的途径,百度和阿里等公司就已经发了一批offer了(这更说明了提早准备的重要性,像百度上海在8月份就在浙大发了20多个offer),另外阿里、淘宝什么的还搞了保送生、千里马之类的提前面试计划,这些都在后来的正式招聘中占掉了不少名额。另外,能去实习尽量争取到大公司实习,因为实习生不仅可以大大提高留在实习公司的机会(今年网易杭研院大部分的校招名额就给了它的实习生),也可以让你在应聘其它公司的时候多出不少资本(简历上的和项目上,当然前提是公司最好比较知名或者规模比较大)。

我在9月份上旬只参加了百度的内推,所以后来也错失了不少别的机会,一度比较后悔(两手空空的时候看到88上已经有人在报offer,多少有点着急啊)

笔试面试的经验大致总结一下(因为我投的全部都是软件开发或者研发的职位-.-所以也基本针对这个职位的笔试面试来说,另外,我的基础很一般,本科也不是CS的,研究生的项目也没有什么亮点,完全是趁着今年形势好混了口饭吃,所以这点经验完全是从我这个挫人的角度来总结的,可能对非CS专业的会有些帮助)

首先,从软件开发工程师的定位来说,如果只是简单的coding的话其实大部分工作一个优秀的CS本科生就可以胜任,所以投这个岗位基本上是和本科生抢饭碗了,不过从参加面试的情况来,虽然这个职位大部分要求的是本科以上的学历,但是最后能到终面的大部分还是研究生,求职市场水涨船高也属无奈。当然有些开发岗位也不纯要求coding,还需要一些专业背景,像互联网行业的公司尤其喜欢数据挖掘、机器学习的背景,有这方面项目经验的同学就可以有很大的优势。

其次,计算机语言方面,我们以前经常说语言只是工具,用哪种语言不重要,不过从码农的角度来说,公司肯定更喜欢招一个熟练工,市场上对JAVA的需求明显比对C/C++的需求要大的多(这一点在杭州感觉尤其深刻,阿里系的公司清一色的有大量JAVA人才缺口,像支付宝计划招JAVA工程师数百名,而C++工程师只招5-.-),而应聘C/C++岗位的人数又往往超过JAVA(因为一般像通信、电子这样非CS专业的学生可能更熟悉C类的语言)。当然会C++也不是就真的很吃亏,像微软、google、百度这样的公司可能又会偏爱C++多一点,而且一般认为C++的技术含量可能更高一些,总的来说java的情况我不知道,不过如果你C++基本入门的话(所谓基本入门是指C++的语法和语言特性都能了然于胸,推荐把C++ primer看一遍基本就算入门了),再有点基本的算法和数据结构基础,过一般笔试是没什么问题了(如果要求CS背景,可能还要再懂点操作系统、数据库、网络什么的,不过这些占比一般不大),我C++ primer其实也只看了小半本而已,但是面试官问C++的问题基本都不怵了,(代码经验也很重要,关键还是要多写,写的多了,用的多了,很多特性自然就明白了,不用刻意去记的),如果要号称自己精通C++的话,最好看过STL源码,熟练使用智能指针(我因为没怎么用过智能指针,被BS了好多次-.-),并了解它的原理,最好有比较多的查内存泄露的经验,还有有条件的话研究研究boost也会加分的。另外,补充一点,就是现在提到C++其实一般都是指Unix/Linux底下的C++(因为互联网公司的服务器大部分是Unix/Linux的),所以VC虽然还是有市场的,但是已经很小了很小了,只会C++却不熟linux就基本只剩一条腿了。如果想应聘C++岗位的同学,最好好好熟悉一下linux的开发环境,包括gdbgcc,以及一些脚本命令,比如Shell,这些都要靠平时多用多积累,指望找工作的时候突击看两天就应付过去很难的。

http://hi.baidu.com/lewutian

算法和数据结构方面除了啃《算法导论》和多到ACM上做题,确实有一些速成的小窍门,比如钻研钻研《编程之美》,还有网上何海涛的50题,据说《编程珠玑》也是本神作,可惜我没买,至于很多人推荐的《程序员面试宝典》我倒觉得没什么必要,我买了也没怎么看,只是翻了翻,感觉帮助也不大,里面的东西还是比较浅。其实一般公司问的题目难度也就和何海涛的50题差不多,不会难到ACM集训队才能做出来的那种程度,而且面试的时间就那么多,所以好好把《编程之美》和何海涛的50题看看一般就没什么问题了,这里好好看看的意思,是最好自己做做一些比较经典的题目,而不是当小说一样翻过去(血的教训……),确保真的再见到这些题目就能保证做出来,另外很多面试都是要手写代码的,所以最好以前没有手写过代码的同学能够提前写两道找找感觉(不过我面到后面,感觉在纸上写代码比在IDE上写都快了=.=想想第一次手写的时候还是很不习惯的,涂来涂去)。重点的方面就是各种排序(特别是快排),还有二叉树的各种递归、非递归遍历,以及链表的一些操作,哈希表在大数据量的题目中常常是万能灵药(当然并不总是)。动态规划偶尔会遇上,但是极少,关键还是把状态转移方程归纳出来,图论也会碰上,但是也属于比较冷门的情况。关于递归和非递归的转换,我后来发现只要弄明白了二叉树的前序、中序、后序的非递归写法,基本上所有的递归转递归都可以转化成二叉树遍历的非递归写法……

网络方面的知识,其实考察的力度不同公司不同,不过真要说能精通网络编程,首先要好好看看《TCP/IP详解》还有《UNIX网络编程》,再有就是最关键的,多写程序了,很多时候实际的写几个SOCKET的程序,很多概念就理解了,还是那句话,光学不练是没前途的。

设计模式问的公司不多,感觉一个可能是过了最热的那几年了,还有就是可能一般公司觉得光凭一个应届毕业生的代码经验,就算把那些模式全背下来也不会对实际coding有多大助益,不过如果你真的能全背下来,在很多时候还是能加分的。

数据库方面,主要是一些使用计算机的公司会比较重视,像银行的IT部之类的,这个没啥好说的,好好学学SQL语句吧,我SQL语句也只会写一些基本的查询,所以在这里也推荐不出什么好书,不过同学那里有一本很厚的SQL宝典,据说是神作……

操作系统方面,非CS的同学有条件的去找本《操作系统概念》(恐龙书)看看,其实都是些很简单的概念,可以当小说看的,基本上看完一遍,一般的问题就没什么了,问的比较多的也是死锁啊,进程同步啊啥的,看过一遍就会,没看过就是不会,所以看一遍性价比还是很高的。另外插一句,推荐一本《程序员的自我修养》,浙大校友写的,这本书名字取的不是很合适,不过基本上把程序整个内部的机制,从编译、链接到运行都说的很通透了,不知道对面试有没有帮助,不过我想未知的东西少一些,能够地透过现象看本质的话,看一些问题的视角也可以更合适一些。

其它方面就是平时的一些积累了,有的面试官会问你平时还喜欢看些什么技术书籍,还有的可能会看你是不是经常看些大牛的博客,当然最好还是有一些有技术深度或者和应聘岗位相关度高的项目背景(很遗憾,这两样我都没有T_T)这应该是和面试官之间最好的谈资了。

英文方面,因为今年外企来的太晚,而我11月基本就没找工作了,所以纯英文的面试只有微策略和大摩IT两家,所以能说的经验,当然有一点,现在很多外企都本土化了,面试也开始用中文,像yahoo全球研发中心,就是用中文面试的,再加上外企光环的逐渐褪去,所以英文的作用没有以前那么大了,不过学好英文终究是个优势。技术面的话对英文要求一般不会太高,连比划带写,基本能把意思表现出来,群面就比较囧了(大摩就遇上群面,不过一般IT公司技术面群面的还是在少数),如果英文表达能力不够,性格又不够霸气,就只能认命了T_T(内牛满面……)。

最后大摩AC之前那个HR说的一些话我很认同,面试本身其实是面试官和面试者互相选择的过程,面试者通过面试尽量把真实的实力和性格展现给面试官看,面试官判断你是否适合这个公司,而面试者也可以通过面试官去了解这个公司,其实想不想去这个公司,一个很简单的判断方法就是在面试后问自己是不是想成为面试官那样的人。(从这一点来看,面完百度,真的有一种“我想在一两年后成为面试官那样的人”的感觉,所以后来基本上就完全属意它家了)另外,我觉得每次笔试面试都是一个提高的过程,笔试做题就不用说了,面试的时候可以和各个大牛,各种主管聊上一个小时的天,做上一个小时的题,总是能有不小的收获的,而且也是种享受,机会难得,平时很难想象一个有十几年工程经验的大牛会有空坐下来免费和你聊上一个小时的=.=

以后的流水账就按公司来分类写吧,有些营养的经验都在上面了,想看面经的后面的内容可以无视~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值