多伦多NG找工上岸经历
来自其他站点
先说背景,楼主某loo毕业之后在多伦多知名大包厂1yoe之后被雷,在这个爷爷奶奶抢滑梯的job market找了四个月之后终于拿到了两个还算可以的offer,来分享一下自己的经历以及面试心得。
年初被雷的时候其实是有预感的,前manager跑路然后reorg,同事老板都换了一波,新的一轮layoff quota下来真就没人能保我了。所以当时也没想太多,move on了,毕竟总有人要倒霉,那个人为什么不是我呢。感谢前manager和大哥senior的栽培和保护,一直没遇到过什么drama,做的活impact都还挺好且没有很吃力。
四个月投了大几百家还是有的,反正每天有空就刷刷各种招聘网站,有机会的话勾搭下hr求个内推。楼主先总结下现在的NG工作机会再说说刷题BQ以及SD的心得。总的来说想要拿offer真得背景yoe match,然后每轮面试都不出问题(这个其实多面几次状态维持在那不太会出错),最后就是HM看着顺眼就行。因为是加拿大所以给lowball的公司太多了,更不用提有时候会经历一些神奇/ego的hr/hm/eng在面试的时候故意为难(这种时候楼主一般都当作是stress test根本不急),对于NG来说找工真的是一场马拉松。如果只是为了上岸好好找总是能找到的,向下兼容一下。想找一个理想点的role那就多看看大厂/US startup,global pay会比canada pay好很多。
下面说说面试心得,分三部分。
刷题 - 楼主一共刷了300道,blind75加热门tag的高频题加谷歌亚麻的前100-150题,对于NG来说很够用了,除了特殊情况下给一道冷门hard题,基本就没有懵逼做不出的情况。多回顾做过的题,多看看题解做到举一反三,保持清醒去面coding,就算hard给一个合理/brute force的思路并慢慢实现总归会给面试官不错的印象。除了算法本身,要保证代码less error prone,coding style,communication都要注意,然后一些followup比如放到production里去要注意什么,modularization之类。基本这些做到之后,都能进行到VO。
BQ - 按照亚麻的LP和地里那些面经干货贴准备一下,不是基本而是一定可以完全秒杀所有公司的BQ,亚麻LP真是所有BQ的超集。楼主面过一次老鼠台vo之后再没准备过其他bq,亚麻系的bq太牛了。先理解一下几个最重要的LP,ytube上有个频道叫career scool讲解的挺好的。然后自己按照star模板包装一下经历,尽可能多说细节避免followup问题答不上来,impact/result一定记得着重说。如果问weakness或者how to improve,楼主的心得就是job ladder上找一个senior/staff需要的特质展开说说。另外举个例子,之前面试被问到作为sde我least favorite的事,我说最不喜欢cleanup tech debt,因为会error prone,所以我自己coding的时候很关注是否会留tech debt,当时面试官就直接说很喜欢我的回答。总的来说,就算负面的问题也得回答得让面试官觉得你有某种好的品质。
SD - blog.bytebytego.com的书楼主翻了很多遍,对于当时0基础来说非常好用,然后其他资源按照需求自己着重看看,比如一些nosql数据库的细节,还有youtube上也有不少好的mock interview,其实对于NG来说SD就那么几类,能举一反三自圆其说就好。举个例子,看完blog.bytebytego.com就知道如何设计一个chat app,那比如现在要设计一个在线小游戏的平台,那就和chat app类似也是要用stateful server去做,然后如何scale如何去判断tradeoff(CAP之类)说说就好。然后整个面试流程先问面试官希望自己从哪个说起,如果面试官让你选,楼主的经历来看最好先high level arch然后api和data schema,就算时间来不及至少high level arch说完,面试官也不会以没有涉及完为理由挂人了。
最后一句结语,找工作的心态就要渣一点,面完之后被拒了就总结下经验move on了,纠结和抱怨从来不能解决问题。
年初被雷的时候其实是有预感的,前manager跑路然后reorg,同事老板都换了一波,新的一轮layoff quota下来真就没人能保我了。所以当时也没想太多,move on了,毕竟总有人要倒霉,那个人为什么不是我呢。感谢前manager和大哥senior的栽培和保护,一直没遇到过什么drama,做的活impact都还挺好且没有很吃力。
四个月投了大几百家还是有的,反正每天有空就刷刷各种招聘网站,有机会的话勾搭下hr求个内推。楼主先总结下现在的NG工作机会再说说刷题BQ以及SD的心得。总的来说想要拿offer真得背景yoe match,然后每轮面试都不出问题(这个其实多面几次状态维持在那不太会出错),最后就是HM看着顺眼就行。因为是加拿大所以给lowball的公司太多了,更不用提有时候会经历一些神奇/ego的hr/hm/eng在面试的时候故意为难(这种时候楼主一般都当作是stress test根本不急),对于NG来说找工真的是一场马拉松。如果只是为了上岸好好找总是能找到的,向下兼容一下。想找一个理想点的role那就多看看大厂/US startup,global pay会比canada pay好很多。
下面说说面试心得,分三部分。
刷题 - 楼主一共刷了300道,blind75加热门tag的高频题加谷歌亚麻的前100-150题,对于NG来说很够用了,除了特殊情况下给一道冷门hard题,基本就没有懵逼做不出的情况。多回顾做过的题,多看看题解做到举一反三,保持清醒去面coding,就算hard给一个合理/brute force的思路并慢慢实现总归会给面试官不错的印象。除了算法本身,要保证代码less error prone,coding style,communication都要注意,然后一些followup比如放到production里去要注意什么,modularization之类。基本这些做到之后,都能进行到VO。
BQ - 按照亚麻的LP和地里那些面经干货贴准备一下,不是基本而是一定可以完全秒杀所有公司的BQ,亚麻LP真是所有BQ的超集。楼主面过一次老鼠台vo之后再没准备过其他bq,亚麻系的bq太牛了。先理解一下几个最重要的LP,ytube上有个频道叫career scool讲解的挺好的。然后自己按照star模板包装一下经历,尽可能多说细节避免followup问题答不上来,impact/result一定记得着重说。如果问weakness或者how to improve,楼主的心得就是job ladder上找一个senior/staff需要的特质展开说说。另外举个例子,之前面试被问到作为sde我least favorite的事,我说最不喜欢cleanup tech debt,因为会error prone,所以我自己coding的时候很关注是否会留tech debt,当时面试官就直接说很喜欢我的回答。总的来说,就算负面的问题也得回答得让面试官觉得你有某种好的品质。
SD - blog.bytebytego.com的书楼主翻了很多遍,对于当时0基础来说非常好用,然后其他资源按照需求自己着重看看,比如一些nosql数据库的细节,还有youtube上也有不少好的mock interview,其实对于NG来说SD就那么几类,能举一反三自圆其说就好。举个例子,看完blog.bytebytego.com就知道如何设计一个chat app,那比如现在要设计一个在线小游戏的平台,那就和chat app类似也是要用stateful server去做,然后如何scale如何去判断tradeoff(CAP之类)说说就好。然后整个面试流程先问面试官希望自己从哪个说起,如果面试官让你选,楼主的经历来看最好先high level arch然后api和data schema,就算时间来不及至少high level arch说完,面试官也不会以没有涉及完为理由挂人了。
最后一句结语,找工作的心态就要渣一点,面完之后被拒了就总结下经验move on了,纠结和抱怨从来不能解决问题。