Timeline
- 2018.10 中旬: 收到一封 G 家 recruiter 的标准邮件,问有没有兴趣聊聊。遂回可以。
- 2018.10 下旬: 和该 Recruiter 一个视频 45 分钟左右的面试,主要问了些非常简单的问题和一些我的情况。例如各种排序的复杂度,dictionary 的一些实现细节这种程度的。这应该是所谓的第一轮筛选。之后安排了 11 月初的技术电面。
- 2018.11 月初:和一位工程师进行了 50 分钟左右的电面。一个简单问题开始,然后有一个追加的问题。一周后 recruiter 发了 onsite 的邀请。由于我 1 月中旬要交毕业论文,所以安排到了 1 月 24 号的 onsite。
- 2019.1 月:因为学校原因论文推迟了到了 21 号才交,因此我只有 22 号 1 天的时间准备。23 号去了所在地,G 家安排的酒店非常不错。
- 2019.2 月初:Recruiter 直接打来电话,说面试官( X5 )的反馈都收到了,positive,7 号送 hiring committee。8 号一大早我还在睡觉错过了一个 recruiter 打来的电话,发了个邮件过去说还在睡觉没听到电话,过了一会儿 recruiter 又打来说 hiring committee 做了 hire 的 recommendation,之后会有负责 offer 的 team 和高层审批之类的,要一到两周。
- 2019.2 月中:过了一周发来视频邀请,offer 到手。
Onsite 的面试
总共 5 个面试,各 45-50 分钟。上午 3 个,然后有个 googler 带你去吃饭然后逛一逛。下午 2 个。 其中 4 个是 coding,1 个是 system design。两个跟图搜索相关,另外两个不好分类。难度一般。 System design 是让设计一个跨 data centre 的日志系统。需要考虑的东西非常多,还要估算需要的计算和储存资源。 面试都在一个小屋里面,在一台 Chromebook 上写,也可以选择在黑(白)板上写。
感想
1 月 23 号一天时间在网上搜了一下面经,发现算法部分什么都有可能问到,所以干脆就没有看了,在 leetcode 上随便找了两道中等难度的题,练习了一下在纸上写。基本上网上的说法都是一定要多刷题,而且面试的时候做题速度要快。这一点跟我遇到的情况有出入。由于自身的原因,我已经一年没怎么写过代码,好几年没做过类似的题了,而且面试的时候感觉我做得非常慢,记得其中一个面试的 follow up 问题都没来得及写代码,但是我的思路是讲清楚了的。综合起来我感觉他们最看重的几点应该是思路和沟通,除了一个非常 nerdy 的面试官之外,其他几个面试真的像是在交朋友,充满了欢声笑语那种感觉。后面 recruiter 的反馈也是说有一轮的代码写得不好,但是 5 个面试官都认为我的沟通还不错。所以我觉得刷题并不是最重要的。
好吧,流水账就这样了,当然其中还有一些过程我觉得不重要就没有写了。有问题可以问我 :)