北美IT求职总结 – Google – New Grad 7


最终去向:Google Software Engineer, New Grad, Mountain View

学校项目:Yale CS MS (一年)

签了Google的offer,withdraw了Bloomberg和Oracle的面试,算是结束了自己的求职之路。激动是有的,因为二十多年来,终于实现了经济独立。 但也有些失落,因为其他的可能性都随之崩塌。近期都不会再碰算法题了,Leetcode的解题记录也停在了308。写下这篇文章,总结求职中的经验和教训,也希望帮到后来人。

275517326800787465

图:Shu Tao

白岩松说,永远不要相信老人写的回忆录,因为他们会选择性地回忆过去,只留下筛选后的内容。于是他们的人生轨迹与抉择看起来是那么的顺理成章。我会尽量客观地写这一年来我做的事情,中间有些许经验,也有不少教训。

选择学校

申请学校时我就决定毕业后找工作。出于经济考虑,自己最终从CMU MIIS,Cornell Meng和Yale CS中选择了后者。每当自己在朋友圈或是Facebook上看到CMU的同学凌晨三点发的写代码的状态,就会感慨这可能是自己差一点选择的生活。感慨过后,自己就又去继续思考晚上到底是炖鸡还是炖牛肉的哲学问题去了。

耶鲁的课程对找工作的帮助微乎其微,我想大部分学校的课程都是这样。因为课程目的就不是为了帮助学生找工作,而是训练学生理解计算机原理,甚至是独立思考,和面对未来生活的能力。当然也有学校诸如MIT就开设了Hacking a Google Interview这样的神课,那就是另外一个故事了。不过,耶鲁计算机系的教授单拎出来都是各个领域的神牛。比如Avi Silberschatz,你可能没听过他的名字,但你一定用过他的教材

此外,在耶鲁读书,还会给你机会认识一群优秀的同学。

30108962575722468-2

练习白板 图:Bo Song

刷题的环境很重要,尤其是能和一群优秀的人一起准备面试。头脑风暴之后,我们往往能把算法复杂度降低一个量级。这种感觉有点像高三复习备战高考,整间教室的人都朝着同一个目标努力。曾和另一位拿了Yale和Cornell Offer,同样纠结去哪家的同学聊天,她觉得刷题的环境和校友资源是选择学校的考量。我表示认同。因为你的水平取决于你周围人水平的平均值,这种影响是潜移默化的。

我本科的一位同学(浙大),本科毕业前就收到了谷歌的offer,同时一位杭州IT公司的老板也极力挽留他。后者开出的价码很诱人,“谷歌给你什么,我就给你什么。并且直接让你领导一个团队。”这位同学讲,最后一个条件对他的诱惑力很大,但转念一想团队里那些人的水平,最终还是选择去谷歌。“很希望与一群优秀的人共事,会让自己也不断进步。”他说。

很有幸能在耶鲁认识这么多优秀的同学,感谢他们带给我的积极影响。我可能是找工作找得最快的一个,但绝对不会是找得最好的一个。祝愿大家都能拿到理想的offer。学校项目可以改变人的气质,我们也可以改造Yale CS MS的形象。

774407853185313837-2

Yale CS MS 2015 Fall 部分同学 图:Aohan Lin

准备面试

我开始刷题(Leetcode)是在2015年1月份,也就是大四下学期,那时刚准备完申请。这里还保存着我Leetcode上AC的第一道题的题解:http://www.sunny-song.com/best-time-to-buy-and-sell-stock/ 如果按照时间顺序从旧到新地看的话,可以一览我的代码从稚嫩笨拙(too young too simple)到还算整洁规范(neat and clean)的成长过程。

我是按题号刷题,遇到不会的就看discussion,然后自己默写一遍代码,并写题解。刷着刷着,你会注意到两件事情:1. 每道题读完后,你能够想出大致的方向,是应该深搜广搜(BFS,DFS),还是动态规划(DP);2. Leetcode更新得真快。

十月初参加了谷歌On-campus面试。十一月末飞去加州参加onsite,两周后通知过了HC,再等一周收到正式offer。

我是倾向于参加on-campus面试而非电面。因为觉得在现场的白板写代码更舒服,也会和面试官有更多的交流。有时解释算法画个图就行了,如果电脑打字+口述的话会比较困难。面试更注重交流,需要边写边把自己的思路讲给面试官听。我是比较幸运,on-campus和onsite一共六轮都bugfree。唯一不理想的是on-campus的第一轮,因为是第一次参加面试,代码写得磕磕绊绊。还好遇到了一位国人小哥,在他的引导下写出了代码。觉得谷歌的HR和面试官都很友善,他们不会刻意难为你,而是引导你走向正确的方向。之后面试别人时,我也会这样做。

336301253947325999-2

图:Bo Song

一些教训

投简历要趁早,即使你觉得还没准备好。因为电面的时间可以往后约,等你准备充足了再面。但如果简历投晚了的话,连面试机会都没了。我是十一月初去出去浪了一圈,结果回来时发现Airbnb已经不招fulltime engineer了,还是有些遗憾。当然也和今年惨淡的就业形势有关,不过早投简历总是没错的。

刷题会让你失去什么

和一位同学交流,她说自己刷题时总会想出一些很奇妙(fancy)的解法,但没法保证正确与否。我表示认同。自己刚开始刷题时,也是会有很多奇技淫巧,有时能通过(AC),有时就是答案错误(Wrong Answer)。刷题之后,发现所有的问题都能归到几类问题中,然后各个击破。我们的解题能力得到了提高,但同时我们的思路也被限制住了。觉得做研究(Research)就需要很多奇思妙想(idea),而不是一遍bugfree的能力 — 即使后者也很重要。

美国高等教育继承古希腊和古罗马liberal education的理念,其教学方针是培养能够为社会进行宏观思考,并有丰富人文修养的体面而有领导能力的精英人才,教学内容以广泛得涉猎人文社科中更哲学的部分为主。这种教育的最终目的是为了精英阶层更好的领导社会和固化其阶级优势,而不是教授学生赚钱谋生和积累财富的技能。找到工作只是第一步,我们还要有更广阔的视野。

新的开始

龙应台说,一件事情的毕业,永远是另一件事情的开启。找到工作也只是生活中一个阶段的结束,新的事情还会接踵而至。这学期一直在忙刷题,辜负了耶鲁的环境与资源。下学期去尽情地旁听自己喜欢的课程,也做好TA和RA的工作,也会面试Rio奥运会志愿者岗位,又是忙碌的一学期。Airbnb投了摄影师职位,兴许哪天大家住的民宿的照片就是我拍摄的。享受最后半年的学生生活,它不仅只有bug和代码,还有诗和远方。

祝大家申请、求职、工作顺利。

PS:欢迎找我内推 🙂

宋博

于New Haven

12/21/2015

相关阅读

刷题总结:http://www.sunny-song.com/刷题总结/

耶鲁申请总结:http://www.sunny-song.com/申请总结-最终去向-耶鲁大学/

学生会-三个故事:http://www.sunny-song.com/学生会-三个故事/


Leave a comment

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

7 thoughts on “北美IT求职总结 – Google – New Grad