一个机械转码er的本科、研究生、实习和秋招经历

571 阅读11分钟

大学

刚进大学的时候,我学的是机械专业。大一的上半年学的还是挺开心的,那时候还没接触专业课,学的东西也不难,总得学习体验感觉不错。在大一下学期时候开始学习机械制图,觉得实在是太枯燥了,萌生了转专业的念头。当时也在学习机械专业配套的编程课,用的VB,发现还是挺有意思的,最终选择了计算机作为转专业的方向。一番努力之下,成绩前10%,达到了转专业的要求(emmmm....我都前10%了为啥还要转专业,保研不香吗?)。

大一暑假过的波澜不惊,整天看小说。开学之后就傻眼了,转过去之后上的第一门课就是数据结构,而那时候我连C语言都没学过,可想而知听课的效果有多么的天书。于是从图书馆借了本《明解C语言》开始了逃课生涯,每天在自习室从早敲到晚,遇到不会的问题就去<百度知道>上发帖问,如此过了半个月后,总算是把C语言的基础知识搞定,该开始回去上课了。结果回去上课之后又悲催的发现,数据结构已经讲到二叉树了,当时脑子里没有数据结构的思维,能理解伪代码的意思,但是完全不懂为啥这样。没办法,又买了本《大话数据结构》开始啃,在跟着敲了半本书的代码之后,总算理解线性表、树、排序为啥要这样设计,初步有了数据结构的概念和思维。而后继续去上课,这次还是挺顺利的,大部分时候可以听懂。直到开始讲递归的汉诺塔,实在不懂这玩意为啥递归、为啥递归可以解决问题。遇事不懂老办法,买了本简易编程入门之类的书,跟着敲,敲了十几个递归的题目之后,对递归有了初步的印象,这个时候已经到了学期的末尾,开始考试周,最后还行,班级中上水平。

后边的日子稍纵即逝,转眼大了大三下学期,为啥要讲大三下学期呢?因为这几个月发生了两件事:我谈恋爱了、我决定考研了。说起恋爱这个话题,有很多想说的,也没太多能说的,毕竟满打满算也只谈了一个月。这次恋爱是我在大学的第一次恋爱,中间没有争吵,一切过的都很顺利,但是可能因为认识不久就开始恋爱,导致感情基础不稳固。当时她准备出国,我准备考研,在她七月去北京不久就说现在是关键时期,该专心学习,分了手。唉,学业爱情不求双丰收,但起码得有一个吧,安心考研吧,甭想别的了。但是当时也只是决定了要考研,考哪个城市、哪个学校都还没有定,也经历了从北航、东北大学、人大高瓴、北理工的反复横跳。当年(2019)年九月份,突然科软明年预备录取的人数,六百多,一看这个人数瞬间决定了:此时不冲,更待何时。于是,经历了几个月的彷徨期后,最终决定考科软了。

时间来到了2020年的元宵前后,当时刚刚解封,我晚饭后从广场遛弯回来,习惯性的看了眼群,有人说出成绩了。赶紧打开电脑查分,分数远超预期,当天激动的没睡着。五月十一二号,官网上查到了录取信息,了却一桩心事。

研一

作为全国著名软院,科软,两个很大的优势是:无导师且研二实习一年。研一上半年日子过的非常潇洒,人生第一次看了Live现场、见识了江南风光、认识了很多很多优秀且Nice的同学。如果说期间最痛苦的事情,大概就是强制挂科吧,每门考试最后8%的学生强制挂科,不管考多高,这样就有点搞心态了....但没办法,人在屋檐下不得不低头,卷呗!

上学期考试周之后开始放假。从寒假开始,就要忙着找实习了。那时候最想去的是字节,当时也是啥也不懂,在牛客上随便找了个内推就投了字节,腊月中旬hr打电话约面试时间,约的正月初八,从那开始头上就像悬着把剑,每天日子充实的堪比考研,复习基础知识(八股)、刷题等等等等。字节是我面的第二家公司(第一家是携程,面的稀烂,一面挂),面试开始前非常紧张,但是开始之后倒是没太紧张了,毕竟实习也不会问太难的东西。一面官看起来很严肃,但是心地是真不赖,算法最后暴力写的也给过了。二面也有惊无险过了。三面就不行了,让我介绍学校的课,天可怜见,一个多月没见过课本了,完全想不起来在学校学的啥,唉!然后出了道hard,不会做,结果毫不意外,挂!挂了之后当天心情还是挺低落,那天也是我启程去学校的前一天,家里一块出去吃了顿饭,席间接到另一个部门hr的电话,嘿,被捞上来了,约的是四月底面试,让我再好好准备准备,心情瞬间明亮。

然后启程去学校。实际上去学校之前先去了趟杭州玩,自己一个人逛了西湖、爬了飞来峰、游览了不少寺庙,那两天的感受非常的棒,奈何自己没文化,现在只能用“那地方真好”来回顾当时的杭州之行。在学校刷题、背面经,时间来到了四月底,开始面试,这次是直接从二面开始,面试官是我后来的组长,当时具体聊的啥忘了,但是记得他出的那道算法题是三数之和。为啥题目记得那么清楚?因为一个小时之前我刚做了这道题,看到题目那一瞬间真是心头狂喜,但表面不动声色,最终bug free。面完让我等几分钟,然后开始三面,三面是我后来的leader,一个很干练的女性,出了道翻转二叉树还是镜像二叉树,具体记不清了,easy难度的题,写完之后还让我优化、精简一下代码,当场暗示过了,让我等hr联系我。在四月的最后几天,一个很和煦的下午,收到了hr的电话,确定了意向和入职时间,过了几天收到了正式offer。艰苦的找工作之旅结束了!

当时正好是期中考试周结束,考试和实习两件压在心头的事情都完事,那该干嘛呢?当然是逃课去旅游了!先去的厦门,当时阴差阳错先去了厦门附近的东山岛,岛上很恬静节奏很慢,风景也很好。以为厦门会更好,结果厦门让我大跌眼镜,比自己想象的差不少,现在我依然想去游览东山岛,但实在没有心情再去一次厦门。而后去了趟丽江,第一次见到真实的、碧蓝色的湖水,第一次爬上雪山、第一次知道风景原来可以这么美。

第一次实习

第一次实习是21年8月4日开始的。

上午办入职手续,在中航见到的把几百人同时办公的场景,真是震撼人心,密密麻麻的人,键盘声、小声交流声,比电视职场剧可有压力多了。然后吃了顿饭,坐摆渡车去了紫金--我以后工作工作好几个月的工区。

当时北京正值疫情紧张,我来的第二天就开始限流:一天居家办公、一天到工区上班,周而复始。每个实习生入职都分配一个导师,在字节把他称呼为mentor。很幸运当时去了个不错的组,里面的人都很不错,每天吃完午饭晚饭都去食堂旁边的活动室打打球,放松放松。

在当时所在的部门是某中台部门的服务端开发小组,里面十几号人。说实话,在入职之前我感觉自己还是挺优秀的,结果入职以后介绍的时候,当年的校招生没一个本科的,全都是有腾讯/阿里实习的985研。后来的相处过程中,也深刻体会到了同事们爆表的双商,做人、做事都是不急不躁,各种困难总能迎刃而解。那七个月里,我从来没见任何一个人发过脾气,说话都很客气,语气也都很温柔,同事们都很年轻,都很朝气,都很牛X。

说回正事,当时我的warm up是开发某个功能的熔断模块,大体就是在系统某项指标超出某个数值之后,就让系统停止工作。当时的技术方案有两个,一个离线的、一个在线的。最终用的还是在线方案,具体来说就是多个协程间隔多少ms读取一次中央计数器,同时每个携程在有数据的时候把这个数据累加到中央计数器上,为了防止协程data race,需要用到分布式锁(当时我还是第一次接触这么高大上的名词),当时时间比较清闲,自己花了两天参考jedis的实现搞了个go版本的简易分布式锁,项目总共花了十几天吧,圆满验收。

第二个活比较枯燥,做的离线数据格式转换,跑一次得半小时,查数据、对比数据,搞了俩月多的SQL Boy.

第三个活那就有意思了,这个活也是我今年秋招时候面试官问的最多的,mt二面面试官评价这项工作应该是有一年两年经验的正式工做。项目背景是我们组的业务方比较多,他们的查询五花八门的,常用索引可能覆盖不到,但是索引数量不能太多,索引太多会影响数据增删改的性能。为了让甲方爸爸的查询都能走索引,需要在另外一个地方根据数据的内容生成索引。具体方案是消费数据库数据,然后在LSM中按照配置文件生成索引,格式比较复杂,需要能让索引有序且支持前缀匹配,还得让索引支持多重排序。光技术设计就搞了一个多月,成长迅速!

而后就因为工作太卷活太多,辞职了 5555~

第二次实习

第二份实习还是字节,这次换部门了,到基础架构搬砖去了。

这份实习跟上次最大的区别就是:下班早!一般十点上班,晚上七点多就下班。组里人的能力比之前组也上了一个档次,mentor是国内top1的计算机系博士,组长是万恶的美帝的常青藤的博士,组里一半以上是博士,我一个小小授课硕士瑟瑟发抖。

具体做的工作就是优化读长尾,过程不表,最后的效果是优化了15%的p99。

八月多干活干的没劲,想取消转正答辩,mentor劝了我好久,让我再忍忍,今年形势不好,字节转正也是一个机会。最后转正还是挺顺利,跟mentor打听说评价还是挺高的,希望能开个大包吧。

如果一句话评价这段实习,大概就是:c++事真XX的多!!!

秋招

秋招过去,拿了字节、美团、哲库、yfd、讯飞的意向,百度华为跑池子。offer不算太多,但是也挺满足了,未来继续努力!

大学和研一写的太多,将到实习的时候有点累讲的很简略,各位看官要是想了解更多细节,欢迎留言~