跨专业考研渣硕是如何拿到BAT、TWH等研发offer的!

h2pl Java后端技术 今天

前言

在下本是跨专业渣考研渣硕一枚,经历研究生两年的学习积累,有幸于2019秋季招聘中拿到几个公司的研发岗offer,包括百度,阿里,腾讯,今日头条,网易,华为等。

一路走来也遇到很多困难,也踩了很多坑,同时我自己也探索了很多的学习方法,总结了很多心得体会,并且,我对校园招聘也做了一些研究和相应的准备。

在今年的秋季招聘结束以后,我也决定把这些东西全部都写成文字,做成专题,以便分享给更多未来将要参加校招的同学。

大学时期的迷茫与坚定

我的本科专业是电子信息工程,基本没有接触过计算机专业的课程,只学过c语言,然后在大三的时候接触过java,Android,以及前端开发。

那时候我还不知道软件开发的水有多深,抱着试一试的态度去应聘了很多公司。结果可想而知。

当年我对游戏开发很有兴趣,特别是对网易游戏情有独钟,但是当我看到网易游戏研发工程师的招聘要求时,我只能望而却步,因为它要求学历至少是985的硕士。

也因为这个契机,我在大三的暑假开始准备考研,花了一个月的时间深思熟虑之后,选择了XX大学。

毕竟是跨专业,在复习过程还是有点吃力的,但是就靠着一股毅力和执着,半年之后,顺利地考上了,成绩还意外地非常好。

研究生时期的探索和规划

对于即将读研的同学来说,一般有两件事很重要,一件事是选择导师,一件事是选择方向。

我当时本着想要找实习的想法选择了我现在的导师,事实证明我的选择还是很正确的。

而选择方向这件事,我倒是折腾了好久。研一期间我做的最多的事情就是看书了,当时自己的方向还不明确,所以找了很多书来看。当别人都在专研数据挖掘和机器学习时,我还在各种方向之间摇摆不定。

我在读研之前想做游戏开发和Android开发,但我以前也学过Java Web开发。于是我在网上了解对应方向的资讯,发现游戏研发的就业面比较窄,并且基于我之前的学习经历,java开发可能更加适合我。最终在学校的实训项目中我选择了Java Web项目,从此也真正意义上地踏上了Java的学习之路。

我的Java入门之路

之前说过,在研一期间看了很多计算机专业的书籍,比如计算机网络,操作系统,数据库等等,虽然吸收得都不太好,但也算是看过了。

于是我开始踏上学习Java的道路。最开始我找了一些Java的书单,然后买了一些比较基础的书籍,先啃为敬。那时候我看过《Java从入门到精通》这种烂大街的书,也看过《Java编程思想》这种很难懂的书。

一段时间后我感觉吸收效果不好,于是开始把目光转向视频课程了。那时候听舍友力神的建议,到极客学院上看一些视频课程,我当时就觉得这个讲的比书上要好懂一些。后来我又接触到了慕课网,中国MOOC等网站,逐渐地把相关的技术课程都看完了。

那时候正好我们的项目实训还在进行,于是我就把趁热打铁把这些东西用在了项目当中,并且第一次用博客记录下我的实践经验。

现在回头想想,此时的我也只不过是刚刚入门了Java以及web开发。然而那时候不知道天高地厚的我,就开始xjb投各大公司的Java实习岗位了。结果可想而知,那叫一个惨啊。

我的Java进阶之路

上文说到我刚刚开始投递实习岗位,是在研一的下学期。当时整天躲在实验室,一边看书一边看视频,接到面试时赶紧刷面经,忙的不亦乐乎。那段时间感觉自己的复习状态和考研差不多。

然而,由于水平确实不咋地,当时我被各大公司的面试官吊打。比如我第一家面的就是百度,三个很简单的问题一个都不会,人家面试官都不好意思打击我了。后来我又面了一些大大小小的互联网公司,虽然情况有所好转,但是总的来说,我要学习的东西还很多。

在准备面试的过程中,我看了很多面经,也看了很多技术博客,发现自己的基础很薄弱,需要系统性的学习。并且这些东西是视频和入门书籍给不了我的。于是我又踏上了找书的道路。

那时候Java书单泛滥,有的书单质量低下,买来的书看两眼就看不下去了。直到我看到了“江南白衣的后端书架”这一文章,才发现Java后端书架原来应该是这样的。于是我照葫芦画瓢把相关书籍都买了,这个阶段,也算是刚刚踏上Java进阶之路吧。

这里面不得不提几本书,对学习Java的同学非常重要,一本是《深入理解JVM虚拟机》,一本是《深入分析Java技术内幕》,以及《Java并发编程艺术》。

再后来,凭着一股不到黄河心不死的精神,终于拿到了网易游戏的实习offer。于是,第一次在大厂实习的机会终于来了,我怀着即期待又忧虑的心情来到了杭州。

我的Java实习之路

在猪场实习的时间并不长,也就持续了三个月不到,当时我们部门在做数据仓库,于是我这边主要负责Java Web应用的开发,其实也就是写一些简单的后台接口。

在熟悉了工作流程以后,我很快就适应了工作的节奏,毕竟做的东西也不难,导师也会经常指导,就这样我完成了一个又一个需求,直到后来家里有事,我才临时选择辞职回家。

由于在网易实习的时间比较短,我也留下了一些遗憾,比如对整个项目的架构不够熟悉,并且很多相关技术栈也来不及学习。后来我去熊厂实习的时候,尽量避免了这些问题。

熊厂实习的时间长达半年,部门当时做的是私有云,emmm完全是全新的技术栈啊,于是我基本上又是从零开始学习云计算,但是由于之前的操作系统和网络基础不扎实,在学习相关技术时,基本是两眼一抹黑,学啥啥不会。

这也导致我在上班期间看了很多计算机基础方面的书籍,包括《计算机网络:自顶向下》,《深入理解计算机系统》等等。当然,这也是因为我的工作内容很简单。CRUD你懂的。

于是花时间自学成为了我那时候的主旋律,看书,看内网资源,参加技术分享,倒也非常充实。当然,有空我也会看看项目代码,了解一下技术架构,以便让自己对整个项目有一个更好的理解。

再后来,2018年来了。

抉择时刻:实习转正还是秋招

我是2018年1月份离开北京的。当时面临几个问题,是否续租房子,是否继续实习。还有一个小插曲就是当时养的一只猫也得带回去。再三思考后我决定回学校准备秋招。

过年后我就回到学校了,当时我本不打算参加春招,想要潜心修炼准备秋招,但是架不住春招宣传力度大,并且几个大厂都标榜着“转正容易,hc多多”等口号。于是我没忍住,上牛客投了几次简历,打算面几家大厂,心想万一过了就去吧。

简历都投出去了,那也只好复习了啊,当时我们宿舍跟打了鸡血一样,一整天都在刷题,从早到晚泡着刷LeetCode,一个月后终于刷到100多题,也算是能应付一下笔试了吧。

春招我投的公司不多,也就at,网易游戏和京东。最后阿里和京东都给了offer。但是当时阿里的流程走得特别慢,直到内推截止前一天才给我发offer,并且自己也感觉之前面试表现一般,心想我要是去了也是B+,很有可能成为拥抱变化的牺牲品,于是我咬咬牙放弃了,大不了秋招再来。

塞翁失马,焉知非福,春招的颗粒无收反而让我可以安心准备秋招,于是我有大把的时间做我想做的事,制定自己的学习计划,安排自己的生活,不需要去考虑转正这种麻烦事了。

至此,四月终了,春招告一段落。

Java修仙之路

平时经常逛牛客,我也经常发些面经啥的,于是很多牛油喜欢调侃说“看神仙”。这时候我只能尴尬又不失礼貌的微笑了0。0

在下不才,成不了神仙,最多就是打游戏的时候能修修仙罢了。

不过你还真别说,网上还真有“Java成神之路”这样的文章,真的打扰了哈哈。

科普一下修仙梗: 修仙梗的意思是喜欢熬夜的人不睡觉不猝死反而要修仙,然后就被广大的网友们互相调侃玩坏了,现在熬夜都不叫熬夜了,新潮的说法就是修仙,熬夜不会猝死啊,会增强法力。

不逗你们了,咱们还是进入正题吧。我在五月份的时候做了一个计划,打算在七月底之前完成复习工作,原因是七月底有阿里的提前批招聘,是我最最重视的一个招聘。这个计划简称三个月计划,我主要做了三个方面的学习规划。

一:首先,便是对Java后端技术栈的复习,这也是最重要的一部分,因为面试永远都是考基础考得最多。

这部分内容又可以细分为多个方面:

1 Java知识体系:包括了Java基础,集合类,设计模式,Java并发技术,Java网络编程,JVM,JavaWeb,Spring框架等等。

2 计算机基础:包括了操作系统,计算机网络,数据结构,数据库,缓存等内容。

3 后端进阶:包括了分布式理论,以及常见分布式技术比如负载均衡,zookeeper,消息队列,分布式缓存等等。当然,这里面也包括系统架构方面的知识,以及RPC,微服务等内容。

4 额外内容:这部分内容因人而异,我主要是因为实习的时候项目涉及了hadoop以及私有云技术栈,所以自己看了很多这方面的东西,譬如Hadoop生态,OpenStack生态,以及docker生态。

我在复习这部分内容的时候,一般先看优质博客,然后自己整理总结对应写一些博客,最后把能够实现的东西实现一下,这样一来一个知识点就搞定了。剩下的事情就是重复这个步骤。

下面放上我的博客:

https://blog.csdn.net/a724888

二:其次,便是对算法的学习了。我也把算法的学习分为了几个部分。

1 基础数据结构与算法:主要是复习之前学过的数据结构和算法,额外再看一些算法书籍,譬如《图解算法》,以了解常见算法。

2 剑指offer:剑指offer基本上是面试必考的,所以把它刷个两三遍是很有必要的。

3 LeetCode:搞定前面两项之后,刷LeetCode也会有些底气了,我当时就刷了150题左右,主要也是刷经典的题目。

4 笔试真题:这个就不用多说了,真题是一定要刷的。毕竟各个公司出题的路子都花里胡哨。

刷题多了,就会遇到很多原题和类似题目,所以,尽早开刷,做好准备吧。

三、最后一部分,则是做项目。大概说下我做项目的几个要点吧

1 为什么这时候我还要做项目呢:一来是我觉得实习过程自己接触的东西太细碎,没有对全局做把控,二来是因为想给GitHub加点东西,顺便学点新的技术。于是我选择了当时牛客网上的两个项目来自己做做看。

2 关于项目选择:叶神这两个项目还是讲的非常棒棒的,用的东西也很新,代码也有提供,避免了自己要写前端的尴尬,另外,这两个项目模仿了知乎和头条,更加接地气。

3 把项目做到GitHub上:之前对git也比较熟了,所以想把这个项目按照正常开发的流程走一遍,于是我每天都会做一个模块,然后发布几个版本,记录一下版本更新的细节,写这些东西的时候,自己其实就已经做了思考和总结,感觉还是不错的。

下面放上我的GitHub:

https://github.com/h2pl

就这么过了三个月,提前批拉开序幕。

秋招回忆录

从七月初第一次投递简历,到九月初,整整两个月的时间,大大小小投了几十家公司,其中很多都是提前批,内推,也经历了许多的笔试,面试。

期间也拿了几个offer,包括百度,腾讯,蚂蚁金服,头条,华为,网易(网易云音乐没给offer,调到了其他部门)。有几家直接收到拒信的,包括拼多多,深信服。还有几家在等待结果。包括快手,斗鱼等。

当然也有一些还没面试完的公司以及待安排面试的公司,这里就不展开说了。

八月底基本上提前批就已经结束了,所以一般这段时间正式校招也开始了,各种大规模的笔试也很多,所以大家即使没有拿到offer也不要灰心,毕竟校招是一场持久战,基本上要到九月十月才能下结论。我之前分享了很多公司的面经,其实大部分都是提前批的,很多都是直接免笔试的,因为我对算法并不是很在行,所以感觉还是比较幸运的。

从七月底第一次面试到9月基本佛系,中间经历了大大小小的面试,这里只进行简单的记录哈,要看面经的话请到我的公众号:程序员江湖。

具体的面经都比较长,这里大概介绍一下面试的情况,然后我会放上面经的链接供大家查阅。

1 阿里面经

阿里中间件研发面经

蚂蚁金服研发面经

岗位是研发工程师,直接找蚂蚁金服的大佬进行内推。

我参与了阿里巴巴中间件部门的提前批面试,一共经历了四次面试,拿到了口头offer。

然后我也参加了蚂蚁金服中间件部门的面试,经历了三次面试,但是没有走流程,所以面试中止了。

最后我走的是蚂蚁金服财富事业群的流程,经历了四次面试,包括一次交叉面,最终拿到了蚂蚁金服的意向书,评级为A。

阿里的面试体验还是比较好的,至少不要求手写算法,但是非常注重Java基础,中间件部门还会特别安排Java基础笔试。

2 腾讯面经

腾讯研发面经

岗位是后台开发工程师,我没有选择意向事业群。

SNG的部门捞了我的简历,开始了面试,他们的技术栈主要是Java,所以比较有的聊。

一共经历了四次技术面试和一次HR面试,目前正在等待结果。

腾讯的面试一如既往地注重考查网络和操作系统,并且喜欢问Linux底层的一些知识,在这方面我还是有很多不足的。

3 百度面经

百度研发面经

百度研发面经整合版

岗位是研发工程师岗位,部门包括百度智能云的三个分部门以及大搜索部门。

百度的提前批面试不走流程,所以可以同时面试好多个部门,所以我参加百度面试的次数大概有12次左右,最终应该是拿了两个部门的offer。

百度的面试风格非常统一,每次面试基本都要到电脑上写算法,所以那段时间写算法写的头皮发麻。

4 网易面经

网易研发面经

面试部门是网易云音乐,岗位是Java开发工程师。

网易是唯一一家我去外地面试的公司,也是我最早去实习的老东家。

一共三轮面试,耗时一个下午。

网易的面试比我想象中的要难,面试官会问的问题都比较深,并且会让你写一些结合实践的代码。

5 头条面经

今日头条研发面经

岗位是后台研发工程师,地点选择了上海。

我参加的是字节跳动的内推面试,当时找了一个牛友要到了白金码,再次感谢这位头条大佬。

然后就开始了一下午的视频面试,一共三轮技术面试,每一轮都要写代码,问问题的风格有点像腾讯,也喜欢问一些底层知识,让我有点懵逼。

如果想看更多公司的面经,也请移步微信公众号:程序员江湖。


另外,我上周还面试了一次亚马逊,因为很多知名外企到十月才开始招人,所以闲了很久之后我又重操旧业了,可能在面完大摩和微软之后,秋招才能正式结束吧

结束也是开始

中秋节刚过,国庆节又要到来了。正如每一年的秋招一样,年复一年,在时间面前我们也是渺小的尘埃。

秋招结束不代表着结局,而是新的旅程开始,马上,毕业论文,offer选择,入职准备,毕业旅行等事项也要提上日程了。

不知道明年我们看待学弟学妹的秋招时,会是怎样的一种心境呢。

向榜样学习!!在路上相关推荐

  1. 计算机组织活动的意义,信息学院计算机09-1班团支部关于“向榜样学习,向优秀看齐”主题班团会活动总结...

    一. 活动主题 "向榜样学习,向优秀看齐"主题班团会 二.活动目的 先进的学生典型对学校营造积极.健康的校园文化,教育和引导学生进步具有积极的促进作用.为了促进学风建设,营造积极向 ...

  2. 老师计算机组合照说说,适合教师发朋友圈的说说:年轻的老师,一直在学习的路上...

    气的不行的时候,我就想,我是老师我是老师我是老师,他们还小他们还小他们还小,不能生气不能生气不能生气啊!! 适合教师发朋友圈的说说 一.班里有个非常可爱但不是很乖的男孩子,他似乎深知自己可爱这点经常在 ...

  3. 【Python基础】在学习Python路上必须注意的几个代码规范

    前言 嗨喽!大家好,这里是恶霸. Python 的学习之旅,一定要先来看看 Python 的代码规范,让自己先有个意识,而且在往后的学习中慢慢养成习惯 每条路是孤独的都会有坎坷不平,也许现在的你很累, ...

  4. 在深度学习的路上,哪些框架或学习平台值得推荐?

    作者:Eileen 短短几年,深度学习(Deep Learning)技术已在语音识别.图像分类.文本理解等领域广泛应用,成为人工智能领域的研究热点和行业应用的核心技术支撑.与此同时,越来越多的人也开始 ...

  5. 2020 年 Flink 最佳学习路线,学习的路上,你,并不孤单

    精选30+云产品,助力企业轻松上云!>>> 点击蓝色"大数据每日哔哔"关注我 加个"星标",第一时间获取大数据架构,实战经验 以下资料来源都有 ...

  6. 学习DNS路上之CloudXNS

    使用CloudXNS已经有两年了,趁着他们现在做活动的机会也发表一下这两年来使用感受与CloudXNS的变化,也对我学习使用的一次总结. 简介 CloudXNS是北京快网开发的一套授权DNS系统, 用 ...

  7. PMP选择清晖远程班,学习的路上你我同行

    大家好,我是清晖1903期远程班学员鲁*. 对于1903期PMP考生来说,今年5月是一种煎熬,因为4月底他们没有等来期盼已久的Congratulation邮件.于是考生们那兴奋之中带有些许紧张,紧张之 ...

  8. 12-13年学习总结——路上的风景很美

    首先贴上自己宏观总结的一张大图: 下面主要围绕这几方面进行总结一下我这一年来的收获. --小记 回望过去 回头看自己走过的路,一年说长不长,说短也不短.在这里见证了我的学习之路,记录了我的点点滴滴. ...

  9. 零基础转行前端,学习之路上的面试题分享

    前言 转行web前端的人有很多,想要转行到web前端的人也有很多,但是,对于想要或者是即将要转行web前端的人来说,需要学习掌握哪些前端知识,如何学习这些知识?是一个值得思考的问题. 转行前端需要学习 ...

最新文章

  1. android编译系统Android.mk使用详解
  2. div+css中clear用法
  3. Java DB中的Java用户定义类型(UDT)
  4. 计算机网络之网络层:7、距离向量算法RIP
  5. 四天学会Mybatis
  6. 准备创建一个自己的校验提示Extender
  7. [译]IIS 8.0应用初始化
  8. jQuery 学习笔记之十 (jQuery ajax )
  9. 【Tensorflow教程笔记】常用模块 tf.data :数据集的构建与预处理
  10. 计算机管理员怎么开通,管理员权限怎么设置
  11. 人脸识别一体机解决方案
  12. python 统计检验_常用统计检验的Python实现(附完整代码)
  13. LoadLibrary动态加载dll失败,GetLastError返回错误码126
  14. 人类学家胡家奇谈科技发展:让它回归理性
  15. excel 一列的数据除以另一列
  16. Stanford Alpaca (羊驼):ChatGPT 学术版开源实现
  17. HTML/樱花爱心网页/
  18. 《途客圈创业记:不疯魔,不成活》一一2.8 正式上线
  19. 信用卡如何正确养卡提高额度
  20. 人机交互及界面设计序言

热门文章

  1. 深度学习行业黑话集锦
  2. 利用VRTK通过射线与UI 交互
  3. Appium滑动选择日期
  4. SpringBoot 2 使用 Vaadin 创建 CRUD UI
  5. Qualcomm MSM8937 ICN6211 MIPI-2-RGB 芯片驱动
  6. 机器学习17:Faster R-CNN简介
  7. 【069】南京市“2020十项重大创新成果”重磅发布!翼辉SylixOS成功入选!
  8. 泛微OA系统利用Check框控制字段显示隐藏
  9. Segmentation fault: 11 python mtcnn
  10. Android之okhttp_v3.4版本网络连接超时问题解决方案