鸽子精回归!关于校招全流程分享
前言:
好久没看牛客了,突然想起来之前鸽的一些校招扫盲贴,正好最近跳槽跑路了,就补一补吧!
常言道,“不打无准备之仗”,在进行校招之前,必须要充分且全面地了解好这个校招的流程究竟是什么样的,做到心中有数,这样子我们才能有更具针对性的准备以及合理的时间规划,进而增加我们在校招中拿到 offer 的成功率。因此呢,本文会详细地分享介绍一下校招的一个基础流程以及事先需要准备的相关工作,比如资料的搜寻,还有合适的时间线安排等。
正文:
part1:相关概念
tip:这一部分不用多解释,在参加校招的时候,我们至少要知道秋招和春招的区别。
校招指的是专门面向高等院校应届毕业生所开展的招聘活动,通常会分为秋招和春招这样两种不同的形式。
秋招属于校园招聘的其中一种类型,主要是在每年的 9 月开始一直到 11 月进行,这个时间段可以说是应届毕业生求职的最为关键的时期。秋招的规模相对较大、所提供的岗位数量众多、企业的用人需求量也很大,乃是应届毕业生成功进入知名企业的一个主要途径。
春招则是校园招聘的另一种形式,一般是在次年的 3 月一直延续到 5 月进行。春招主要是针对秋招的一种补充招聘,其岗位和企业的数量相对而言会比较少,竞争也更为激烈。春招的流程与秋招较为相似,然而由于时间上比较晚,很多岗位可能已经招满人员,所以机会相对来说就比较少了。
part2:相关准备
tip:这一部分,我会从时间线,投递方式,面试流程,如何准备,这四部分开始展开
时间线:
秋招什么时候开始准备,什么时候开始投递。我相信这两个时间是大家比较关注的。
首先说一下我自己当时准备的时间线。个人情况是三年的研究生,XX导师不放实习,因此我准备的时间比较久,总共是准备了将近八九个月的时间。从过年前几个月开始准备,到来年的六月份开始投递。俗话说金九银十月,那么为什么我要在六月份这么早就进行投递呢。
原因如下:
一方面呢,校招的我们往往是比较缺乏面试经验的,面对着摄像头,可能连自我表达都会磕磕绊绊的,自己了解的知识有时候都有可能说不清楚,这样子很可能会导致想去的公司面试失败。针对与这种情况,可以进行模拟面试,或者简单粗暴直接投递许多公司,通过不断的面试来进行练习提升。我就是采用了第二种策略,不断的海投,不断的面试,从而让自己的面试熟练度和知识得到进一步的提高深化。关于海投顺序和每次面试以及复盘需要注意的点,篇幅有限,我后续会再出文章介绍,这里就不细说了。
另一方面,早起的鸟儿有虫吃,越早投递,和你竞争的人就会相对越少,相对来说你通过面试的概率就会高点。
因此呢,如果准备投递各厂的暑期实习,可以从三月份就可以寻找机会投递,后续到八月九月结束实习后,就可以衔接秋招,准备投递秋招。如果你因为各种因素没有实习计划的话,直接进行秋招,建议大家开始投递简历的时间可以从六七月份就逐步进行了,没必要非得等到九月十月。六七月份的时候,通常会有各个中大型企业的提前批招聘活动开启。要知道,若是在提前批招聘中顺利通过,那就能够直接拿到正式的 offer 了哦。这个过程会一直持续到后续的十一十二月份左右,到了这个时候,一般而言就已经到了秋招的末尾阶段了。此时,大家手头所拥有的 offer 如何选择,以及根据自身的情况来决定要不要参与春招,基本上在这个时间节点都会有一个明确的结果了。倘若你已经有心仪的 offer 了,那么接下来就可以准备签订三方协议啦。这里要特别注意哦,三方协议和二方协议是不一样的,三方协议是具有一定法律约束力的,所以一定要慎重考虑清楚了之后再签订。关于二方协议和三方协议具体的区别以及详细内容,其他帖子当中会有非常详细的介绍,在这里我就不展开细说了。等到签订完三方协议之后呢,基本上整个校招流程就可以宣告结束啦,大家就能够美滋滋地安心去享受最后的学生时光了。综上呢,所以我选择了从六月份开始投递,给自己后面充足的时间去适,到最后也是收获了十几个offer。
投递方式:
校招的投递方式相对来说是比较直接简单的,大家可以多多关注各家公司的招聘网站,在各公司的官网上直接点击校园招聘的投递入口就可以了。另外呢,各家公司的公众号以及牛客上也会有许多同学帮忙进行整理,某家公司几月几号开始了秋招通常还是比较明确的,然后就可以按照提示去官网进行投递啦。我当时的具体做法就是关注了每家公司的公众号如下,以及牛客上大佬们整理的秋招开启时间表,一旦有 xx 公司开启秋招的时候,我就会尝试进行投递。
面试流程:
一般呢,你在官网投递按照要求投递完成之后,就可以耐心等待了。
一般过完初筛之后,第一个环节会有个笔试通知(不排除很多公司会群发笔试,浪费你的时间做完笔试之后才进行筛选简历),笔试一般是计算机的基本知识和算法题。具体结构各个公司有自己的风格。有些公司是前面的选择题加上后面的一两道算法题,有些公司是全部四五道算法题。有些公司可能是行测加上计算机的知识。
笔试过后,通过筛选后,会有面试的通知。一般是邮件通知,可选时间。互联网普遍会有两到三轮的技术面试,再加上最后一轮的hr面试,有些个别的公司可能有性格测试或者英语能力测试。
最后如果每一面都通过的话,会电话通知你通过面试,给到口头offer,也就是我们常说的oc了。等待到后续的一个谈完薪资后的书面offer环节就尘埃落定了。后续就是三方签订之类的流程了。不过有些公司名声较差,会有出现毁口头意向,甚至签完书面offer毁约的情况,这种就很坑了,篇幅原因这里就不细说了,后续会出相关避雷文章。
如何准备:
这一部分久比较重要了,上文也说了,要进行提前准备,那究竟要准备些什么呢?
首先在秋招中,竞赛获奖,大厂实习等一些经历是比较加分的,那么在短短的时间内,马上去搞个竞赛或者大厂实习是不太切合实际的。因此我们要在能够做到的地方尽可能的去完善。在我们能够去完善的部分,我分为三个大块,即 算法 + 八股 + 项目。
算法:
首先是算法,各个公司基本在面试中都会出算法题给你做。这部分的算法能力还是很重要的,可能你前面答的很好,算法没做出来,就会导致面试挂掉,因此刷算法是很重要的。那具体要怎么刷,要刷多少题呢。
首先我个人的情况是在某个大家都知道的算法网站刷了五百题左右,但通过一系列的面试之后,我感觉只需要刷两百到三百题就足够了。主要把hot100 hot150 剑指offer这些热门的题集刷完,以及一些相似的题或者牛客上面经看到大家问比较多的题去刷就基本够用了。另外sql题目也需要准备一些,比如写个查询某个班级语文成绩最好的前三名之类的sql,有时候也会考察到。
需要注意的是,面试考察以及笔试做题有两种形式,一种是核心代码模式,也就是我们在网站上刷题时常见的模式,给定输入和输出,我们只需要编写核心函数即可,这种是相对比较方便的,但还有一种是acm模式,也就是说只给main函数,输入和输出都是需要自己写的,输入从键盘进行输入,输出打印出答案,这个可能第一次遇到会比较懵,可以提前看看java在做acm模式的输入输出写法。
综上,算法是需要大量时间去进行练习的,需要自己安排好时间进行刷题。并且最好经常进行复习,否则在面试的紧张环境下,有时候会出现卡壳的现象。按经验如果你算法能力和我一样一般的话,刷题的时候从简单题到中等题,按照类型分类进行刷效果会好些。那具体算法这部分的介绍就到这里。
八股方面
八股的重要性是毋庸置疑的,那为什么会被戏称为八股文呢?其实啊,这是因为很多计算机的基础性概念和知识被以一种相对固定的模式和框架来进行考察。要知道,计算机的专业知识那可是相当多的,像计算机网络、操作系统等等,每个模块都包含着一大堆需要记忆的内容,所以这些要记的内容大家往往就戏称之为八股了。
那么背八股到底有没有用呢?好像很多人对八股嗤之以鼻,感觉背八股就是书呆子才会去做的事情。但实际上并不是这样的,在我看来,八股可以分为一些无用的八股和一些有用的八股。比如 TCP 的全称是什么,这种问题就纯粹是无用的八股了,这种确实就不需要去背了,因为它无论是对面试还是实际编码都没什么太大的作用。但是像 TCP 是什么东西以及和 UDP 的区别这种基本的八股知识是需要记住的,如果连这种基础性的网络知识都不懂的话,那么有些相关的原理就很难搞明白了。所以,把这些有用的八股知识记住,不管是对于面试还是日后的工作,都是有一定帮助的。
那么,要如何去背八股呢?是不是像文科那样,看着题目直接背诵答案呢?其实并不是这样的,这种死记硬背的方式是不可取的。我的建议是分为三步走。
第一步:分模块记忆
我们要对面试中常见的知识点进行细致的模块划分,就像 mysql 相关的知识,这其中包含了数据库的架构、存储引擎、索引原理等;redis 相关的知识,涵盖了 redis 的数据结构、缓存策略、集群搭建等;java 相关的知识,有面向对象的特性、多线程编程、常用的设计模式等;操作系统相关的知识,像进程管理、内存管理、文件系统等。把相同类型的知识整合在一起进行复习,能够起到更为出色的效果。在记忆相关知识点的时候,要将从原理到应用再到实战中遇到的一些难点串联起来记忆,做到不仅知其然,还要知其所以然。就拿 mysql 的索引原理来说,我们要理解它为什么能提高查询效率(原理),在实际的查询语句中如何应用(应用),以及在高并发场景下可能会遇到哪些问题及如何解决(实战难点)。我已经精心地将模块分类整理好了,并且免费共享出来,真心希望能够对大家的学习有所助力。
第二步:差缺补漏
当对各个模块的基础知识有了一定程度的了解之后,我们可以打开牛客,去仔细查看真实的面经。看看自己面对那些问题能回答出多少,以及一些较为刁钻的问题是不是自己从来都没有复习到过,进而进行自身的查缺补漏。包括在经历了多次面试之后,认真梳理自己到底有哪些问题是始终答不上来的,然后进行记录整理,以此不断完善自己的知识树。比如说,在面试中遇到了关于操作系统中虚拟内存的一个复杂问题自己没有回答上来,那么回去后就要针对这个知识点深入学习,补充到自己的知识体系中。
第三步:关联项目
这一步很重要,其实在面试中,很少有面试官会一直问一些八股问题来让你回答,往往都是根据简历上写的项目,来引出一些知识点提问。这就需要我们对项目中所涉及到的知识点很了解了。比如项目中用到了redis的分布式锁,那么就需要对分布式锁这一块多了解一些,redission之类的知识点需要了解。因此,关联项目我认为是十分重要的一步。
那八股方面我进行了一些文档整理,大家可作为参考去对照着学习。
文档链接:面情速递-面试技能包系列
项目
作为简历的重要组成部分,项目部分的重要性无需多言了。项目也是面试过程中你和面试官聊的比较多的部分。把多技术栈的项目写上,可以让你和面试官有更多的内容可以探讨,因为项目都是你自己准备过的嘛,所以回答起来肯定也更流畅,比较有复杂度的项目会让面试官更感兴趣,如果都回答的比较顺利的话对通过面试肯定是加分的。而且在上面的八股部分也说了,八股是要关联项目的。
比如你项目里写了消息队列,那你肯定要了解消息队列的架构,原理,以及可靠性,顺序性等一些常见知识。又比如你项目里用到了redis缓存,那你肯定需要知道redis的原理,底层数据结构,以及分布式锁之类的一些知识。诸如此类,核心思想就是,你的项目所拓展出来的一些知识点,肯定是要去了解的,不能说你写了啥,但是当面试官问到的时候,你都不太了解,这就比较尴尬了。。。。。
那要写什么项目,没实习没有实际的企业项目要咋办。这也是我之前没有实习比较尴尬的地方。对于没实习没有啥项目可写的同学的,建议就是可以github上找找一些开源的项目去做,具备一定的复杂度,而且又可以自己独立去完成,从头到尾做两个就基本能够应对面试了。关于项目如果问的多的话关注一下后续会考虑出个手把手教学系列,现在准备入职中每太多时间搞。。。
结束
综上,面试的完整准备流程想必你已经清晰明了。大家要依据自身的实际状况,将八股、算法以及项目这几个方面进行持续不断的精心准备,注意一下时间线,按照自己的计划稳步推进,用心打磨自己的简历。待秋招开启之后,便能够在各个公司的官网自信满满地进行投递了。还有就是在秋招过程中,一定要保持积极的心态!!!真心祝愿大家都可以在面试中一切顺利,成功拿到自己梦寐以求的offer!!!
欢迎订阅专栏关注,要是在此过程中你还有任何相关的问题,随时找我答疑解惑!!!
进行校招的全流程各方面(八股算法项目)的辅导和经验分享 持续更新