本文首发于微信公众号:时序人,欢迎关注以获取更佳阅读体验
作为2021年毕业的小硕,参加了今年的校招,就这个话题分享下自己的经验吧。截止当前,一共面了5家国内一线大厂(如阿里等)和1家外企(Amazon),拿到了4个offer(阿里云,AWS,网易伏羲AI lab,华为),都是算法研究岗。
背景
本人top5计算机小硕,有4篇顶会论文(其中两篇一作),通过校企合作实际落地成果两项。背景还算是有点竞争力,不过面试也不是一帆风顺啊(以前不知道,校招里坑还不少)。可能有人觉得校招的顺利是有paper的缘故,我不置可否。但我身边也有同学没有paper,完全自学,早早成功拿到某条的offer。这里我想说明一个道理:所有的面试技巧都是建立在面试者已经具备了相对合格的实力的基础之上。学习没有捷径可走 ,希望每一位面试者都能尽早明白这个道理。
同时我身边也有一些实力很强的同学,但在面试中没能发挥出自己的实力。我自己也碰到过,面腾讯就投到了一个不敢兴趣的部门,面完几轮下来双方都很痛苦。面试者需要意识到,面试不仅仅是一场测试,更是与未来自己职业的沟通与交流。要充分了解自己的实力与岗位所需,找到能match的地方(这里特别是针对算法岗,找到能与自己工作match的岗位对后面的面试至关重要),自信地向面试官展现自己的实力,扬长而避短。
经历
从最早5月面的腾讯,到10月面完AWS,两个月面了5家大厂,不能不说不累,再加上实验室research不能耽误,实际上能支出准备面试的时间不多。
- 腾讯
腾讯最开始投的是CDG,后面阴差阳错的被IEG捞起来面(本人游戏黑洞)。一面问了些python和tensorflow的基础,聊了一篇paper的工作,问了一个智力题;二三面面试官都对我paper比较感兴趣,主要是聊paper的工作;四面很奇怪,面试官鸽了我半小时,在听完paper后,问我平常打啥游戏(一脸懵逼??本人平时偶尔玩玩单机,荣耀吃鸡都水平一般)。
面试周期很长,持续一个月,一般一周才等来一轮面试。可能面试官看出我对游戏行业没有热爱吧,4月份被重新推荐到了另外一个部门。嫌从头再面麻烦,直接拒掉了邀约 - 阿里
阿里最开始意向蚂蚁金服,后来考虑到个人所长与职业发展,最终选择阿里云。一二面是去的云栖小镇现场面。一面好像是主管面(面试官p8),主要问了我成果落地方面的问题,问了一些分布式计算、计算机基础,考了一道编程题;二面是我的内推人,着重聊我paper的工作,research的细节;三面交叉面,时间不长,主要问计算机基础,聊了聊paper;四面视频,也主要着重计算机基础,聊了聊paper的应用场景,考了两道题;五面hr,在西溪园区现场面,聊了聊我在校企合作中,成果落地的一些细节。
整个过程还算顺利,面试周期半个月,4.5顺利拿到offer。整个面试过程下来让我感觉,阿里云确实非常注重成果的落地,而不是单单看有没有paper。paper发的多是不行的,要能解决实际的问题,可以被落地应用,这也是我很欣赏阿里云的重要原因之一。 - 网易
因为师兄在网易雷火的伏羲 AI lab,通过他的内推,我直接进入了面试环节。不得不说猪场效率是真的很高 ,安排了一个滨江园区的专场,一天内走完4轮面试。一面考coding,面试官数学不错,不只关注深度学习技术本身,更注重其原理、公式的推导;二面小姐姐很和蔼,主要是聊paper咯;下午三面部门老大,更加细致了聊了下paper,老大对paper的工作很感兴趣,考了一道编程题;四面hr,这轮面第一次被hr小姐姐diss了 ,那句”我觉得网易可能业务太小了,你为什么不去阿里呢”,终身难忘。
本来以为要被hr拒了,没想到还是收到了offer,感谢hr小姐姐的不杀之恩。 - 华为
华为在各高校进行了广泛的宣传与动员,我是通过“校园之星”渠道进入华为的面试流程。面试流程也很高效,可能我面的是华为云的岗位,过程与阿里云的面试差不多,面试官注重论文的实际的应用场景。其中,二面主要是发散面,提供一个和研究领域截然不同的领域,检查快速学习和解决问题的能力。前两轮都有代码面。 - AWS
AWS是通过导师内推去的,一开始是电话面试,主要是论文和一些技术能力的考察。二面比较粗暴直接,需要在就一周左右的时间做作业,作业有两个方面,一个是aws服务的调用(写代码),第二个是aws服务演讲(做ppt)。作业提交后通过了才能进入下一环节。三面出乎意料面试官没有让我按ppt来讲,直接说我们来进行下角色扮演,即提供一个问题,让我设计方案然后一个一个组件问,技术问的很细,还问了很多场景问题。
总体上AWS比国内大厂的面试流程要短,但问的问题更加的广泛,更考察在本领域深度足够的情况下,知识广度的情况。
总结一些经验
- 关于Coding
coding是从事互联网的必备功夫,在不久的将来,coding也会成为像英语一样需要掌握的必备技能之一,所以很多想从事互联网行业的跨专业同学来说,coding不好不应该成为你的借口。不好就练,不服就干。
在面试过程中,coding是几乎是必考题。在大多数公司的面试中,这一部分的表现非常重要,而对一些外企来说,在没有优秀的背景下,这部分的表现甚至是具有决定性的。对于这部分的准备,首推LeetCode等网站。
面试中的coding考察,基本是白板,代码不会很长。许多面试官在面试的时候,会故意先抛出一个模糊的问题。实际上,他们希望面试者能够经过一些询问理解问题。在这个过程中,面试者要展现出自己分析问题以及沟通的能力。可以让面试官给一些样例,切忌有了思路之后,不与面试官交流直接写代码,全程要多交流。代码写完后,要主动测试,给出算法的复杂度。
2. 关于Paper
这部分最有心得体会,毕竟5家大厂面下来,他们问的最多的,还是自己的research。
可能很多人有个误会,认为论文在手,天下我有。这是一个误区。现在计算机飞速发展,人工智能领域的论文数像是新一轮的摩尔定律高速增长,背后也是源于其辐射面广,业务问题多所致。不同方向之间,像视觉与nlp,机器学习等,彼此解决问题的方法,可挪用性很小,这就需要我们充分了解自己research与应聘岗位的业务与需求。
- 了解应聘岗位
这是应聘的第一步,内推尤为关键。不要随便用内推码,或者统一的内推途径,最好是通过熟悉的朋友、师兄姐,直接推到部门,这既可以加快面试流程,同时可以帮助你更好的了解部门的业务情况,以及你将要做的事情。
每年招聘,各家大厂都会有校园行。来校园宣讲的一般都是senior的团队leader。要充分抓住这种交流机会,了解对方业务,寻找与自己工作可以match的点,最好会后可以留下联系方式。
有的时候部门会出来直招(像阿里,各个部门团队是各自出来宣传的,有段时间,看的基本全是阿里的招聘信息 ),部门直招会有很详细的部门的介绍,同时有微信群可以交流,一般可以通过学校论坛,或者同学邀请等方式加入。群主一般是对应部门的员工,或者hr,会很热情的帮你解答一些问题。 - 准备Slides
了解到业务后,充分展现你的实力就是头等大事了。这里我推荐在简历之外,对自己的工作单独准备slides,现场面可以通过投影展示,电话或者视频面试,也可以让面试官同时打开,这样在交流起工作的时候,面试官能更好的follow你的工作。slides不要全是文字,图文搭配,更容易让人理解。
所以,要充分展示你的实力,要学会将自己的文章像做report一样宣传出来,如何做好report有很多学问,这里限于篇幅不展开讨论。 - 落地应用
光是讲自己的工作是不行的,面试官最关心的,是你的工作是否可以与公司的业务结合,可以帮助公司解决某些问题,其次才是你的research展现出的科研实力。在当前论文数指数上升的时代,前者显得尤为重要。比如面阿里云,他们就对我的模型在分布式部署,参数训练,实时响应等问题上问了很多。面试者在准备面试的过程中,也需要思考如何将自己的工作与公司的业务场景结合起来,如何能更高效的运行。在这方面,反而很多数据竞赛具有先天的优势,因为赛题基本都是来源于实际的业务。
写在最后
车到山前必有路,面试本就是一个多向选择过程。要充分了解自己,充分了解对方企业,充分展现实力。祝各位都能拿到dream offer。
全部评论
(2) 回帖