本帖最后由 匿名 于 2022-8-1 11:49 编辑
楼主大概8年大厂经验,今年夏天开始找工作,陆续投了6-7个感兴趣的一二线大厂的senior岗,因为就业市场变化,最后只有四个联系了我并成功约了面试,但都成功拿到了offer。这里重点聊下亚麻l6的vo面经和一些经验分享,希望对还在找工作的同学有帮助,顺便求点米。之后会再发一个面试前准备过程的帖子给准备和正在找工作的同学点建议。
1)投工作:我是直接网上申请了几个感兴趣的亚麻Senior岗,但是一两周都没消息,同时被一个类似组招sde2的Recruiter联系到然后转给了专门招senior的recruiter。聊了下简历和经验,因为经验背景match,感觉没什么问题就直接安排senior (也叫SDE III)的onsite (跳过了电面,之前已经拿到了uber/dd的vo,加上背景经验match,所以狗和亚麻都直接要求跳过了电面,找时间再单独聊下狗5的面经)
2)面试前准备:. 1point3acres.com
不同公司对于不同级别的要求不太一样,不同组也不一样,我只说自己的感受,亚麻通常的L6 (senior),外招的话是希望来了可以很快胜任能带1-2个pizza team的tech lead职责,外招通常会给top band甚至out-of-band的包,相应的要求也是想招公司同级别50%甚至25%以上能力的人(虽然这只是理想状况)。我面试的组的大概比例是1 L6 : 8-10 L4-5,不同组会不同,这个Senior对junior比例也算据我所知和经历的大厂里比较夸张的了。
亚麻的面试很重视LP (leadership principle),这个大家都知道了。重视到什么程度呢,就是如果你的coding和system design不够好,可以加面,如果LP表现不好,面试官debrief觉得无法融入公司或者胜任岗位,就很可能直接挂(就有点离谱)。所以相比其他公司,面亚麻对于LP的准备非常重要,结果面试也确实是4轮每轮都花一半时间回答LP(具体面经下面有)。这里要重点感谢下尽责的recruiter,帮我准备了LP的exercise sheet可以直接填空,省去了很多时间,最后还抽空帮我检查了下LP的准备提出了修改意见,可能没有这个并没办法成功拿到offer。我下面也会分享下每个LP的经典例题模板让准备的同学自己填空准备。
很多人一开始对这种东西嗤之以鼻,我的想法是既然要准备就都认真准备,看看能不能把自己的经验融入进去。面试官也是会试着把工作中的问题融入到LP里来考察你是否真的有相关的经验和能力(比如带人的经验,跨组合作的经验,解决争议的经验等等)其实最后的体验也是这样,很多具体的问题都可以用以前的工作经验来解释,也都会被面试官深挖(如果是编的或者只是听说的故事大概率无法过关,最好都是自己经历过的产品),大部分LP其实各大公司都是类似的,只是叫法不同或者不会明确提出罢了,放到工作中基本都会经历到,如果是一个有足够经验的tech lead带过几个项目和几个人,基本是足够应付大部分的问题。. 1point3acres
关于Coding,亚麻的coding题大多都是medium为主,考察基本的知识点,面经题的意义不大,正常准备就好,如果能过大部分其他公司的面试,亚麻就不用太担心。亚麻coding是在他的工具上些code,不需要运行,类似editing doc。唯一要提的是我有一轮其实类似OOD设计,给了很模糊的题来自己设计不同的component和interface,更像是工作中设计一个小feature/project的感觉.
关于系统设计,不同的面试官考察点其实不一样,我是manager来面系统设计,所以考察的更多的比较宽泛的设计概念(比如push vs pull tradeoff) 而不是抠细节的东西(比如out-of-pocket estimation或者具体的algorithm design)
3) 具体面经: 这里不贴原题,讲下流程和考察点,毕竟亚麻的面经个人体验意义并不太大。L6面试一共4轮,3轮coding (1轮OOD design on logical & maintainable, 1轮bar-raiser problem solving med/hard level, 1轮data structure/algorithm med level),1轮system design
每轮面试1小时左右,一半时间(20-30分钟)要问两到三个leadership principle,具体例子附件里可以参考,所以剩下的半小时做题和system design是比较紧的,要求也没那么高(不需要execute code,不需要完全写完一整套系统设计)
Coding 1: logical and maintainable: design一个amazon的feature比如shopping cart (这只是举个例子),你要自己想应用场景,需要哪些API/interface,怎么sort/rank/display,有哪些Component和functionality比如add to cart, delete, payment, schedule delivery. 并不需要完全写完全部的implementation,我并没有完全写完但是给了各个需要的部分的大概流程,大概写完了3个class和几个其他的skeleton,讲了如何互相沟通,如何存储提取,哪些额外注意的corner case等等,有点接近一个project design了
Coding 2,3: 正常的medium题,有一轮是bar-raiser,给了几个方案都不满意因为他心里有个固定的最佳做法,最后按照他的提示把三种方法都写出来了才满意。注意面试中一定要按照面试官的思路走,如果过程中面试官有问题或者有建议,一定要听,如果无视或者只根据自己的想法走,很可能会浪费大量的时间也得不到好的反馈。这点无论是哪个公司的面试都很重要。如果自己也是面试官平时面试别人,就比较能感同身受了。
System design: 很普通的系统设计,面的也是比较常见的东西比如设计messenger, news feed等等,考察的是整体设计的流程和知识储备(不到半小时的时间还要讲各种tradeoff已经没时间深挖或者扩展更多了)
4)面试后反馈,因为我的recruiter比较好聊,所以知道了整个的时间线,加上本身有其他offer在手,流程就比较快,我是面试完第二天一早就debrief,中午就知道了结果,反馈整体很好,所以直接先通知过了,具体的之后几天再和recruiter和HM聊。提到的几点比较重要的是,尽量不要用同样的故事给不同的LP,虽然很多时候同一个经历是能展示很多个LP,但是会显得经验稍少,建议至少准备4-5个不同的故事讲。. 1point3acres.com
我本来面的是general hire,但是面试我的人大多是同一个组的,双方也很满意,跟老板额外聊了半个小时就定了这个组。一般之后的chat是你来面试对方,建议考察的几个点和提的问题:
1. 组内短期和长期的计划(goal). Χ
2. 入职后的期待,短期和长期的role. Χ
3. 组内大概的人员构成(比如有太多senior竞争可能拿到的scope就小)
5)总结:整体体验还是不错的,这次面试的几家senior岗从联系sourcer到推荐给recruiter到面试和出结果都很好,可能随着面试级别越高,对接的人也越专业好交流。要知道跟你联系的recruiter是帮你的,他的目的是帮你拿到offer最好能入职才能拿到更好的报酬,所以有问题要多联系多问,比如薪资期待,流程时间,有哪些组和机会,有些具体问题他不知道但也可以帮你问,面试后要反馈(通常很多公司是不允许给直接反馈的,但有一些技巧可以要到,面的多了自己也能有个相对准确的判断。。我基本每轮对自己的判断到后面都比较准确,包括狗5面试每轮的feedback。。个人建议在原公司也多面试别人,其实很多考察点和反馈也都很类似了)
最近的就业市场不太好,接下来半年可能会更严峻,还在招人的公司越来越少,希望大家都能拿到好offer,找工作期间也得到地理很多有用的信息所以想尽量回馈一下,如果有问题可以在下面问,顺便求点米,谢谢 |