作者:樊珈珮

当初也在牛客看了许多面经,刷了不少题目,也受到许多牛友的鼓励,跌跌撞撞也算是找到了相对满意的结果。今天突然想起一直想写篇求职分享,给找工作的牛友参考,也算是一点对牛客和牛友们的回馈吧。有什么遗漏,或者牛友想了解的欢迎指出,尽量补充。

樊珈珮,获得了阿里巴巴、银联、华为等公司的special
offer,最终签约阿里巴巴。

先介绍下本人基本情况,本人光学渣硕,研究方向是图像处理。硕士期间遇到一个很好的导师,有两份实习经历。不过尽管如此,还是找工作找的很坎坷,一方面是:专业和计算机差太远;另一方面是:做得方向不是机器学习,深度学习相关。从8月初到9月末,两个月都在面试,面了有20家公司左右吧,还好运气不错,骗到了一些没睡醒HR。
:)

找工作之前,我们需要做好两件事:明确自己的求职目标和做好相关的知识储备。

关于视觉算法岗:找工作最好的无疑是深度学习方向,现在人工智能处在风口浪尖,薪资也还不错。但是如果做底层的图像处理,比如图像增强,拼接,融合,找工作就会很费劲,本人就是一个例子,一开始面了10家左右公司,几乎没有过的,因为大部分公司都要深度学习岗。所以建议做图像处理的同学可以适当考虑转软件开发岗位,而不是做算法(如果想做算法,可以刷两个天池的比赛),因为图像处理方向真的太窄了,薪资也基本和软开持平,甚至不如软开,个人拿到最好的图像处理offer就是大疆了,别的图像处理算法offer其实还不如软开,所以个人不太看好这个方向,当然,这是个人的浅见,轻喷。

·明确目标·

首先说一下找工作的过程:

我们首先需要想清楚一个问题:我究竟要选择哪个行业?

  1. 确立职业目标

每个行业有每个行业的特点,也有每个行业的现状。有些行业竞争激烈,有些行业相对安逸,不同的专业适配的行业也不相同,选择行业时主要根据自己的专业特长和兴趣而定。特别是那些选择面较广的专业,选择行业时更要慎重。总的来说,选择行业的时候一定要因地制宜,立足于自身的情况,还要多做一些了解,收集一些必要的资料。

这个问题其实很重要,很多人可能还不是特别明确自己做不做技术,做技术改做什么,建议确立一个岗位之后,就不要动摇了。就算找工作的过程多么坎坷,也一定要坚信自己可以的。半途而废,三心二意最可怕,回过头看了下身边找工作的同学,大部分人都找到了七八成满意的工作吧,也算是圆满了。所以,相信自己,一定要自信。

选定了行业之后就是选择岗位了,选择岗位也是一个细致的工作,并不是拍脑袋就可以决定的。这其中涉及到的方面可能有点多,需要大家根据自己的实际情况进行斟酌,这里只能分享一些普适性的东西。很多人会说专业对口,我个人觉得专业对口并不是最重要的。相比于专业来说,我觉得自己在这个岗位之中的竞争力更重要。并不是专业对口能力就强,就一定有优势,还要综合岗位和自身的特点。比如编程开发能力强的同学选择研发岗,创新性强和表达能力好而研发能力略弱一些的同学可以选择运营和产品岗,这样在竞争中更能凸显自己的优势。

  1. 准备期,越早越好

只有明确了求职目标,我们才能做到有的放矢。上面说了这么多,总结起来就一句话:找工作之前首先选择一个自己比较感兴趣的行业,然后在行业之中根据自己的专业和特点,选择一个自己相对有竞争优势的岗位。

js9905com金沙网站,技术面:对于互联网公司就是代码(现场coding,或者电话面考一些语法知识,如虚函数,继承,C
11)
项目(实习,比赛,或者硕士研究内容)。非互联公司基本没有写代码的。不管怎么样,面互联网公司,代码能力很重要,非常重要。因为面试过程中发现,很多面试官并不是做视觉算法(可能做机器学习,NLP)的,所以很喜欢上来就写代码,项目反而问的少,比如常用的:DFS,BFS,动态规划,链表之类的操作必须会。建议刷两遍剑指offer。

·知识储备·

HR面:HR面其实很简单,表现的诚恳一点,很想去这个公司就行了,建议大家搜一下CVTE的HR面试题,个人感觉CVTE的HR面还是比较难的,淘汰率也比较高,好好思考里面的每一个问题,想好合适的答案。能搞定CVTE的HR面,其他公司的基本上就问题不大了吧。。。毕竟大部分公司HR面刷入还是比较少的,有的甚至没有HR面,死了就太冤了。

要有良好的知识储备,注重基础和积累。在明确了求职目标后,可以通过了解岗位需求,有针对性地进行知识储备。如研发工程师可以多看看程序员面试宝典,多刷一刷LeetCode或者OJ,掌握重要的数据结构算法;算法工程师可以多看看相关的算法,弄懂算法的原理,熟悉算法的推导过程;运营可以多看看相关的运营策略等等。除此之外,我们可以看看相关公司该岗位的要求和需要掌握的技能,然后结合岗位分析自身利弊,自身优势加以强化,弱势加以弥补措施。

参考书籍资料:

在互联网方向的知识储备中,还有一点值得大家注意的事:一定要熟悉手写代码。在面试的过程中,面试官往往会让你手写代码,这样不仅便于面试官看出你的思路和写代码的习惯,还能检验你的代码功底。而现在大家往往习惯于用IDE写代码,没有相关准备往往容易在面试中吃亏。

代码基本功:C primer
plus,数据结构,算法设计与分析,Linux命令行,深度学习框架(caffe,tf等等会一个就行)

做好了前期的准备后,要开始找工作了。现在找工作的一般流程是:投递简历—简历筛选—笔试—一面—二面—HR面—offer环节。所以最开始我们需要的是一份好简历。现如今各行各业招聘第一关就是简历筛选。从一开始的简历筛选一直延续到最后的终面,每一轮的面试官都会查看你的简历,其重要程度不言而喻。

视觉算法相关:机器学习西瓜书,cs231n深度学习与计算机视觉,多看论文,对于常用的模型要熟悉:AlexNet,
VGG, ResNet, YOLO,
RCNN系列,SSD,FCN。还有一些trick:BN,参数初始化方法等等

那么究竟什么样的简历是好简历呢?

其余偶尔面试会问的东西:操作系统(C
处理多线程冲突),概率论与数理统计(大数定律,中心极限的定理等等),矩阵论,这些东西考的相对少,但是也会问。建议多刷项目,这样面试官就会没时间问你基础问题了,如果项目太少,就会问很多基础。

第一是美观。这里的美观并不是指要做得多么花哨,而是和现在的UI设计一样,能第一眼抓住面试官的眼球,让他本能地感到愉悦。和扁平化设计追求的东西一样,我们的简历追求的也是简约但不简单。

  1. 8月开始——10月末:投简历,笔试,面试。

网络上有很多简历模板和教程,基本上找一个简约美观的模板修改一下即可。需要注意简历不要太长,1-2页为宜,同时注意保证简历排版和格式的正确性。

8月份大部分都是提前批,虽然很多公司说提前批不影响秋招,但是以我个人的情况来看,似乎提前批挂了就是挂了,正式秋招就没机会了。不知道其他牛友是否如此。所以建议大家慎重!而且现在很多公司提前批以及不免笔试了,所以,如果是很想去的公司,还是要斟酌清楚。

简历内容更加重要,要简洁精练,不放无用的句子。比如同样或者类似的奖项拿过许多,挑一两个最出彩的写即可,不必全部罗列。

9月——10月是正式秋招的时候,建议大家每次都总结面试出现的问题,没答上的问题一定要回去查。同时要调整好心态,不要心态爆炸,本人一开始面了10家公司都挂了那种感觉,简直怀疑自己是不是不适合做技术,后来担心自己找不到工作,面了几个很烂的公司,之后就逆转了。似乎提前批电话面的基本都挂了,现场面的基本都过了。可能是电话面卡的比较严一点吧,所以各位牛友一定要调整好心态,自信点,阳光总在风雨后。