校招九月酱油之旅 30 Sep, 2013

九月已经过去,也去参加了几个公司的校园招聘。校招刚开始,一般“早早出击,大肆圈地”的就是那几家大公司,对于互联网行业来说,就是腾讯、百度、阿里了。在20号时接连收到三家的笔试通知,于是在接下来的两天就跑着跑那的笔试。

暑假时纠结某些事,根本没心情准备,只是到最后,开始做一个叫 Akiocache 的系统,研究了下 Memcached 的源代码,没想到这个对后面面试帮助挺大的。这个月前半月参加了次华为的校招,不过因为没想过去华为,所以综面时应付了事。想到算法这一老大难问题,在这段时间内去九度刷了刷题,不过临时抱佛脚,是不行的。

先来说说这三家的笔试题,百度我报的是云计算,题目全是主观题,先是基础问题,涉及操作系统、网络;然后是程序设计,都是比较基础的;最后是系统设计。腾讯和阿里的题目类似,涉及五花八门,特别值得注意的是,概率问题包括贝叶斯推断是它们特喜欢考的。不过据说笔试通过率挺高的,所以就开始了三家的面试。

先说一下面试结果,百度最惨,一面没过,腾讯和阿里都是二面没过,所以这实在是真真切切的酱油之旅。而没过的原因,我大概总结为思维水平达不到要求。公司校招最主要看重的应该是足够聪明,具体一点就是解决问题的能力,因为项目经验可能到了公司并不适合分配的岗位,到最后还是得重新学习,而聪明却是最好的条件,除非你确实有能证明你足够聪明的项目。所以搞ACM的校招时更有优势,而我大学四年来,都是在瞎折腾,对算法数学之类的,基本属于反应力低下的水平了。

百度对算法的要求比较高,第一面面试官就问了许多算法问题,搞得我非常窘迫,其实下来想想,这些算法都挺基础的,比如最短路径算法,不过基础不好就认了。腾讯和阿里的一面都是聊下项目就过了,真是感到轻松,不过二面就比较惨淡了。下面着重聊聊阿里的二面,因为在其中可以找到我大部分问题:先是找ip地址,我想到的是用正则表达式,这应该也是面试官所希望的,不过在写正则表达式时出了点问题,当时我在写匹配0-255的正则,面试官看了下说怎么这么复杂,直接匹配四个数,每个在0-255范围内不就行了,于是我以为有直接匹配整数范围的表达式,而想了一下实在没想出来,于是把这题给过了。然后是比较经典的用归并方法找URL问题,不过面试官说来一个比较形象的,换成了赛马问题,于是我就一直在用归并的想法去做,当然最后没能想出来,回去后在网上看了一下答案,这那是用归并啊。事实是,如果面试官的几个问题都没有回答好,后面的一些个人问题什么的就没什么意义了,因为注定被刷啦。 所以最后BAT的酱油之旅就这样结束了。

一些校招体会

  1. 只要平时基础知识牢靠,笔试根本不是问题。概率问题尤其是贝叶斯推断是这些公司非常喜欢考的。

  2. 项目经验很重要,这会让你在面试时处于主动位置,至少是一面时。多数面试官如果看你项目多的话,就会跟你讨论项目问题,而这就把话题扯向你熟悉的领域了。不然项目少,面试官就只能问各种问题了。

  3. 动手能力强。这里的动手指的是用笔现场写程序。这个环节算法是不是最优不重要,关键是得把解决问题的程序写出来,而且最好足够健壮,各种异常处理情况需要和面试官好好沟通。

  4. 最重要的是足够聪明,这个聪明特指逻辑思维,因为面试少不了的是这种题目,比如赛马问题火车运煤问题阶乘问题拿钻石问题,如果你平时缺少这种思维训练,而且还没看过类似的题,想现场答出来还真是难。反正我就一个没答出来。发现一个共同点就是,所有这些题你都能在网上找到。

九月就要结束,回忆了下经历,只能说,弱菜找个工作真是累啊。而且心态还不够淡定,当面试时遇到类似上面的那些难题时,未免就有点“心理阴影”,思考一下没有思路,就放弃了,最重要的是,对于后面的问题,就显得心不在焉。不过这篇文章是后来补上的,现在的心态要好一点了,只能说“好一点”了。