内容简介:2019 年第本文大约周末了,就不写技术了,来聊聊关于春招/秋招面试的事情,刚好最近也是逐渐开始春招找实习或者找工作的时候了,我就介绍一些当初准备春招实习和秋招工作面试的一些经验吧,主要是算法工程师岗位的经验,但其实除了在面试的知识准备部分有所区别,对所有技术岗位都是适用的。
2019 年第 24 篇,总 48 篇文章
本文大约 5000 字,阅读大约需要 15 分钟
周末了,就不写技术了,来聊聊关于春招/秋招面试的事情,刚好最近也是逐渐开始春招找实习或者找工作的时候了,我就介绍一些当初准备春招实习和秋招工作面试的一些经验吧,主要是算法工程师岗位的经验,但其实除了在面试的知识准备部分有所区别,对所有技术岗位都是适用的。
1. 面试的准备
个人认为,面试是否成功,主要就是靠 硬实力+运气 ,前者是基础,后者则是可遇不可求,即便你努力去转发锦鲤或者杨超越妹妹,也不一定会受到幸运女神的眷顾,所以首先还是牢牢把握可控的因素--自身实力!
而实力部分主要是对知识的准备,包括以下几项:
-
实战经验,包括实习经历、项目、比赛、科研论文等;
-
算法,机器学习、深度学习的算法知识,更具体方向的计算机视觉、自然语言处理、语音识别、推荐系统、广告点击率等知识;
-
数据结构(链表、树、图等)+算法(贪心、动态规划、分治、 排序 查找、回溯等)
-
编程语言
-
计算机基础,包括操作系统、 Linux 、计算机网络、数据库等
不过,如果是春招找实习,那么可能很多人是缺乏实战经验的,即没有实习经历和比赛经验,对于研二的同学,也会遇到科研项目和寻找的岗位不匹配,没错,这里 实战经验的大前提是与寻找的岗位匹配 !不匹配的项目等实战经验千万不要写在简历上,它对你的面试并没有太大帮助,甚至可能有反作用。
实战经验的重要性在于可以将面试官会提问的问题固定在某个领域,比如如果是图像方面的项目,面试官一般也是提问图像方面的问题,而不会突然问语音或者推荐系统的问题(除非你还有这样的项目或者投这方面的岗位,否则概率极低)。
所以 有实战经验,面试官就会根据你做过的项目/实习经历等来开始问题以及拓展到对应的算法知识 ,比如你做的是图像分类的问题,用的是 CNN 网络模型,那么除了问你在项目中的工作以及成果,还会继续问下 CNN 的一些知识点,比如 BatchNorm 这个非常常见的问题(我当时面试时候,经常遇到这个问题),然后也有可能会一些分类方面最新最前沿的一些技术或者网络模型。
因此,对于自己的项目,需要非常熟悉,并且最好提前进行演练,即对项目的介绍,这里建议可以给自己的同学介绍项目,保证表达比较顺畅,不会有过多的停顿,而且将重点内容都完整表达出来!
而如果没有这部分知识,面试难度就会自动提升至少一个档次了,面试官就只能提问算法、数据结构、编程语言部分的问题,这时候你得祈祷面试官问的刚好是你复习过的,掌握了的知识点,毕竟这几个方面其实包含了很多知识,要想完全复习好这几个方面的知识,并不容易,除非提前几年就开始有计划的系统性的学习和复习。
除了对于知识的准备,还需要准备一份 大约 1 分钟左右的自我介绍 ,简单介绍自己的基本信息,求职岗位,自己的优势点或者掌握的知识和技能,以及为什么投递这个岗位和选择面试的公司。
然后呢,还需要准备 几个提问面试官的问题 ,这是因为通常面试结束时候,有的面试官会给你提问问题的机会,这时候最好是要问1-2个问题,而不是说没有其他问题,一般可以咨询下面试官的部门(了解自己被哪个部门面试,也是可能实习的部门)、部门的业务内容,比较有风险的就是询问自己这轮面试的表现了(特别是明显知道表现不好的情况)
此外,这里推荐几个有关面试的 Github 项目:
1.第一个也是最近非常多公众号推荐的一份面试总结 Github--2018/2019/校招/春招/秋招/算法/机器学习(Machine Learning)/深度学习(Deep Learning)/自然语言处理(NLP)/C/C++/Python/面试笔记
https://github.com/imhuay/Algorithm_Interview_Notes-Chinese
2.之前推荐过的一个深度学习 500 问教程: [资源分享] Github上八千Star的深度学习500问教程
https://github.com/scutan90/DeepLearning-500-questions
2. 实习很重要
春招实习是非常重要的,无论如何都务必好好准备春招实习,并且争取拿到实习 offer,这有几点好处:
-
首先自然是有了非常重要的实战经验,而且在秋招中有了一定的优势;
-
第二,通过实习转正获取工作 offer 的难度要小于秋招找工作,这也是个人亲身经历了,实际上很多公司的校招名额都会预先留给实习转正的同学;
-
第三,实习转正,并最终选择这个 offer,那么也有利于工作后的无缝接入,快速进入状态,这也得益于实习的经历(一般都是2-3个月实习时间),对公司、部门、自己的工作都比较熟悉了。
所以,即便被 10 家、20 家、50 家公司拒绝了,也不要放弃,实习经历真的非常重要!
3. 简历的准备
对于技术岗位,简历其实不需要太过花哨,简洁明了即可。我有以下几点经验:
1.首先简历一般需要包含以下的信息:
-
基本信息,姓名、学校、性别、手机和邮箱、 求职岗位 (这个很重要)、 个人博客 or Github (加分项)、教育背景(一般从本科开始写)
-
实战经历,包括实习、项目、比赛、科研论文,最好至少包含两个,并且与岗位匹配,然后主要写项目背景、自己的工作以及工作成果,不需要太过详细;
-
技术/能力,对应于算法、数据结构、编程语言这些, 注意,不要用精通 !一般是用 熟悉 来介绍对技术的掌握程度,如果只是了解也不需要写,此外,这部分也适当详细写,比如对于机器学习算法,可以写熟悉逻辑回归、支持向量机算法,这样方面引导面试官提问这些算法知识,而不是笼统的写熟悉机器学习算法!
-
成绩和获奖情况,这部分如果是对于互联网公司,一般可以不怎么写,但对于国企还是必须写的;
2.简历最好是 保存为 pdf 格式 ,而不是直接发送 word,这是考虑到 word 不同版本会导致格式出错问题;
3. 简历名字一般以“姓名+学校+求职岗位”命名 ,并且发送邮件时候,主题也应该以这样的格式来写;
其中第三点就是为了保证能通过简历筛选,当然这一关对学历是有要求的,通常 985/211 学校会容易通过,非 985/211 的学校同学可能这一关会遇到很大的难度,但一定不能放弃,原因自然是第二点说的实习很重要,特别是如果你的学校已经不占据优势了,如果还没有实习经验,那么秋招寻找工作就难上加难了。
4. 边面试边总结
对于技术岗位来说,需要准备的东西真的非常多,从编程语言,到数据结构,再到算法,计算机网络、Linux、操作系统,每一项如果要深入了解,都有很多问题可以问的,所以完全准备好再投递简历,基本是不可能的,或者说时间不等人,完全准备好可能就错过实习面试的时间点,通常都是先开始面试,然后查漏补缺,以战养战!
但这也是有一些技巧和策略的:
-
首先要通过 投递一些中小公司 来熟悉和积累面试经验,而不是一开始就挑战 BAT,特别是你心仪的公司;
-
尽早进行内推,抓住内推的机会,即便是心仪公司,也不能推迟太久,比如现在开始的春招实习,3 月份应该就开始很多公司的内推了,一般到 3 月底就结束内推,开始进入正式的校招阶段,内推很多时候都可以直接进入面试,而不需要笔试(很多公司的笔试都非常难,比如网易),而且大部分公司在内推面试失败情况下,还可以参加正式校招笔试和面试,少量公司才可能因为内推失败而无法进行校招面试,所以即便是为了先熟悉面试过程,也不能将投递大公司内推简历的时间推迟太久,最好三月中旬就要开始进行内推;
-
即便笔试没过,还可以尝试霸面 ,也就是去面试现场投递简历,坐等被面试官看上你的简历,多数公司都允许霸面,当然概率一般不高,但记住即便是 1% 的概率也需要去尝试,还是这句话,实习很重要!
5. 关于面试
通常面试有三种形式,电话、视频和现场面试,难度依次增加,不过实习时候通常会以电话和视频面试为主,主要也是很多公司实习一般只会在特定的几个城市设置现场面试的机会,一般就是公司总部所在的城市,当然其实也就是几个大城市,北京、上海、深圳、广州、杭州,杭州还是得益于阿里和网易两家大公司。
为什么现场面试难度会是最大的呢?
第一,是因为手写算法,比如手写一个快速排序算法(非常容易问到的排序算法);
第二,直接面对面试官,如果心理素质或者经验比较缺乏,容易因为没有答出某个问题而影响后续的发挥,特别是遇上很有气场的面试官,完全看不出表情变化、一脸冷漠的面试官,压力更加大了。
视频面试难度次之,一般视频面试阶段会要求在指定的在线网站编写算法,而电话面试一般只需要给出解题的思路,所以难度上,现场 > 视频 > 电话。
面试的轮次也是看不同公司来决定的,有的就三轮面试,两轮技术面+Hr 面,但有的可能会有 5,6,7 轮技术面试,面试官的级别越来越高,不过,这种情况不多见,一般是评级比较高,也有的是因为面试两三轮后,面试官觉得你更适合其他部门部门,帮你调到另外一个部门,继续面试,也可能是被当前部门淘汰,其他部门又捞起你的简历进行面试。
通常,第一轮面试会问 比较基础且全面的内容 ,包括项目、算法、数据结构、编程语言,时间一般也是控制在半小时到一个小时之间,刚刚说到的实战经验的重要性在于,如果这个阶段,你对自己的项目非常熟悉,准备充分,很有可能在项目这部分就占据面试时间的 80%-90%,面试官在问完项目后,可能直接结束第一轮面试,或者简单提问几个数据结构等问题;
第二轮开始,就会比较深入, 重点考察解决问题的能力以及你的潜力 ,对于项目的询问就会涉及到你如何解决遇到的问题和困难,如何改进优化,甚至会给出其他的场景,让你提出解决的方案;
对于 Hr 面,一般就不会涉及到技术问题,主要是考察其他方面问题,比如沟通交流能力、兴趣爱好、家庭背景以及薪酬福利等问题,并且 Hr 面也不代表你就一定可以拿到 offer 了,所以还是需要重视,好好做好准备。
6. offer 的选择
最后一条,其实是尽可能多拿几个 offer,提供选择的空间,这里主要有几个考虑的角度:
-
大公司还是小公司:两者的优势各有不同,在大公司工作也可以说是螺丝钉,专门负责某个方向或者领域的业务,而小公司一般就需要负责很多东西,甚至一个人负责一个项目,对能力的要求很高,特别是需要全栈类型的,但个人经验,刚毕业工作最好还是选择大公司,一方面目前的就业环境,大公司更加能度过寒冬;另一方面,在大公司里,优秀的人就在你身边,你可以随时向他们请教学习,更加有利于自身的技术成长!
-
互联网公司还是国企:前者工资待遇更高,但通常就是 996,体现了一分耕耘一分收获的道理;后者就稳定,但工资就没有那么大的吸引力了;
-
部门:部门也是非常需要考虑的问题,一个业绩好的部门,年终奖就非常丰厚了,但更辛苦是肯定的;一般核心部门业绩也会相对比较好,边缘部门则业绩一般,并且随时可能部门解散,只不过核心部门一般业务就比较成熟,进去后的工作可能就比较重复,可能就是增删查改。关于部门选择,如果运气不错,进入新成立部门,是一个比较好的选择!
-
城市:公司所在的城市是否是你未来发展考虑的城市,对于工作 offer,第一份工作都是比较重要的,一般也需要有 1 年工作经验才好考虑进行跳槽;
-
岗位:offer 提供的岗位是否是你求职的岗位,有的公司会随机分配你的工作岗位(比如华为的软件工程师岗位);
-
薪资待遇:这个非常重要了。
即便你拿到了心仪公司的 offer,如果不是所有条件都匹配,比如部门、岗位或者城市之一都不满足你的希望,还是需要努力多拿几个 offer,多几个选择,并且多几个 offer,也有利于在 hr 面谈论薪酬待遇,有底气来争取更高的薪酬待遇。
以上就是我的一些关于春招/秋招面试的经验,因为距离时间有点久(两年了),加上我不是大神(没有手拿十几个offer),所以上述经验只是当初经历过春招实习和秋招工作面试后得出的几条经验,并且限于我的表达能力,可能描述得不是非常简单明了,有些啰嗦,请见谅!
欢迎关注我的微信公众号--机器学习与计算机视觉,或者扫描下方的二维码,大家一起交流,学习和进步!
往期精彩推荐
机器学习系列
Github项目 & 资源教程推荐
以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网
猜你喜欢:- 如何面试-作为面试官得到的经验
- Python面试经验总结,面试一时爽,一直面试一直爽!
- 2018年最新面试经验总结
- 2020 Golang字节面试经验分享
- 一年半经验,百度、有赞、阿里面试总结
- 中专毕业生的前端面试经验分享
本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。