专栏名称: 一亩三分地Warald
美国和加拿大留学申请、学习、就业、找工作、生活、移民等信息
目录
相关文章推荐
物道  ·  同龄人都老了,而你还是绝色 ·  5 小时前  
无时尚中文网  ·  严重缺钱 持续甩卖资产 ... ·  2 天前  
阿尔法工场研究院  ·  特朗普为何看上加沙?知情人:他想在那里开发房地产 ·  2 天前  
物道  ·  加拿大葡萄园:这下麻烦大了 ·  2 天前  
51好读  ›  专栏  ›  一亩三分地Warald

1月开始找工,终于上岸!分享我的电面经验!

一亩三分地Warald  · 公众号  ·  · 2024-05-13 02:02

正文

作者@匿名用户
发布在一亩三分地

欢迎大家点击左下角 “阅读原文” 到原帖与作者交流讨论哦!

个人背景

6年大厂和startup的工作背景,今年一月开始找工作。

因为yoe离staff还是差一点,所以都是target的senior的岗位。因为还在h1b所以把我知道的公司基本上都投了一遍。

我平时偶尔也会面面其他公司,保持一下状态,大概四五个月面一家。刷题水平只能算一般,medium会做,hard只要没见过基本不会。system design大概是什么都可以把high level solution说一下,但是细节不一定清楚的水平。BQ应该是我强项,平时也会把自己做过的事情记录下来,这样面试的时候才可以做到胸有成竹。

找工结果

投简历+猎头+内推:62

电面:23

onsite:

total scheduled:16

cancled: 7 (后面有offer了就没去了)

total completed: 9

offer: 4

passed onsite pending team matching: 2

down leveled: 1

failed: 2

经验教训

平时工作中的准备

在平时工作中,我觉得有三点比较重要:

⭕️ 保持面试:我有一个前辈给我说过,就算你觉得你现在工作比较稳定也要坚持面试,频率可以低,比如半年面一个。原因有两点,一是要保持自己面试的状态,可以随时找到工作,二是在反向bq的环节你可以了解其他公司的商业模式和技术实现。

⭕️ 多留意和参与系统设计方面的讨论,我觉得coding甚至bq你都可以突击准备下,但是system design这个东西真的需要平时的积累。知识性的积累除了看书之外,更要结合实战中的经验。我个人的感受是:在大厂中,你自己主导的system design的机会其实不是很多,所以这个时候你要积极去参加你们组,你们org的design的讨论,多多跟别人讨论所用技术的trade off,夺取参与design的brain storm。在startup里,你有更多的机会从0到1build一个system,但是这种system的scale一般比较有限,而且整体而言,大家回prioritize time to market over engineering bar。这种时候,你需要在你的design里面多多思考以后的scalbility,roadmap,和各种edge case,并且积极让高level(staff+)的人来review你的design,给你提feedback。

⭕️ 寻找多个mentor:跟mentor交流在职业发展方面在好处,不用我赘述。我想强调下mentor对于你面试中BQ的帮助。你平时在推进项目或者其他intiative的过程中,有了mentor的指导,你可以从更高的视角来看你的项目的背景和各个team之间的合作,这样你可以在bq中讲出这样的思考,就可以帮你的story up level。

如何取得电面的机会

不到没有方法,特别不建议海投和上linkedin申请。经过我60+公司亲测,以下是拿到电面几率的排名:

直接可以跟Hiring manager/hiring 组的组员聊 > 跟recruiter聊 >> 内推 >> 海投 > linkedin 上easy apply

我也试过直接在linkedin上reach out,但是从来没成功过。。。

如何准备电面

电⾯主要是算法,有的公司会问⼀点bq,有的公司会把sd单独作为⼀个电⾯。这部分主要说说算法。我是⽤的 grind75,这个link⾥⼀共有169道题,我做了⼀遍,复习了⼀遍(就是过过思路),我觉得复习这个+看看⾯经就 完全够了,我感觉算法对于senior+只要⼤概可以做出来就问题不⼤,onsite主要还是看sd和bq。

对于中⼩公司(⼀般⼈数不过万的公司)⾯筋特别有⽤,对于⼤公司,⾯筋就基本没⽤,主要靠⾃⼰的积累。

如何准备Onsite

System design

1. system design⾸先你要有知识储备,我之前看过⼀遍DDIA,后来陆陆续续看过⼀些微服务,系统架构的书。这次准备⾯试的时候⼜把alex xu的两本书都看了⼀遍。假如你时间有限,我建议你直接看alex xu的书,他的书 涵盖了很多细节,值得你学习从⽽提升⾃⼰的知识储备。

2. 在以上这么多资源看了之后,你⼀定要内化这些知识。内化这些知识最好的⽅法有⼆:⼀是你在实际的project ⽤到(这点需要你平时⾃⼰active发现有没有应⽤的机会),⼆是去教别⼈,所以我highly recommend你去找 ⼀个buddy⼀起准备,相互交流。或者你去你们组⾥开knowledge sharing把你学到的share出去。

3. 找⼀个⼈mock,我这次找⼯作,因为时间⽐较紧急,没有找到适合的⼈mock,所以导致我前⾯两个onsite就 挂在sd,因为没有掌握好节奏(在某⼀个细节太花时间,或者没有很好的主导discussion)。我在没找的⼈时, 就⾃⼰给⾃⼰讲,画图,做笔记。假如你是⾃⼰给⾃⼰讲,⼀定要录像,复盘。我就是没有录像导致节奏是靠 前⾯⼏个公司的⾯试来慢慢调整。

4. 当你学习了知识,并且mock了⼏次之后,更重要的是实战。你⼀定要找到适合⾃⼰的present⾃⼰idea的⽅ 式,alex xu说了⼀个template,但是你完全不⽤照着他的来。你要找⼀个适合⾃⼰的讲述结构,你⽐如,我会 把critical flow放在很前⾯讲,从⽽引出api design 和data schema。很重要的⼀点是这⾥你要根据不同的问 题,找到重点,在那⾥多花时间。⽐如,design monitoring system,重点就是pull vs push的取舍,数据你怎 么存,你怎么保持⾼可⽤。design payment system,data consistency很重要,failure,idemptency handling都是重点,其他的scalebility,performance improvment,api就可以有时间再讲了。我建议你多去看 看你们公司⾼级别的⼈的design doc,你看看他把什么东⻄放在最前⾯,这部分就是最重要的,你还可以跟他 1:1 (最好主动跟她们setup)的时候问问他为什么觉得这个重要。抓住重点不论是sd interview或者⼯作中都是 ⼀个很重要的素质。

Behavior question

⭕️ 一定要平时多多留意自己做的东西,这个跟你写自己的performance review/promo doc一样,千万不要临时抱佛脚,因为你到时候肯定记不住这么多细节了。我会maintain一个brag doc,把自己做的重要的项目写一下,自己做了啥,结果是啥,和哪些人合作的,有哪些learning。这样准备的时候就可以改改直接用。

⭕️ 每个公司的culutre不一样,bq的侧重也不近相同,我这里建议你看看亚麻的lp,那是十几条lp你都准备好了的话,应该可以覆盖95%以上的问题。

⭕️ 跟sd一样,最好找人mock你的bq,你可以以一个外人的角度审视你的故事清不清楚,impact大不大,有哪些常见的followup别人会问你。

⭕️ story一定要包装,就跟你出去吹nb一样,适当的包装是必须的,但是你一定要想好别人会怎么问你细节,要把细节准备好。

⭕️ 讲故事的时候,可以多讲讲你的learning,这样才体现你的end to end的思考。

⭕️ 最后,我想提下反向bq,一般你会有5-10分钟问问题,这个是你很好的机会,体现你对这个公司/行业的了解,和你对这个机会的兴趣。你最好问一些具体的问题,让面试官多说下。而不是提一些很general的问题。面试的目的是收集signal,你sd,算法强当然是。但是你假如可以在反向bq的环节跟面试官聊嗨,我相信你大概率不会挂。因为面试官大多是先在潜意识跟你打个分再回去找证据,他假如潜意识觉得你很了解他们做的东西,你很有热情,当然会觉得你牛逼,从而忽略一些你不好的signal。

Project dive deep

⭕️ 有的公司会有这轮,你需要讲一个project,面试官有可能从tech或者cross functional的角度来问你问题。我觉得最好的准备方式是给你一个码农朋友讲讲这个project,看看哪些细节需要加。

⭕️ 这轮切记不要勉强,假如你自己讲不清楚技术细节,千万不要提出来显得你nb。







请到「今天看啥」查看全文