Friday, March 21, 2014

2014 summer找实习小结

这篇原先是我发在一亩三分地上的。http://www.1point3acres.com/bbs/thread-89796-1-1.html

现在修改一下迁移到我的Blog上吧。

先报结果:
Rej: Axure, tripadvisor, appfolio, Yelp
Offer: Arista, Twitter(已从), Amazon, lab126
今天刚考完最后一门final。上个quarter在jobfair投了几个公司拿了axure和tripadvisor面试,那时候自己面试写code挺弱的毫无意外的悲剧了。axure这个公司电面就是侃大山,聊简历。Tripadvisor问的是关于从一大段话里找出电话号码的题,居然要用自动机我早都给忘了。

后来在寒假看了看编程之美几个部分,leetcode按ac率刷了60多题,然后开始改简历海投。
这个quarter找实习比较痛苦,从一开学就投简历大多石沉大海。只有网申的appfolio给了面试,第一轮hr面就把我挂了,出师不利啊。刚开学有个jobfair投一堆简历一个面试都没拿到。后来同学的学长内推的Twitter和自己网申的yelp给了面试。 yelp面到第二轮就挂了,第一轮是快问快答,第二轮代码题是找几个string的最长公共前缀还好,我挂在一堆网络方面的问题上了,基础不牢啊。。
因为没有新的面试,整个学期都在狂投简历,只要是IT公司来info session我就去扔简历,网申了40+家,结果还是没拿到一家面试。看着身边一个个拿到offer的同学特别羡慕,又担心实习岗位马上没坑了。这个学期最后一次机会是另一场job fair,我又投了一堆简历,终于拿到了Arista,Microsoft, Amazon和Lab126的面试。然后在接下来一周内把他们都面了,因为再下一周就是final exam。最夸张的是有一天上午面Twitter中午面lab126 on campus下午面amazon on campus,一下子就是4个小时。
Twitter 是同学的学长给内推的。他家反馈挺快,先online challenge在线一小时做两道题,不难。Recruiter很快就回复说过了,开始面试流程。一面是一个很nice的美国人,人也很幽默。在tweet一堆词里找出出现频率最高的10个词。我说我要用hashtable + heap,他说对你可以写了,写完还有时间,他让我分析下复杂度,然后随便扯扯就结束了。面完我发现用快排变形方法,可以更快。过了两天说一面过了,要安排二面。结果我发现recruiter把我申请职位改成了PM(我申的SDE),她说我更适合这个(是不是一面表现不够给力?)。我想着面就面吧,结果这次面试官就不那么nice了,可能对我不怎么感兴趣随便问了简历问题就拜拜了,面试的时候他还喝着酒(skype视频面),过了两天PM组就发了好人卡。我试探的问recruiter我还有机会再面SDE吗,她说过几天帮我问问。本来不报什么希望,因为jobvite系统上我的状态已经成了”not selected” 。过几天她居然又发来了两个面试,状态也改成了”in progress”。二面是在android组的印度姐,开始问了我关于Twitter网站的问题,然后做题。是在一串连续的数中找丢的数。我用的二分查找。写完她说了几个corner case,我发现corner case自己没处理好,修了bug。还有时间她就问了我一个开放性的问题”你怎么说服组员为一个软件添加new feature”,我blahblah说了一堆。她说good good,我当时挺高兴的,因为感觉面试官说good比说cool有希望一点。。然后她说如果有的人就是不愿意加new feature咋办,然后我又扯了扯,她说good good, that’s enough就结束了。三面是个美国小哥,他也挺友好的。因为他是在家skype面我,提醒如果有狗出现在屏幕上,我不要吓到,因为狗狗就在他的旁边。做题,先是罗马数字转数字,写完让我设计几个test case,过了。然后让我写数字转罗马数字,因为代码比较长,他让我优化一下。我说改成循环,但是这样改动比较大,我也没想到太好的优化方式,他说行。时间也差不多了,让我问他问题就结束了。又过了两天,周四吧,recruiter让我提供当周合适的时间(那周就剩两天)有个组manager要跟我打电话聊聊。前人告诉这种面试要狂问面试官问题表示出兴趣和热情,晚上准备了点常规问题,熟悉了下Twitter咋用的。周五上午manager打过来,他是移动开发组的,估计是之前面的印度姐推荐的我,聊了聊他们组是干嘛的,他问我对Twitter客户端有啥建议,我就跟他说了说微博和twitter的不同体验,他说微博确实不错。他态度比较中性,我感觉不到他对我感不感兴趣,当天下午recruiter就打电话offer了,就是上午面我那组。折腾了两个月的Twitter在这个quarter上课的最后一天拿到了offer,待遇也不错,我还是挺高兴的。感觉这个公司比较人性化,刚拿offer就有两个之前面我的面试官都发邮件来祝贺,有一个还说自己的老婆也是程序员做女码农不容易什么,鼓励我。
Arista是一次45分钟电话面试ssh写代码,BST中查找数值最小的节点和查找指定节点中序遍历的下一个节点,当场给offer比较爽。Amazonon campus面的是找最大公约数最小公倍数判断是不是质数,层序遍历。Lab126面的是硬件组,虽然我是CS的可能因为他们看我修过Computer Vision所以给我面试吧。面的题就比较杂了,有算法也有CV的知识,两个面试官都很和善,第二个还是中国人,他问我了一些image processing的问题,我说我没修过不太清楚。后来我俩就侃了侃淘宝,支付宝什么的,因为我觉得这个职位我肯定没戏,所以面的时候也没啥压力想到啥说啥,没想到Lab126也给offer了。Microsoft的on campus面的是在数组里找duplicate然后删除,现在还没消息,不等了。(一个月后还是悲剧)
虽然我是我们系里最晚拿到offer的人之一,我感觉自己还是挺幸运的,面试的题都没有卡住所以面的都比较顺利。感觉整个过程下来,最慌的就是没面试的时候。到后来我还让国内的基友帮我留意着国内网易,腾讯什么的实习,暑假回国实习也行。有段时间感觉拿到面试好难啊,没有什么人脉,网申也没用。只能靠job fair,job fair还正好在期末考之前,很惶恐。facebook来学校宣讲了3,4次,每次来我都去投简历,只是从来没给我面试。Google我找同学内推的时候,intern申请通道已经关闭了。Linkedin这边只有一个同学拿到了面试,还是去年投的。。所以下手要趁早。还要谢谢wizard同学催我刷题找实习,如果不是今年年初就开始准备,现在估计还在捉急吧。。其实找实习和真实实力还是不一样,希望自己在以后能好好提高下CS的实力,做点真正有意思的东西出来。
祝大家春假愉快,还没拿到offer的马上有offer!
read more ››