一、写在前面的话
历时近3个多月的2021届秋招已渐渐接近尾声,仅以此记录与回顾这个让人身心俱疲的过程。先用高中写作文的模式开头吧,说一下目前的大趋势,首先是计算机这个专业与方向,现在已经流传出一句话叫“各个专业的终点均是计算机”,像机械、金融、材料、土木、微电子等这些专业的竟然都来分计算机的羹,我甚至在一个群里看到一个人说他医学专业的去年学了一年编程今年来找开发的工作,所以计算机真的是人越来越多,再加上今年疫情很多留学生回国找工作,更加大了今年的竞争压力,举个例子,据说猿辅导今年算法岗进面试的都是c9加海归,竞争压力可想而知。算法岗据说从去年开始已经是诸神黄昏,今年更甚之,而cv算法岗更是算法岗里的重灾区,各大公司的内卷已经严重到几乎hc为个位数的地步,这也是我用“海量hc==1”为标题的原因。
说说我个人的情况吧,本人非科班,我在今年投递的都是cv算法岗,在学校期间做的都是cv相关的工作,再加上我读研入门也是基于对图像产生的兴趣,而这个兴趣还没有磨灭,虽然现在说“兴趣”这个词没有人会相信,但是一直没有转开发,7月份在腾讯实习结束开始回学校刷题,整个8月份是笔试面试最密集的月份,到了9月真的感觉身心俱疲,最密集的时候一周每天都有面试,一天白天三场面试,晚上还要做笔试,所以找工作也是对身体和心理是一大考验啊,而我这期间又穿插了导师要求出差和扁桃体发炎导致发烧又是特殊时期被迫住院等核酸检测结果,真是曲折又艰难。当然了,不乏一些大佬轻轻松松拿到大厂算法offer,但是我相信很多像我这样的“普通”硕士(这里无意贬低大家,勿喷),这个过程应该也是漫长而又焦急的,所以仅以此记录我们共同经历过的秋招。
二、细说整个过程
这里就按照各个公司走过的不同流程记录一下所有投的公司,对于我自己有想说的话的就写了内容,没有想法的就没写。
1、 简历挂:图森、商汤、快手
商汤和图森其实是和我在学校做的基于lidar点云的3D目标检测和他这个岗位是最匹配的,也是我最想去的,然额都简历挂,哎。不过商汤我3月份面过实习,感觉两面的面试官都在白嫖我的idea一样emmmmmm。快手和其他所有公司最不一样的是,没有投递限制,一个岗位挂了还可以投递其他岗位,但不知道是不是因为我之前拿了实习offer没去把我拉黑了,反正一投就挂。
2、 笔试挂:猿辅导、拼多多、网易互联网、大疆
猿辅导应该算是我回学校后参加的第一场正式批笔试,他们是没有提前批,直接正式批,8.1号笔试,后来听内推人说算法岗进面试的都是c9和海归,真是吓人。但是不得不说,猿辅导和网易的笔试是真的难(也可能是我菜),每一道题的题目都是一篇作文的长度,读起来费劲又费时。
拼多多的是提前批笔试挂了,同教研室是有同学面试的,但是听说他们做的都是推荐、nlp这些,我同学也是因为做的cv,对***得方向不匹配挂掉的,而我想着自己也是cv,所以正式批就没再投了。
这里不得不说一下大疆的笔试,图像算法岗位的笔试题竟然考到都是传感器、成像原理、信号噪声估计这些,这谁会,,,,,,。
3、 放弃笔试/面试:小马智行、58、百度
百度是因为我投的算法,打电话让我面开发,前面说过我根本没准备开发的面试,遂放弃。其他的是因为时间不合适。
4、 笔试完没消息:美团、小米、b站、携程、滴滴、阿里、vivo、oppo、爱奇艺
这里面美团、小米其实挺想试试的,但是笔试完了就没消息了,估计是海比,再加上这两家公司都有提前批,美团叫本北斗计划,小米叫小米星,我当时是因为刚回学校刷题,怕浪费机会,想多准备一段时间就没敢投他们的提前批,可能他们在提前批就把算法岗招完了,现在想想真是后悔,所以还是要早做准备。
Vivo今年的提前批特别早,6月初就截至了,它的提前批和正式批我都投了,笔试也做的还不错,但是做完就没消息了,不知道为啥。
阿里估计是这里面最难的,因为阿里的校园招聘主要靠实习转正,转正率几乎100%,秋招好像很少,特别是技术/算法岗,所以笔试完没消息也在意料之中,身边有两个认识的同学都是实习转正了,所以以后志在阿里的同学一定要进实习。
5、 参加过的面试
记录一下问过的问题,当时面试完没有记录,很多都忘记了,只能记录能够回忆起来的。
l 京东:一面挂
一面视频面
项目及论文细节提问
防止过拟合的方法
Dropout的实现
L1与L2正则的区别及各自细节
Python中的类与继承
手撕:k个一组反转链表
反问
(在项目介绍环节,面试官除了问我实习的时候参与的项目之外,还问我当时为啥要做这个项目,以及这个项目后续的落地情况,我当时是真不知道,为啥要做也是mentor来决定和分配的,我觉得一个实习生也接触不到这个决策的过程吧,而我当时实习的部门是预研部门,后续的落地也不是我们部门做的,估计我mentor都不知道啥时候能落地。后来反问的环节,从面试官的语气中好像是我这两个问题回答的不好让他决定把我挂掉。)
l 字节:提前批一面挂
投的上海那边的飞书,然而面试体验是我今年面试中最差的一次,估计也是所有参加了字节的面试的人中为数不多的面试体验极差的一次,那个极不尊重人的吃东西面试的经历我已经写帖子吐槽过了,有兴趣的可以看一下,链接在这儿
https://www.nowcoder.com/discuss/472355?source_id=profile_create&channel=1009。
本来字节的提前批是没有笔试的,但是飞书非要独立安排笔试,笔试完后一面的面试官也没问啥,项目论文都不问,具体可参看上面的链接。
估计是提前批的那个面试官给我的面评写的太差,正式批一投一个挂,哎,命里无缘。
l 科大讯飞:二面完泡池子
7.31提前批笔试
笔试完一个月后两轮面试
一面:深挖简历与论文
Python中的继承
过拟合
anchor-based 与 anchor-free
二面:介绍论文与实习
论文的结果对学术界的贡献;未解决的问题有哪些
喜欢做偏向工程还是偏向研究
为什么喜欢偏向研究or工程,特质有哪些
l 虎牙:一面挂
8.6一面
深挖项目与论文
C++中的虚函数
C++中的继承与多态
智能指针
手撕:非递归快排
(一面后一个半月感谢信,泡的池子真大!)
l 网易互娱:一面挂
8.10电话面
深挖项目与论文
算法题:如何让1到100的有序数组打乱为彻底无序
l 新浪:二面完泡池子
新浪是先hr面,大概40分钟,之和收到邮件说通过了hr面,参加专业面试,基本上就是深挖简历。
l Shopee:一面挂
一面结合简历进行深入挖掘,感觉答的挺好的,不知道为啥挂了。
l 腾讯:被捞三次,挂
腾讯是投了之后坐等被捞就行,总共被捞三次,三次面试自我感觉回答的好坏程度是:
第二次 > 第一次 > 第三次
但是三次面试都挂了。
第一次:比较常规,深挖简历再拓展问问题,反问环节面试官说我回答的都没错,但不是他想要的最佳答案(哎,何为最佳答案?)。
第二次:常规深挖简历+拓展性问题,这次是我觉得回答的还不错的一次,对于一些拓展性问题也比较灵活的回答上来了,但是面试官说有一两个问题回答的他不太满意,于是挂。(可能大厂就是要完美无缺吧,哎)
第三次:这次回答的确实不好,问了很多深度学习的trick背后的原理(如,要同时使用BN和dropout该如何使用?如何将one-stage和two-stage的目标检测网络进行组合使用以达到最佳效果?),可能平时的思考确实不太够,最后面试官说“是不是感觉今天面试跟你平时看到的想到的不太一样”,我尴尬的说了是,就结束了。
l 网易雷火:5面挂
之所以在8月到9月经历了网易雷火的5轮面试,是因为我一开始投的叫图像算法研究员,等我3面完,hr说没hc了,让我换岗位,供我选择换的只有叫用户画像研究员,于是又面了两轮。
一面:深挖简历
手撕:一个二维dp找邮局位置的题
二面:深挖简历
论文使用的loss函数
手推loss函数的梯度公式
手撕:判断有向图的环(深度优先遍历)
三面:深挖简历
介绍论文对该领域的贡献
接下来的两面是在用户画像这边的面试,刚进入面试,面试官就说看我是做cv的,而他们这边其实是偏推荐的,主要业务是反外挂及利用AI设计更好的游戏体验,接下来的两面都问我为啥投他们,问我愿不愿意做推荐。
四面:如何从游戏里面截出来的图片判断用户是否使用了外挂?
手撕:翻转链表
五面:你玩什么游戏?
如何利用图像或者视频数据判断玩家有没有使用外挂?
如何利用你知道的AI技术提升你玩的游戏的用户体验?
在游戏中有高端玩家和普通玩家,如何设计匹配模式来平衡不同玩家的游戏满意度?
手撕:topK
这里不得不夸一下五面的面试官,跟四面的面试官一样都知道我是做cv的,于是问我的都是开放性的问题,在我回答过程中也会介绍先验知识再让我回答,也会对我说的答案进行评价和引导我回答问题,看我说的不太自信时也会对我的回答进行鼓励和肯定,整个面试下来真的好感倍增,不像字节某书的面试官一样让人**。
l 华为:优招挂+正式批主动拒绝
今年华为的形势大家都知道,但是我觉得不管公司形势怎么样,也不应该成为故意在校招中使应聘者体验不好的理由,在这里无意黑华为,只是就事论事以事实说话罢了。
先说说具体遭遇,大概在今年5月份的时候,接到一个华为电话(也不知道从哪儿搞到的我手机号),说是上海杭州那边的海思下面的一个AI媒体解决方案部门,今年秋招要招一些算法、软件、计算机视觉、机器学习这些岗位,然后介绍一下他们的业务,让把简历发给他们先提前做一个登记,到了7月底的时候那个hr又打电话,说他们的秋招优招快开始了,让我去官网注册简历,然后投他们,把简历编号告诉他好安排面试,在正式面试之前还会安排一次电话预面试,于是在某天晚上8点多接到电话。
预面试本来说是只有一个面试官跟我聊,在8点多第一个面试官介绍了一下之后,感觉第一个面试官对我做的东西不太懂,就很快结束,他说等下还有一个同事跟我聊。于是在10点多接到第二个电话,聊了近40分钟,问了项目及深度学习中的问题,如对于训练数据的处理,数据增强的手段,这些都是针对他们实际项目的问题,并讨论了工业界与学术界在这部分处理的区别,还有一个算法题,大致意思是针对一个接口,设计矩阵相乘的方法(好像是可以使用matlab中矩阵相乘的思路,具体有点记不清了)。总的来说,第二个面试官感觉很专业,会像网易雷火的五面面试官那样引导我回答问题,而且会讨论工业界与学术界在针对同一问题的不同处理思路,这一点蛮惊喜的。电话面试后,我把情况告诉了hr,hr说他也不知道为啥会有两个电话面试,说去问问,然后告诉我昨天晚上第二个是华为杭州研究所那边的一个博士(果然博士就是不一样)。在经历了电话面试之后,一切都不一样了。过了几天hr通知说电话面试通过,给我安排专家正式视频面试,一共两轮,每一轮都是上来一道手撕题,第一轮是数字7炸弹游戏,第二轮是一个dfs的问题,但是这都不是最重要的,重要的是两轮面试中根本没问我技术问题,更没有像那个博士电话面试那样问cv相关的任何问题,只是让我介绍一下,然后问项目遇到的困难及怎么解决的,然后hr通知我挂了。就很莫名其妙,我感觉两轮视频面试的“专家”就不懂cv,根本还没有电话面试的博士专业。
到了正式批,好戏又上演了。前面海思那个部门的hr已经不理人了,这时无线的hr又开始联系了,说是有做自动驾驶的部门,里面有关于感知算法、计算机视觉算法,我一看跟我在学校做的还挺相近,于是就投了,然后就是安排笔试,但是在我通过笔试之后,却接到无线hr的电话,说他们无线今年不招AI算法,让我去面试开发,要不然就没了,而且是第二天面试开发。What?在开玩笑吗?前期宣传的时候说有这个岗位,把人骗过来投简历,结果面试前一天打电话说今年不招?而且成渝地区是9.4号晚上8点锁简历,无线在9.4号上午还进学校开了一场线下交流宣讲会,其中ppt和宣传册上明明白白写的是招这个岗位的(ppt岗位那一页我有拍照),而且在互动交流环节,我还特意去问了这个岗位,现场的hr说是招的,结果第二天面试,前一天跟我说他们不招,这不是耍流氓吗?于是主动拒绝面试,流程终止。
l 虹软:一面挂
虹软的笔试是他们自己的平台,不能用本地ide,调试起来好难受。
一面视频面,主要深挖简历,深挖论文细节。
挂的也是莫名其妙。
l 地平线:一面挂
深挖简历,深挖实习。
项目中用到的各个网络的结构及各自特点,现有最新算法。
感兴趣的研究方向。
手撕两道:关于字符串匹配
斐波那契数列
地平线的一面面试官好像是在家里面的,一面挂我觉得主要有两个原因,第一个是面试官看我在学校的研究方向是关于3D detection,就问我为啥选这个方向,然后问我现在对这个方向感兴趣吗,我说这个方向是我自己选的,然后毕设也是这个,所以现在对这个方向挺感兴趣的,说完面试官说,“哦,那我们公司这边主要是2D视觉,没有3D”,说完场面安静了,一度尴尬(我当时可能脑子抽了,竟没想起来去表达一下愿意做2D的意愿)。第二个原因是,我那天下午面试没带电脑充电器,而本来约好的面试时间,面试官又有事晚了40分钟,所以电脑在我写完算法题还没来得及解释的时候自动关机了,,,等我用手机进入面试房间说明情况的时候,面试官说先这样吧,就结束了,哎,命途多舛。
l 寒武纪:一面挂
30分钟电话面试。
深挖简历论文细节。
训练与测试的区别。
机器学习中的聚类方法。
个人感觉答的还可以,不知道为啥挂。后来听hr说,今年投寒武纪的很多都是C9,top2加海归,可能要优先考虑他们,哎,果然top2还是top2。(个人内心疑问:寒武纪啥时候这么厉害了,竟然这么多c9投他们,哈哈哈哈哈哈)
l 小红书:二面完泡池子
一面:手撕代码(主要考dp)
二面:介绍论文与项目
如何判断过拟合与欠拟合
目标检测样本不均衡的解决方法
分类问题与打标签问题的区别
如何修改网络使分类问题变成打标签问题
l 依图:一直等结果,池子太大!
3技术+1hr
一面:撕代码(关于字符串处理)
二面:深挖简历
介绍项目创新点,对该领域的贡献,对该领域未来方向的预测
撕代码
三面:介绍论文与项目
项目指标
评价指标
遇到的困难及解决方案
各个时间点的突破点
hr面:常规hr面
不得不说,依图三轮技术面的每个面试官都特别有礼貌,他们上来会自己先做自我介绍,这是我在整个8月遇到的唯一一家公司的面试官会上来做自我介绍的,而且很有耐心,会指引我直到写完代码,好感真的爆棚。
l Tp-link:offer
提前批2专业面试+1hr,总体来说很平和,主要根据简历来提问,结合在校经历和项目深挖。
l 汇顶:offer
7.25一天三轮面试走完流程
一面是两个面试官针对简历轮流提问
二面是hr面
三面是leader面:问了项目的难点及解决的过程,扮演的角色
给你一个方向,在三个月内做出state-of-the-art的效果,打算怎么完成
l 大华:offer
2技术+1hr
一面:介绍论文与项目
指标达到的程度
二面:介绍论文与项目
Faster RCNN讲解
new和malloc的区别
c中的字符串结束符
大华所有的面试都是电话面试,而且是毫无预兆的突如其来的电话面试,没有任何预约,这一点其实让人感觉不是很好。而且我二面的面试官和通知薪资的hr给我感觉语气很高傲,二面面试官是在我介绍完我的文章的方法之后,他就不信这种方法,说这和他之前听别人说的不一样,感觉就像是他已经有标准答案了,不相信其他人说的任何东西一样;而通知薪资的hr给我的感觉是他觉得他们特别厉害,有种居高临下俯视我,反正就是很高傲的感觉。
l 中兴:offer
1技术+2综合
1技术和第一轮综合面试都是线上,技术面深挖问了项目,再加上一些基础的机器学习svm这些。
第二轮综合是线下的,就是常规hr面。
l 海康威视:offer
2技术+1hr
一面电话面:介绍论文与项目
深挖论文的细节
基于论文展开进行延申与讨论
二面视频面:深挖项目与实习
手撕代码(topK)
hr现场面:常规hr面
l 旷视:offer
三、遇到的面试官们有感
从实习面试到秋招面试,从技术面试到hr面试,也经历了各种各样的面试官,相信很多人像我一样不同的面试官的不同面试风格会让自己有不同的面试体验,仅以此记录一下自己的感受,就从个人体验来由下至上分成五种面试官吧。
第五种是让我体验最差、感到最不适的就是前面链接里那个字节飞书的面试官了,传递出对面试者的极度不尊重,我觉得要是看不上面试者可以直接笔试挂掉或者像大多数面试官那样不动声色的默默挂掉就好了啊,以一种不尊重的姿态真的让人体验极差。
第四种是挖坑型的面试官。这种面试官是在问你问题的时候不停的给你挖坑,而且还引导你往里跳,让你说错,特别是当你对某个问题不太清楚或者不太确定的时候,他的坑就越深越大,这个我在实习面试腾讯上海优图的时候一个部门的面试官就是这样,在我对几个问题不太确定的时候,他就故意引导我说错的答案。所以一方面是平时自己在学习的时候要对问题有深刻的理解与认识,另一方面是面试时实在不会不要硬撑,否则遇到这样的面试官容易掉坑里。
第三种面试官就是中规中矩的面试官。这一类应该是大多数面试官的样子,就是他们提问完之后我们就只要回答就行了,他们不会对我们的回答做出任何评价与评判,面试结束了就说让我们回去等结果。
第二种面试官是绅士型的面试官。这种面试官给人的感觉是非常舒服的,这里点名表扬依图和小红书的面试官,这两家公司的每轮面试官上来会很和蔼的他们自己先做一个自我介绍,从姓名到从事的业务方向都会介绍,然后才让我们自我介绍,而且在问问题和手撕代码的环节,会给予一定的鼓励与肯定,鼓励我们一步一步写完代码。这种面试官会让我很放松,而且给予我很多的自信,特别是依图,当时8月份面试依图的时候其实是我个人心情比较低落的时候,依图是我第一次遇到的主动自我介绍的面试官,给予的这种正向反馈,会让我比较有自信的完成这场面试,也会激发我想一些开放性问题的灵感。
第一种面试官,是和我有互动与讨论的面试官,这种面试给我的感觉就不像是在面试,而是在参加一场学术交流一样。这里点名表扬海康威视一面面试官、网易雷火五面面试官、华为电话面的博士面试官。这类面试官的特点是,他们抛出一个问题,先让我回答,回答完之后,他们会对我的回答进行一定的评价,指出其中回答的好与不好的部分,并给出他们的答案,而且像华为那样的博士面试官那样,分析同一问题在学术界和工业界的不同解决方案,我觉得这是整个面试下来让我收获最大的部分,既知道了自己的不足之处,又学到了新的东西。
总而言之,第一类面试官应该是最少的,因为这种互动型的面试往往发生在开放型问题或者基于他们的业务今天提问的情况,而且感觉面试官也需要对整个领域或者业务有很深刻的认识,但是大多数面试还是会基于简历深挖及拓展,所以第2-5种面试官应该是最多的。假如未来某一天我能有幸成为面试官,希望自己至少能做到第二种面试官吧。
四、写在最后的话
想想这几个月,经历了等待的焦虑、面试的紧张、落第的失落及收获的喜悦,各种滋味真的是五味杂陈,其实在今年整个秋招过程中感觉自己很无奈,在这个cv算法严重内卷的节骨眼上,那些跟自己方向很匹配、自己也很想去的都去不了,其实也不太知道hr们筛选简历的标准是什么,难道只看有没有CVPR?我觉得这会在一定程度上打击到对某个方向真正感兴趣的人,是的,这里我又一次提到感兴趣这个词,我觉得应该还是有很多人是真正基于兴趣去做一些事情的,但是在这个唯结果论的时代,没有一定的平台和资源来帮助自己的话还是比较难,至少我是,所以在这样的唯结果论的筛选标准之下肯定是会打击到这些人的,这可能就是所谓的向生活低头吧。
最后,还是写一下对后面的人的一些建议吧:
Ø 争取实习:这里其实主要是想说实习可以让你从两方面认识自己,第一方面是在实习中去认识工作是不是真的是你想的那样,第二方面是通过这段实习体验看你是不是真的喜欢和适合,这两点我觉得是最重要的,因为在公司工作和在学校教研室真的的不一样的。除此之外,实习还有一点好处是前面提到的假如志在像阿里这样的公司,实习可能是进入的最好渠道。
Ø 算法、工程两手抓:这一点其实是针对算法岗来说的,在AI盛行的这几年,对于算法岗的要求越来越严格,最开始可能稍微懂点模型就能进,到前两年要求有顶部会论文或者大厂实习,但是今年感觉很多公司更要求强悍的工程能力。
Ø 早做准备:这一点其实是我自己面对像美团,小米这些公司有的感触,前面提到,他们在7,8月的时候开了一些所谓的计划,其实就是提前批,在提前批的时候解基本上上已经把算法岗招满了,所以后面就没有名额了,而我当时是想着多准备一段时间再投,就错过了,所以准备还是要趁早,要不然机会真的稍纵即逝。
Ø 想好你要做什么:这一点其实是想说到底是在算法上走下去,还是去转开发。其实今年身边有很多同学都转开发了,要么是去年年底就开始转,要么就是今年春招开始转,包括学校论坛和牛客上都有很多人转,这些转开发的同学拿到一些大公司的offer还是轻轻松松,还有人几个月速成java或c++轻轻松松斩获BAT的,其实看到真的羡慕不已,所以,在秋招之前真的要想好自己要做什么,内心坚定才能支撑你走完整个秋招。
最后的最后:
- 项目、论文:这一部分应该的是你放在简历上浓墨重彩的一部分,也是hr用来筛选的主要依据,因此首先要在简历上有条理的写出来,这里的有条理是重点要突出,但是最重要的是你要对你所写的项目论文里的每一个字、每一句话都要熟悉,因为面试官可能就会针对你写的某一个点展开进行提问与拓展。
- 算法:算法这一块其实是我想重点强调的,前面也提到过,现在算法岗的要求已经从最开始的对模型的考核转变为要求有强悍的工程能力,而工程能力的体现,往往会在考查你算法与数据结构这一块来体现,而且一些公司甚至不问你主流的深度学习模型是啥,就问你算法与数据结构,所以这一部分的准备的重要程度已经提高很多了。我自己在准备这一部分的时候,由于我是非科班,本科和研究生都没有上过相关的课程,所以一开始是自己先看了书,后来觉得效果不太好,就在牛客上买了两套左程云(大家都叫他左神)的算法课程,配合书和课程的教学视频一起学习的,我买的课程链接在下面:
- 深度学习知识点:这一部分就要靠自己平时的积累与学习了,只是要在秋招前梳理出来就好(这里推荐一下我个人的博客https://blog.csdn.net/hitzijiyingcai,有兴趣可以看看)。
- 手撕代码:这一部分一般是秋招的第一环节也是面试的最终环节,可能直接关系到你能不能走到下一步。这里建议先看完前面的算法课的视频再系统性的刷题,因为很多的算法题都是基于算法与数据结构来出的,假如你对算法不懂,那刷题会很痛苦,这里再一次推荐一下上面的两套算法课程,里面系统的讲了笔试面试必考的算法,像二叉树、图、动态规划、贪心、堆/栈等等,如果不懂这些,只是暴力做的话,笔试面试都通不过的,在学习完之后,再分算法类型的刷剑指offer和leetcode,而且你可以边看课程视频,边刷相关的算法题,我就是这样,而且我在博客里面也是这样来总结算法题的。
洋洋洒洒竟然写了这么多字,搬砖去了。
全部评论
(26) 回帖