对大多数人来说,在即将到达大学终点的时候通常会出现两条路,一条是步入社会就业,另一条是踏入高校读研深造。
往年,研究生复试和春招基本是同时进行的,这也就导致考研结束后很多人觉得自己没考好就直接放弃了复试。今年由于疫情的原因很多学校的复试都推迟到了 4 月底 5 月初,这就让很多 2、3 月开始工作的人,又多了一次选择的机会。
其实每年的这个时候都会有很多人讨论究竟是读研好还是工作好,不过毕竟没有人可以同时涉足两条道路,所以选择就变得格外重要。毕业之后我选择读研这条路,我的朋友寒食君也曾和我交流过并写了一篇文章《保研之路:从双非到南大》,现在很难确定这个决定对我来说是否正确,对其他人也同样如此。我们需要全方面的考量自己,从性格、抗压能力、未来期望、家庭条件等多个方面去考虑。
今天写这篇文章,不是为了告诉大家如何去选,而是想介绍一个我在读研期间认识的一个人,他的经历让我有些惊讶,完全可以拿去当考研成功的案例,这里给大家做选择时提供一些参考。他是我的舍友,本科来自于烟台大学材料科学工程中韩合作。高考时遭遇滑铁卢无奈去了这个三本,后来跨考考研时逆袭到南京大学读软件工程专业,读研时开始自学 Java,在这次的春招实习中斩获了网易、腾讯和微软的 Offer,最后选择了微软。从三本到 985 读研,再到斩获数个大厂 Offer ,这样的人,实在是少有。
最近一直有更新面经系列,本来也想记录下他的面试过程的,但是一想到他这励志的经历,便想请他谈谈自己这几年的心路历程,留下一点文字,给正在看文章的人一些指引和参考。下面我将会采用 Q&A 形式记录一些重要的内容。
为什么选择考研?
因为我本科是中韩合办的材料专业,所以专业课是由韩国语教授的。又因为我韩语不行,所以专业课都听不懂,说实话对我来说毕业都挺困难的。最简单的原因就是找不到工作,得想办法混个饭吃。放在面前的选择有三个,一是去韩企。我不会韩语,所以去不了。二是考公务员,我不知道你们了解山东不,在山东公务员首先很难考,其次像我这种不会喝酒的感觉也没啥前途。三就是考研了,也算是个没有办法的办法?
为什么考研选择了南京大学,而且还是跨考软件工程?
我高考考了两年,最后压本科线上的这个专业。本科挂了一万个科,在本科其实有想过修软件工程的双专业,也不是没报名,可惜第一天上课就和高数补考撞了。所以我就放弃了双专业(其实是因为懒得去了),去了补考(也没补过,最后重修了)。考研考了两年,第一年考南航差一分上线(吃鸡太好玩了,而且上线也不一定能录取),看到现在你肯定觉得我在装逼。其实我说这些是想表达,你想学习其实不一定来不及。第一年考研结束后,切实感受到了生活压力(同学大四回家生孩子了,导致没顺利毕业,爸妈帮他看孩子他也不好意思要钱,只能在我租的房子里睡沙发)。也好好想了想自己想要什么,所以决定好好冲个猛的,猛的冲不动就回家打工混吃等死。我认为我唯一比别人猛的方面,就是用搜索工具。我要散播第一个消费主义观点:**扔了百度,快想想办法用谷歌吧。**然后说几个关于考研择校的观点,不一定对,抛砖引玉:
- 招人越多的越好,这样如果你初试分足够高,复试就会特别稳。不用担心会因为奇奇怪怪的事情把你黑掉。而且招人足够多,分数线的波动就不会特别大。招三个人,有两个猛男一个关系户你考第三不也无能为力嘛。
- 如果你想考好学校,出身又很垃圾,那就直接冲猛的,在你能力范围内越猛的越好。这样可以一定意义上避免学历歧视,因为在好学校看来你们学历都挺垃圾的。(这是我的个人看法)
- 现在每个学校基本都能搞得到历年真题,尽量选变化不大的。学校出题变化大,对于猛男来说没啥,但是我们小弱鸡不能拿二十几岁的一年时光来赌这个。
想要完成以上的筛选工作困难并不大,特别是在你搜索工具用的得心应手的情况下。南大软院在我考研那年来看性价比是特别高的。你可以试着问问你的亲戚朋友,如果不在江苏省内的,可能很多人都不知道南大是个什么级别的学校,说不定你说南大很多人都以为是南开大学。但是这又是个极好的学校,所以很适合捡漏。又因为考英二数二(对高考英语 80 分且四级没过的我比较友好),会导致调剂困难(大部分学校都是考英一数一的),有一部分人就会因此不敢报名。而我的打算就是考不上就回家打工嘛,我也没想调剂,所以比较适合我。确定南大之后就是计算机院和软院之间的选择了,南大计算机院有国重,用屁股想想就知道对科研要求高,我啥也不会还跨考,本科也不好也没啥科研能力,别人咋也不可能要我。经过一通排除,我就选择南大的软工(当时在考研群里看了几个考人工智能院的大佬,第一届参考书都整不明白就敢冲,瑞思拜)。
然后是我考研的一点小心得。我太讨厌我家乡的生活了,导致我有无穷的动力来压迫我自己好好学习。考研第二年,真的是拼了命在学,不然像我这种啥也不会的不努力想考上南大肯定是不可能的。我要在这里散播我的第二个消费主义观点,**能花钱省时间的,价格不是太离谱就别犹豫。**跨考相较于不跨考的人来说,你的时间肯定是更宝贵的。保证时间,一是需要延长学习时间,二就是要在单位时间内学多一点。我完成这两点的方式如下:
- 建立起学习的工作流。
- 通过番茄钟来保证单位时间的效率,也可以有效统计每天的学习时间。
- 使用 anki 和思维导图来进行知识的复习,保证你学完的东西不会白学。
- 花钱让自己学习的效率更高。(别人售卖的,声誉良好的课和资料一定是有原因的,他至少花费了课程数倍的时间来沉淀知识,这也是我觉得为啥听话的孩子普遍吃亏少发展好的原因)
但是我认为学了两年是最重要的一点,说到底就是磨出来的。当然我也吃了一些亏,我经常会纠结哪个课最好,然后对比很久。方法总是第二步,开始学习才是最重要的第一步。找到一个差不多的尽快开始,会比花时间在比较上好很多。
你本科是材料专业的,考研时才接触的软件工程,现在研一也快结束了,有什么收获吗?
从一个啥也不会的小菜鸡到能写出来点能动弹的东西,还是挺有成就感的。
一个好的环境很重要,我能有这些大公司的面试机会就是吃了南京大学的红利。而我研一能有这些进步,主要在于身边有太多优秀的人。说实话第一次上课我是挺震惊的,虽然没有很多人在听课,但是所有人都在学自己的东西。这个公众号的主人也给了我很大帮助,我刚上学真是一头雾水啥也不懂。没他指路现在估计我还在慌着面试呢。披头士几个人都猛,但他们肯定不能都是天才吧。持续训练,刻意练习,才是我们这些笨逼的归宿。虽然现在我在他们之间还是最菜的,但是比较来看,说刚开学的时候我和他的编程能力差一百个我是不过分的,但现在估计也就差几个我了。
这次春招,你面试了哪些公司?最终选择了哪家呢?
面了一万个公司。你能想到的说的出名字的说不出名字的基本都面了,阿里、腾讯、头条、美团、网易、微软等等等等等等等。拿到 offer 的就只有微软、腾讯和网易,没拿到的就是都挂了。这其实还是一个笨逼多锻炼的故事,多试试总有运气好的时候吧。而且面试官的问题都是类似的,有一次我上午面网易,下午面腾讯,问的问题几乎一模一样。只要你在面试之间多总结,总能磨进去。最后还是选择了巨硬,第一是因为从小就想去巨硬,第二是因为比尔盖茨是我的爱豆,第三就是因为身体不太好,想养老发自内心。
可以简单说下,面试这些公司的过程吗?
大伙开始投阿里提前批的时候,我很慌,不敢投。导致错过了很多锻炼面试的机会,因为最开始是不进系统的。你一个部门挂了其实就只是那一个部门有你的记录,建议大伙还是阿里提前批多锻炼。小公司练手是个美好的想法,但是不切实际。为啥小公司是小公司,他们效率真的不太高,像有的同学阿里、腾讯或者头条都拿到 offer 了小公司还没有开始面试。
最开始面试肯定是慌得一逼,话都说不顺溜。面多了感觉其实还是在于多吹,你吹得面试官和你都开心,这次面试基本就没啥问题。下面说一些我的经验,不一定对,毕竟还是挂了很多面试。
- 别人问你一个问题你最好把你知道的都说出来。如果我当时遇到了这个问题,我就会把我是咋解决的过程说出来。
- 代码题需要疯狂判断边界条件。写之前就要和面试官沟通时间复杂度和空间复杂度,说不定面试官心情好会给你点提示。会写英文注释就用英文注释装逼。
- 最后问问面试官对你的建议,过来人说话还是好使的。
- 把面试官对你项目的质疑,提炼出来,下次在详细介绍项目的时候把它变成你对你的项目的思考。
为什么会选择微软,你觉得微软相较于其他几家公司,更吸引你的地方在哪呢?
前面回复啦~
为了去这家公司,你做了哪些准备呢?
- 刷 leetcode,我刷的题目说实话挺少的,但是一直比较在意代码的简洁程度。代码题其实都不会很难,难得一逼你实在不会,考官可能会暗示你,还有可能给你换题。不用慌。外国公司大部分就是考察你做算法题的能力,你买个会员把这个公司的题库都刷完必能过(公司肯定也想要你这样的,不管是聪明的一逼算法题随便秒的,还是对着公司题库全刷一遍的,都是公司想要拥有的人,我从网上看的)。
- 项目肯定还是要整明白的,在多次面试之后就算你整不明白你的项目,面试官也会把你问明白的。
- 基础知识需要过一遍,JVM、操作系统、计算机网络等等。争取要比别人写的资料深一点点。这些问题千篇一律,你回答的多一点,就显得你猛一点。
可以晒一下你的 offer 吗?
最后有什么想说的吗?
我感觉发烧了,所以写的迷迷糊糊的,祝我健康!祝你们能看懂!