好吧我刚走完 Reddit new grad SWE 的面试流程,想给之后像我一样 Google 的人留个线索。
先说:Reddit 的 new grad Pipeline 标注不太清晰。你可能会看到叫「University New Grad」,或者就是 junior SWE 的岗位。整体比完整的 senior loop 轻一点,但也没轻多少。
我经历的流程大概是:
Recruiter screen(20 分钟),然后 60 分钟 technical phone screen,然后 virtual onsite 三轮。
Phone screen 是在 Coderpad 上两道 coding 题。我拿到一道数组操作题(感觉是 leetcode easy-medium)和一道字符串解析题。不算很刁钻,但面试官希望你讲清思路,不是只写代码。最后会问时间复杂度。
Onsite(三轮): Coding round 1:图遍历。我的是 grid 上的 BFS 相关。经典题,但他们会 push 你给最优解,然后加一个边界情况让它稍微更有意思。 Coding round 2:面向对象设计(偏轻)。设计一个简化版 Reddit 帖子投票系统,写 classes 和 methods,不涉及真正的 system design。对 new grad 友好,不要求你懂分布式系统。 Behavioral round:这个让我有点意外。他们问了一个很标准的 behavioral:「tell me about a project where you had to work with someone you disagreed with.(讲讲一个你不得不和一个意见不合的人合作的项目。)」对 new grad 池来说比我预期更「硬」。他们不是要一个完美的 STAR 故事,但会追问你学到了什么。
最后被拒了,不过 recruiter 跟我做了复盘,实际上挺有用。coding 没问题,behavioral 是我薄弱点,因为我只有实习经验可讲,而且讲得不够具体。
我给 new grad 的准备建议: Leetcode medium 是甜区。从我观察来看,hard 很少出现。 练习边写边说。真的要大声说出来。很尴尬但很重要。 准备 3-4 个真实 behavioral 故事,来自课程项目或实习都行。他们会问,哪怕是 entry level。 把基础图遍历(BFS/DFS)练到不用想。出现频率太高了。
祝好运。整个流程其实挺公平的,我只是需要更多练习。