今年找工作不太顺利。从6月底开始准备到结束面试,大概花了2个多月。后面谈offer又花了一个多月,到十月中旬才最后定下来回到原公司。
结果
一共申请了42家公司,包括网申,内推和recruiter主动联系。大约有一半申请之后便没了下文。
电话面试了8家公司 (Meta, Airbnb, Robinhood, Uber, Doordash, Flexport, Snowflake, Affirm),都顺利通过电话面试。其中Uber,Affirm和Robinhood没有继续面,Uber是职位在湾区,Affirm是招聘岗位要求太高我不符合,Robinhood是由于没有合适职位。
Onsite了5家公司 (Meta, Airbnb, Doordash, Flexport, Snowflake),只有Meta给了降级offer。
面试体验
Flexport
电面一轮,比较顺利,面试结束后不到5分钟就收到邮件可以进入onsite。
Onsite一共有5轮,system design + coding + behavior + system design + project deep dive。
Onsite面试前一晚我失眠了,翻来覆去睡不着。第一轮system design没面好,有个问题没答上来,而且在40多分钟的时候,家里火警居然响了,我被迫中止面试。还好过了十分钟火警停止,我可以继续接下来的其他面试。coding 那一轮时间很赶,我全程一直在写代码,从头写到尾,写到第三问的时候运行结果不对,居然是因为我在测试的时候call了第二问的function,白白浪费时间debug。Behavior那一轮中规中矩,另一轮system design也还行。Project deep dive那一轮面的不好,由于离开公司太久,做的项目的很多细节我也记不清楚了。
第二周周一收到据信。
Meta
电面一轮,45分钟内需要做出两道题。时间比较紧张,两道题都没见过,虽然都做出来,但是解题过程不太顺利,followup也没答好。还好面试官给过了。
Onsite一共有4轮,behavior + system design + coding + coding。后来由于system design没面好又加面了一轮system design。onsite当天,system design面试官临时改期到第二周,其他照常。第一轮的behavior和第三轮的coding感觉还行,尤其是第三轮的中国人面试官特别友好让我没啥压力,最可惜的是第四轮没面好,两道题都没答好。我以为我的最后一轮coding表现会让我全盘皆输,第二周补面system design的时候我都没啥激情了。没想到面试feedback是我的design那一轮是弱项,他们决定给我加面一轮system design。Design加面的面试官是个级别挺高的engineer,人比较友好,面试题没见过,我现想加硬讲讲了45分钟。
Meta的recruiter在我加面面完的第二天就传来了不算好的好消息(降级offer)。按照流程,要先team match才发offer,所以后来选组,hiring manager面试,谈offer这些步骤又多花了4周多的时间,最后发了offer。
Snowflake
电面一轮,题目没见过,还好面试官给了一点hint之后我有了思路,顺利做出来,跑了几个test case没有问题。面试官人很友好,电面体验不错。
Onsite一共有7轮,hm chat + coding + tech talk + expertise + system design + cross functional + behavior。摊到4天完成,而且behavior那一轮需要去Snowflake办公室面谈,非常累。由于coding面试和之前沟通的不一样,这一轮暂时取消,所以onsite一共面了6轮。
HM chat比较轻松。我最怕的是tech talk和expertise:tech talk是做presentation讲之前做过的一个project,很多面试官会来听然后提问。面试的时候感觉还行,来了三四个engineer,问的问题我都能答上来,而且看起来我讲的东西大家听进去了,没想象中那么可怕。Expertise那一轮是深挖自己之前做的项目, 总体比较顺利,但是有些地方我还是被问到了。System design这一轮令我始料未及,recruiter说要面的是frontend design所以我准备了很多关于frontend方面的知识,可是面试的时候面的却是其他的design,我一下懵了,面的不好。Cross functional 这轮面试是和一个PM聊天,我感觉这一轮聊的还挺愉快。Behavior这一轮是需要去Snowflake的办公室和面试官面对面面试,面的中规中矩。Snowflake Bellevue办公室不错,新装修,原木风,办公室里有很多雪山,滑雪相关的装饰,连办公室的名字都是各种山的名字,据说最大的办公室叫Ranier。
第二周周一收到据信。我感觉Snowflake面试官人都很友好,他们也都挺喜欢自己的公司。面试经历来说,面试安排比较混乱。不过Snowflake是唯一一个给我发面试礼物(Logo外套)的公司,这点增加好感。
Doordash
电面一轮。正常通过。
Onsite一共有4轮,coding + coding + system design + hm chat。第一轮coding题做出来了,follow up不太知道怎么优化。第二轮coding的题目和followup都做出了。System design感觉一般,不是高频题。Hiring manager的behavior这一轮问的问题都比较常规,但是关于doordash错单如何处理的问题我不知道怎么答。
面试后隔了一天收到据信。
Airbnb
电面两轮,第一轮没面好,所以又加面了一轮。第一轮的电面题目我现场想现场做,当时就乱了阵脚,思路不清晰,出了不少bug。第二轮表现不错,题目做起来顺手一些。
Onsite一共有4轮,Android project coding (1hr45min) + project experience + system design + Android bug quest (1hr15min),分两天进行。第一天Android project coding面的还不错,比想象中顺利。第二天面了剩下3轮,project experience面试官是华人老板,聊的比较细,他中间经常打断我。第二轮是android system design,面的是没练过的题,但是感觉做的还行,和面试官聊的愉快。但是,第三轮(Android找bug修bug) 跪的很惨很彻底。首先是自己技艺不精,其次远程控制很卡不好操作。从面试刚开始就很不顺,面试开始晚了几分钟,刚开始android studio是黑底,加上我的窗帘大开,很难看清屏幕上的字,和面试官从头到尾交流也不太顺畅。感觉很遗憾,之前几轮onsite做的还不错,可惜败在最后一轮。
在面完后一周Recruiter给我打电话发了拒信,在电话里也说了一下面试的feedback。Android Project Coding: strong yes; Design: yes; Experience: weak yes; Bug quest: no。哎,棋差一招,有点遗憾。从一开始找组没有合适的,然后新组recruiter把我捞起来,有希望了。第一轮电面表现不太好,加面一轮,侥幸过关,又重拾希望。然后就是onsite,本以为onsite毫无希望,没想到第一天的Android project coding做的还不错,又有希望,最后一天面试的前两轮也不错,但是挂在最后一轮。就这样吧,都是命。
心得
积累在平时
距离上次跳槽找工作已经过去了5年多时间。刷题需要从头开始,上手还算快。但是系统设计是我的一大弱项,没有头绪,我花了很多时间准备,可惜很多面试还是挂在了这一轮。另外,公司很注重之前的工作经验,有一轮面试需要讲之前做的project,对我来说很有难度,我离开公司已经有一年半,看不到之前公司的文档,需要绞尽脑汁回想。
找内推
自己网申的公司有二三十家,只有2家公司联系了我,其他公司基本上都是拒信或者默拒。内推的成功率高了很多,内推大半都收到了面试。
ChatGPT是好帮手
我没思路的题,或者debug不出来的算法,会找ChatGPT给点建议,ta的回答大多数都是可靠的。真是可敬又可怕的帮手 / 取代者。
Snowflake的面试礼品 |
No comments:
Post a Comment