2016校招小结(1)
一个多月前, 作为技术面试官参加了2016年的校园招聘深圳站面试, 主要目标是本地院校和清华/北大/哈工大/中科院等在本地的研究生院, 这里和大家分享一下。
我们一般有3轮技术面试, 一面二面通常是由资深的工程师面试, 三面一般是技术经理面试, 我负责的是一面和二面, 面试过程中除了给全公司层面的统一招聘人才,我们还随时要准备物色合适的人加入自己的团队。面试官会根据面试过程对每个候选人的编程能力/逻辑和思考能力进行评价, 只有每一轮的面试官都给予通过,才有可能被录用.
面试是一个双向考察和选择的过程, 所以面试时我一直尝试把这当成和候选人的一次沟通。面试的过程有大量的问题也是根据候选人自身的特点提出的, 而不是遵循了某个题库固定的题目。
整体感受是,大多数人真的很弱,你并不需要「非常努力」,就可以比大多数的人「优秀」。下面就很多人咨询时关心的一些问题分开讨论下。
「教育背景」
很多同学咨询我时,有意无意地给自己贴上了「渣二本」「普通一本」「非211」这样的标签,这都表明其内心还是非常介意自己的教育背景不好。我想你应该庆幸自己生在互联网时代,这个时代的人和资源都暴露在互联网中,你完全有机会用互联网来证明自己的能力和曾经的努力。
我在面试时能明显感觉到,一些好学校(比如中山大学/哈工大/清华北大/厦门大学/华科武大等)的学生,在基础知识/表达/逻辑能力等都要更强一些。我想之所以有这样的现象,可能是因为好学校的学生受过更好思维训练,他们面对一个难题时往往知道怎么去简化和抽象问题,把问题拨出来分类或者分层讨论,同时他们还会试图把问题分解成不同的子问题逐个来讨论。我就碰到过一个大学纯玩票的中山大学的大四学生,对计算机基础知识基本上一问三不知,但是分析问题时的思路和逻辑还是清晰的,而这种能力,是很多教育背景较差的学生缺乏的。因此我也建议属于这种情况的同学,多进行一些思维训练,学会如何系统地区分解和分析一个问题。
当然,非名校中,也不乏优秀的候选人。有个江西某二本的大四学生, 在他的博客中我读到了大量分析技术细节的文章,还有参加MOOC上机器学习课程的学习笔记, Github中有他自己写的key-value数据库和web server。通过讨论,我确定他是真正学习过这些知识的人。还有一个深圳大学的学生,大学时代做过很多app和校园实用小工具, 他总是试图用技术去提高自己的工作和生活效率, 是一个真正的极客该有的样子(现实中我看到的标榜为Geek的人, 大多只是果粉装逼而已。)
「实习和项目经验」
不少同学担心他们大学没有实习过, 也没有做过很多的项目, 所以在找工作时会是很大的劣势。首先我不否认好的实习经验和项目经历, 会是很大的加分项, 但是如果你是一个学习优秀/热爱独立思考/科研达人, 也可以同样受到认可。在我看来,最重要的问题在于你要「曾经努力做好过一件事情」,否则「Why you?」
既不擅长于学习和科研也没有折腾过具体的技术,这样的人才是大多数。所以,当你能做好一件事情,就是优势。(当然,我更建议大学时代读好书,搞好科研,而不是放弃学习去折腾具体的技术)
另外很多「烂校」的学生, 总认为自己学校差所以没有机会去大公司实习。实际上,你在微博/github/知乎/v2ex之类的地方, 可以勾搭到大量大公司的人, 只要你能吸引到他们, 完全可以找到一份不错的实习。问题是你拿什么来证明自己优秀?凭什么名校的同学就是眼高手低比你弱?
「热爱,有激情」
面试时, 有不少人总是急于表达自己对技术对编程的热情和喜欢,而我往往很难在这些人的人生经历中, 找到一件事可以支持他们的这个说法。你既然这么喜欢计算机和编程, 大学四年你干吗去了? 你确定不是因为找不到其他工作或者考不上公务员才来面试程序员的吗? 互联网如此发达的今天, 大学你有四年的时间去折腾, 去证明你喜欢计算机, 然而你没做过任何这样的事情, 却说自己热爱,这反而会让人对你的看法大打折扣。
大学时代不知道如何正确地学习很正常, 但是如果你真喜欢一样东西, 你会做过一百种尝试。哪怕是反复地折腾尝试各种不同的linux发行版本, 也是一种尝试。非计算机系的你可以去计算机系蹭课, 可以去MOOC上学习计算机的公开课, 甚至你可以去考并没有什么卵用的计算机二三四级考试, 也可以去交一个计算机系的男朋友女朋友。然而「什么都没做过,凭什么说爱?」
有一个候选人本科是武汉大学某个偏门工科专业的, 大学时代就喜欢编程, 用树莓派写代码做了挺多有意思的东西,还去华科修了计算机科学的第二学位,为了进一步学习他考研去了中科研研究CV,读研期间又自己用C++实现了视觉领域的大量算法来提高自己的编程能力, 同时还发表了多篇不错的paper。这样的经历是非常吸引我的!这个同学的算法和数据结构底子似乎一般(我想只是没有刷过题),但是学习能力,分析问题的能力很强,我能明确感受到他面对一个自己不熟悉的算法题时,逐步分析归纳试着去解决问题的过程。这样的同学太讨人喜欢了!(他的二面面试官给出了比我更高的评价!)
说了这么多,其实我想说的就一点,每个人都要有自己的优势和核心竞争力。这个核心竞争力可以是牛校(清北复交浙南大科大等), 当然,如果你只有牛校光环,并没有什么卵用,因为你竞争的对象是自己的同学,而不是大专毕业生;也可以是很强的算法设计能力,但是参加ICPC拿过大奖的同学那么多,你刷题刷的过来吗?;还可以是学习成绩好,因为成绩好的同学往往在工作中表现出很高的执行力和快速交付能力(这也是为什么很多投行和咨询公司对候选人的学校和成绩有很高的要求);爱造轮子折腾开源;实习经历(BAT, google, MS等实习过), 学术强人(顶会paper); 数学好(奥赛金牌)等等。
如果你啥都没有, 只能跟大多数人一样, 人云亦云, 刷算法题看面筋, 临时抱佛脚,指望着互联网泡沫更大一点, 这样bar就能更低一点, 这样就谁都能进入BAT分一杯羹。
可是, 在这个阿猫阿狗都能拿到年薪20万offer的泡沫时代, 身在其中的你就没有一点焦虑?
欢迎关注靖难的微信公众号: