应届生如何准备校招【研发岗】

本人是19考研炮灰党,本文将从以下几个方面谈谈应届生与校招的问题。

1、考研与找工作如何抉择?

2、考研失败后我将如何找工作?(心态 & 准备)如何准备校招?

1、考研与找工作如何抉择?

关于这个问题,我觉得首先你要想好考研是为了什么?我是双非出身,在本科学习中并未接触到比较前沿的领域,比如深度学习啥的,我曾经希望借助考研在研究生阶段学习这些东西。不过实习之后接触了更多人,我发现这事是这样的,有很多研究生也是做java/前端这些,并不是所有人都去研究算法,市场上更喜欢【算法+工程】。就19春招薪资来看,算法和工程研发岗的薪资也相差不多。

那么研究生的好处是什么呢?

私以为一些双非的同学可以通过考研提升学历,提升见识面,双非和名校的学习环境也十分不同。比如我在本科学习中,周围很少同学参加ACM、数学建模这样的比赛,其实大厂非常看重同学们有这样的经历,如果获奖就更好了。但是周围的同学不会很积极参加这样的比赛,也就是说你的技术思维在本科院校学习的过程中可能建立得不太好。比如:有没有养成写技术博客的习惯,有没有拥抱开源的思想,知不知道github是什么东西,接触一个新知识的学习路径是怎样的......这些对一个真正要走技术路线的同学来说十分重要。

另外一些想接触前沿领域的同学,这些知识可能需要前期积累时间很长,你直接工作后,也许就没有充足的时间好好研究这些东西。注意,这里我说的是没有时间学习,而不是不能学习,如果你想学的话,完全可以自学,网上的资源很多,公司里也会有一些高手,总之你想学就与你的学历没有关系。我在实习的过程中遇到好几个同事有着很丰富的工作经验,比如从PHP转JAVA,从python转JAVA,毕业后在家半年学习机器学习......让我感觉人真的有无限可能,就看自己是否有魄力与毅力。

然后也会有一些同学觉得自己是双非出身,担心找工作的时候公司直接刷掉自己的简历。关于这个问题,我的经验是不会,尤其大厂吧(非研发岗不好说)。因为大厂通常会组织统一笔试,笔试通过后就有面试机会,而笔试对于大家来说是公平的。面试的时候对于大家来说也是公平的,因为专业的面试官基本上还是只看你的技术,他问你的问题都能答上来,他当然放你进下一轮啊。不过需要注意的是:你还是得有些项目经验、比赛经历或实习经历,你不能啥都没有还想和名校的同学拼,那...劝你认认真真考研。

2、如何准备校招?

首先谈谈考研失败的同学吧,我就是其中一员。首先,你肯定比没有考研而直接实习的同学损失一些机会。因为春天的时候一般是各大公司开始招实习生的时候,这个时候机会很多,但是你去考了研。秋天的时候是各大公司招应届生的时候,这个时候机会也很多,但是你去考了研。

所以你会比他们少很多实习的经验和面试的经验。

不过也不要灰心,对于我们来说还是有机会的。机会在哪呢?
首先,我们也是有优势的,优势在于这时候我们很熟悉数据结构和计算机网络这些,而这些是大厂面试中常问的。虽然考试知识和面试问的还有些距离,但也让我们在准备面试时有了比较好的基础。

其次,机会已经不多,我们就要更抓住时间。

1、有些同学比如我,12月考完后就知道自己凉凉,这时候还有一些秋招补招的机会,不过你刚考完,代码一年没碰,还挺难短期内就达到通过面试的水平。

2、春天的时候,现在一般从春节放假之后就有各大公司发放春招通知了。具体时间在2月末到4月底吧,这个时间一定要充分留意各大公司网站,看看有没有春招消息,内推消息。我用的最多的就是牛客网,在上面好好看看,有很多内推帖子和最新的招聘信息。注意:大公司投简历的人多,一定要走内推渠道。一般大公司的内推也比较好找到,因为推荐成功会有奖励,所以员工们都很积极地发内推信息。或者你直接去Boss直聘单聊员工,肯定找得到;或者求助下学长学姐。

我是经历19春招的同学,今年春天比以往都要寒冷一些。因为去年这个时候我看阿里招聘网站还是对应届生开放的,但是今年就全面关闭了。今年春天的BAT没有官方对外招人,官方发布的消息一般针对海归或者算法岗,普通的工程研发岗没有开放。不过私下里还是有在少量招人,比如我有同学秋招的简历被腾讯hr捞起来,我自己也被阿里的一个部门捞过。但是少量招人,而应聘者很多,就很难通过啦,应聘大厂的很多都是名校高手,你懂的。

今年春天招人最厉害的还是字节跳动了,三场笔试,牛比哄哄。我认识的一个北邮研二的同学去现场面试,说现场北大北邮一抓一大把,啧啧。接下来说一下校招要准备什么。

1、笔试

笔试一般来说会涉及到基础知识+编程题。

基础知识有概率论、数据结构、计算机网络、JAVA等,可以在网上找找该公司往年的卷子,知道他们爱考什么以及题目的深度。emmm 我去年做过阿里的笔试题,前面的素质测试宛如测智商...因为今年春招他们没开放应届生渠道,所以我就了解得不深,但感觉还是有机会通过其他方面证明自己得到面试机会的,所以如果你也觉得素质测试难的话不要太担心吧,其他硬知识掌握得好比较重要。

下面再说编程题,这就很重要了。各大公司的笔试都会有编程题,还有甚者,比如字节跳动的笔试,没有前面花里胡哨的基础题,全都是编程题,你要能过就有面试,无论什么学校什么背景,所以尽管难也算是公平吧。不过其实因为编程题有难度所以不需要全部ac,有的时候做出一两道就有面试机会了,这个主要看当次笔试的难度而定。

那么编程题应该如何训练呢?我推荐首先刷 leetcode 的简单题,等到有点感觉了,可以尝试做中等题或者上剑指Offer。剑指Offer在牛客网上有,题量不多,但很经典,有时间多刷几遍。另外,做题的时候不要觉得ac了就行,虽然笔试中ac就过了,但是面试的时候手撕代码,有些面试官喜欢和你讨论一道题有没有更简单的做法,时间复杂度更低的做法,所以有时间的话可以看看题目下面的讨论区,学习一些amazing的解法,也是提高自己的一种方式。当然没有时间的话,还是首先能ac一道题再说吧。

刚开始做题的时候肯定会碰到很多题都没有思路,硬想也不是办法,你就得看答案,反正训练一段时间之后就会有提高。我自己之前的学习中都没有练过oj上的题,现在觉得挺后悔的,其实刷oj不是浪费时间的事情,你也不需要一天到晚刷,如果能形成一种每天做两题的习惯,那到找工作的时候,笔试对你来说就不是一件难事了,面试的时候能在短时间内做出面试官出的题目也非常加分。

2、面试

我认为面试的准备主要分成以下四部分:

1、手撕代码

2、数据结构、计算机网络

3、应聘岗位的知识

4、项目经历

1、手撕代码

这就主要是数据结构了,一般来说二叉树和排序是必须要掌握的。二叉树的前序、中序、后续、层序遍历必须要熟练写出,排序中快排、堆排、归并必须要熟练写出。这些是基础,面试官出题可能不会直接问你,但是也是在这上面做变化,所以底子我们一定要清清楚楚。比如遍历也分递归和非递归呢,排序的思想能不能清楚地说出来呢?问到排序的话,面试中还很常见地会问到基础的冒泡/选择啥的,排序的时间复杂度,排序是否稳定(稳定就是排序完数字的顺序会不会改变)等。如果你程度好的话可以再准备数据结构中的图,这里面也大有文章,比如图的各种遍历,还有KMP算法也可以准备。

除此之外其他的手撕代码还有可能是Leetcode或者剑指offer的原题或迁移,所以 leetcode 和 剑指offer 真的要多练练啊。

如果你还有时间呢,也可以看看面经里问过哪些题。准备的话基本就这几个方向了,面试的时候再见招拆招吧。

2、数据结构、计算机网络

面试中问到数据结构也经常是树啊排序啊图啊,但是比如数据库的索引是B+树,那B+树和B树就要好好看看,网上都有啦,自己去搜搜。还有“红黑树”,现在说到红黑树都是一个梗了hhh。以及 Java中hashmap的数据结构是【链表+数组】你知不知道啊(这个Java岗位常问)。

计算机网络的话,TCP/UDP区别,TCP三次握手/四次挥手,https加密过程,DNS解析过程,输入一个Url之后经过哪些操作等等,这些都属于被问烂的啦,肯定要好好掌握的。

3、应聘岗位的知识

我自己之前主要学java,所以面试准备也是java。这事是这样的,一般来说准备你自己最熟练的地方就可以了,就算有想法转岗,或者岗位需要不止java,那你把java的准备完全也够了。java的话比较常问内存模型、gc处理机制、gc算法、集合、多线程啥的。现在大厂面试官一般都是一个问题问到很深的,所以大家不要只浅浅地看一下,以为面试的时候能答出几个关键词就够了,这是远远不够的。比如内存模型,你去网上搜,一大堆博客写得都很详细,你得把一篇博客完完整整地理解记住才算这个知识真的过了。当然比如我是java后端转测开,至少得知道一些测试的基础理论吧,不能说啥都不知道就转岗,那你为啥想要转岗呢对吧。

4、项目经历

一般来说准备2个项目吧,当然你的简历上可以把做过的项目都写上。面试的时候准备两个就够说了。项目经历也不是那么容易准备的。首先你这个项目是干啥的,用到的技术栈是什么,这个可能不需要准备也能说出来。但是这样还不够哈,你得找出项目中的亮点和难点。

针对亮点和难点,你是怎么实现的,中间遇到过什么样的问题,又是怎么解决的。比如我实习过程中做的一个API接口管理平台,亮点在于一个功能的数据库设计比较复杂,那我准备的时候就要先说这个项目的亮点在于实现了一个XX的功能,这个功能主要是通过数据库设计成XX张表实现的,为了这个功能我维护了XX张表,表的字段是这样设计的......这样才叫真正说清楚了。你还要预想面试官可能根据你这样的表述问出什么问题,比如我说到了数据库,那面试官会不会就数据库与我展开讨论呢?比如你为什么要设计成这样,为什么不放在一张表里,为什么不遵循第三范式、BC范式,适当冗余的好处是什么......妈呀能牵扯出很多问题呢!这样才叫准备项目哈!

另外有的同学可能会懊恼,我的项目没有难点呀,我都是调的第三方库。那么就算调API,你也可以想想,第三方API支持多少QPS,在调接口的时候可能遇到什么问题,以及他们实现这个的原理是什么。比如你用到了融云聊天,那你知道聊天是怎么实现的么?如果你能把这个说清楚,我想也是很加分的。

然后也希望现在还在大二的同学能有意识地去做一些难的功能,不要一直让自己在舒适区中,如果你真的要走研发的方向,你就必须有这种钻研的精神。

【总结】

面经要好好看,也不要只局限于你应聘的那家公司的面经,各大公司相同岗位的面经都要看看。看得多了你就知道常问的是什么了,面试的时候会经常问到这些问题,有些比如TCP三次握手啊,虽然被问烂了,但仍然会有人不知道,所以有的时候面试官还是会问的。牛客网上以及一些博客现在都会总结面试中遇到的问题了,总结成一张大的架构图,好好找找,好好看看。我觉得大厂并不是那么遥远,而你真的要珍惜应届生这个身份,应届生意味着不需要有那么多项目经历,重要的是基础知识,基础知识好代表你值得被培养。社招就很看重实际做项目的能力了。而且现在大厂给应届生的薪资都很高,高到会让老员工觉得“凭什么啊”......进入大厂之后呢,以后跳槽也比较好跳。当然也要遵循内心知道自己真的想要什么,这很重要。

 

对了,补充一下,面试的时候要懂得让面试官根据你擅长的问呀,比如你可以主动介绍自己的某个项目,主动说我哪方面比较好,能不能就这个来问,这都是可以的。面试官也是为了更好地了解你的长处在哪里呀~不然为什么招你呢~:)

 

最后,还有什么问题也欢迎大家在评论区中提问,知无不言呢!

  • 14
    点赞
  • 57
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值