先简单介绍一下谷歌面试的流程吧,谷歌的面试一般分为四轮或者五轮,都是在同一天的,所以强度会比较大。第一轮是30分钟的behavior questions,后面的几轮都是45分钟的tech面试。像谷歌的behavior questions都是很常规的题目,主要就是考察你的diversity和交流沟通的能力,只要按照网上说的STAR,也就是situation,task,action,result常规解答就好了。
其实我感觉谷歌的面试比较看重的思路,很多时候不会真的让你去跑你的代码,所以偶尔有一些编译上的小错误影响不大,面试官更加看重的是你扎实的cs基础和能力。其实面试中一般不会出现太过于刁钻的算法问题,但是经常出现很多细节的corner cases,和各种if的情况。
还有就是你的沟通与理解能力,在遇到问题的时候,你有没有去沟通清楚input,output的格式,各种细节,数据的范围等。在解题之前先和面试官说清楚自己的想法后,得到认可再开始写代码。还有就是在写代码的同时,最好一边写一边和面试官讲解你的想法,让他可以很好地follow并且认可你的算法。
后面的几轮tech面才是重点,面试官上来一般会简单自我介绍一下,然后让面试者也自我介绍一下。然后面试官会给你一道相对来说简单一点的题目,可以尽可能地在20分钟内完成,因为后面的十分钟可能会有一道follow up,口头或者简单改代码的优化题。
最后给大家推荐一个Google interview mockup的网站,利用AI 进行 mock interview并且根据你的回答给出一系列的分析,但是现在好像还没有专门cs的mock interview,但是对于大家准备behavior questions和练习沟通能力还是有一定帮助的!
希望以上分享对你有所帮助!