PS:真的真的很抱歉拖了这么久才发出来,最近实习事情也不少,我尽量恢复到之前的更新频率吧~
七个月的挣扎之路终于结束了,这是我从未承受过的痛苦
具体来说,是从去年 2023 年 8 月 22 日返校开始,再到 2024 年 4 月 3 日 腾讯实习 Offer Call 结束,过去了七个月有余
这期间发生了很多负面的事情,博客更新也遇到了很大的阻碍,计划的总结文也因为心情一篇没写出来,全是烂尾(
我只能说这是我所经历的最长也是最难受的低谷期,但幸好——我熬过来了,这一切都已成为过去
博客是生活的快照,我想把这段不寻常的经历记下来,给这段生活存档
但是,这半年多的事情的确太多了,并且各种因素相互穿插与影响,并非是一篇博客所能讲清楚的
同时,我觉得在开始之前有必要做一些介绍与铺垫,不然就无法理解我当时的处境
所以我计划将其拆分为 7 篇进行叙述,一篇前言,两篇关于找实习的主线,还有四篇支线:
前言与自我介绍
您正在阅读的本篇,包含整体介绍与个人先前经历
主线叙事
简历、面试与找工作(上)
去年返校开始,制作,修改与投递简历,多次面试的经历
简历、面试与找工作(下)
今年返校后的鹅厂面试经历,与对后来人的一些个人建议
支线叙事
杭州亚运会
从大一开始进行选拔,并作为志愿者参加杭州第 19 届亚运会的经历
第一台 ITX
从去年返校开始组装 ITX,以及不断折腾至今的故事
出国与润
个人对出国的动力与思考,以及到目前的准备情况
开源故事
关于开源之夏 2023 奖金接收,以及之后一系列的开源趣事
嗯…下面就开始吧 ,我这次希望偏向于纯唠嗑的风格,想到哪写到哪,所以如果行文思路有点乱还请见谅
本人目前大三在读,双非非科班,具体来说是杭州电子科技大学,自动化专业
唉,这个院校条件的确不够好,不过因为我从小对计算机感兴趣,所以计算机素养并不差
初中开始自学 C,折腾装系统,高中接触树莓派与 Linux,并且加入校队学习 C++ 参加 Noip,拿过省奖
同时租过云服务器买过域名,各方面多多少少都有所了解
而且高中我就开始写博客了,这个习惯一直持续到现在
然后,高考让我来到了杭电——我不能肯定地说这是一个 Bad Choice 或是 Good Choice
因为虽然我天天抱怨我的学校,但是我无法让时间倒流尝试其他选项,或者说——
我不能美化自己没有选择的道路不管怎么说,我从广东阴差阳错地来到了浙江
上大学前,我想我舍友肯定都是大佬,我能跟着他们学到很多东西
过来了才发现,我舍友基本都是臭打游戏的,编程是什么都一概不知,计算机常识都差的离谱,连装系统和梯子都不懂
上大学前,我想我会是计算机专业的学生,我会接触到计算机的各种基础课程
但录取通知上我被调剂到了自动化专业,上学后整天上课讲着一堆我根本没有兴趣的东西
好,这就要牵扯到我的傻逼学院了,我忍我的学院已经很久了,我只能说不吐不快,这次我一定要讲出来
(请注意,这一部分全在讲我的学院,略过可以跳转至下一子标题)
首先,我们学院的全名叫圣光机联合学院,意思是是与俄罗斯圣光机大学联合创办的学院,也就是中外合作办学
哦,我知道你肯定有些问题想问,我们专业课都是毛子过来用英语上课的,而基础课是中方老师用英文教材上的,初衷是全英文授课,但是显而易见的一个结果就是,如果你想听懂专业课,你需要花很大的功夫(
学院招生大类下属两个专业,计算机和自动化,也就是说,如果你志愿是计算机,可能会被调剂到自动化
唉我想到了高中填的什么综合素质评价系统,说是什么让高校全面地了解学生,而不是唯成绩论
然后呢?啥用没有,尽管我尽力展现我对计算机方向的兴趣,但是还是给我调剂到自动化去了,从此我再也不填这种东西了
至于我为什么要报这个学校,因为我的排名卡在一个很尴尬的地方,我其实是能摸到一些 211 的尾巴的(比如说什么华南农业大学),但是计算机专业排名真的太高了够不上,如果去的话只能去一些乱七八糟的专业
我应该是坚持专业优先,所以没填
我当时的志愿填报,我原以为调剂到自动化也是我能接受的结果,但真正来了才发现是真傻逼
PS:而且我进来才发现原来计算机和自动化不是平均录取的!我记得没错的话我那届是广东省录取 4 个人,其中 3 个自动化 1 个计算机
而计算机的大部分名额都给了浙江本省人,这不是妥妥的歧视?而且刚开学的时候,我们学院的什么领导还跟我们说什么计算机和自动化专业差别不大的,我只能说是纯傻逼
入学之后然后更恶心的来了
我他妈直呼上当
请注意我并不是抱怨教学质量如何差,相反课上的内容其实很多,之前上数据结构的时候(这是为数不多的计算机相关课程)居然讲到了红黑树与 234 树如何相互转化,可见内容是很翔实的,一年 2w8 的学费没白花,不过这也更体现了学习的难度
而且我也见过有很认真负责而富有激情的外教,他们的确是很好的老师,但最大的问题是——
其实如果是计算机的课,我倒是还有些兴趣上,但是可惜这是自动化专业
问题就是,我并不想上什么自动控制原理,什么结构材料,什么理论力学,什么仿真系统的动力学,什么离散控制系统
我只能说,如果你上课给我讲什么 Kubernetes ,那我肯定搬着小板凳都认真听,但是你给我讲这些?每天上课全是一堆公式?对不起,我一点兴趣没有
而且啊,这自动化就基本没什么跟计算机沾边的课,大一就一门 C 语言有点沾边,但这东西还要你教?大二有一门数据结构,但是这些东西我 Noip 都学过了啊还是没有新东西;这学期有个计算机视觉沾点边吧但我也没什么兴趣,还有个讲操作系统的正课,这东西我的确有点想上,但是已经要去腾讯实习了,唉,抱歉,上个屁
很显然,这不是我期望的地方;我只能说,这课的确不算差,但是真的不适合我
而且我身边的人大多也听不懂,至少有一半以上属于摆烂和混日子的状态
这是我想要的大学吗?完全不是,我感觉纯坐牢,所以真的要坐牢坐四年吗?
大一刚来的第一个学期,我是真的有点想回去复读,但是我感觉我复读只会越考越差(我爸当年就是复读更烂了((
唉,所以只能坐四年牢了,直接坐到混到毕业证
在这种环境下,我知道必须自谋出路
上大学之前,我爸告诉我,大学之大,不在于大楼,而在于大师
而如果我的孩子要上大学,我会告诉他,大学之大,在于大佬
大一上学期,还在迷茫的我,有一天看见了「杭电助手」的招新宣讲的消息(我已经记不清是从哪个渠道了)
这是一个综合了技术、媒体与设计方面的社团,主要业务是提供快捷的课表查看、成绩推送订阅以及各种方便校内师生的功能
还维护着一个公众号,时不时还会发些推文,还有和学校人脸闸机联动的疫情防控健康码系统(纯自主研发)
举办的地点是在学生活动中心的剧院
我之所以去,第一是因为据说可以混一个讲座章(听说要求要听够多少讲座才能毕业)
第二是我对里面的后端部感觉有点兴趣,听描述感觉能找到很多大佬的地方(事实也的确如此)
然后,我就和我舍友们一起去了,我记得很清楚,我坐在最后一排靠边边的地方
我的舍友全程在刷抖音和玩手机,而我一直在听,因为我一直在等轮到后端部的环节
然后,然后,就是 any 上台了,后端部长,一头长发的男生,个子很高,我不知道的是,我的未来就在这里开始改变了 ,两年后我也在他的位置
他讲解了一些前后端的概念,后来介绍了一下部门的情况与业务,别的我没记住,但是我记得他讲了下面两点
然后就是很顺利的参与群面(坐在我正对面的正好也是 any),做小项目推到 GitHub(当时还是用 PHP 糊的),第一次去到 303 面基与 Code Review,再到正式加入与迎新派对
进来了之后就开始学 Golang,因为社团里的的项目都是用 Go 写的,这时我才发现,这里面真是大佬云集
有和我同级但是高中就开始学 Go,在 GitHub 建项目写 Telegram 机器人的 iyear(而我当时连 git 都没听说过),初中就开始混 GitHub 的前端大佬 daidr(我们前后端基本都在一个群聊天),会搞硬件和物联网的 atom,搞安全的 eson(曾在例会上当场演示 hack 某 xxx 平台),等等等
我感觉我唯一能说道的就是高中参加过 Noip 拿过奖了
来到这个集体我真的感觉真的看见了未来的方向,每天水群都看着佬们在讨论什么,今天又看见了什么新名词,然后我就去查,去弄懂,每天都能学到新东西
一开始是真的大部分都看不懂,到后来慢慢能看懂的越来越多,同时获取很多优质的信息渠道,会讨论最新的 Go 版本又有哪些新功能,有哪些值得参加的活动与比赛,V2EX 上的有意思的帖子,各个开源社区的氛围怎么样,又有什么大事件,怎么做 GitHub 和 JB 的学生认证,白嫖 Copilot 和 JB 全家桶,再到第一时间注册与体验 ChatGPT 与后来的 GPT4,折腾各种好玩的猫娘提示词…
当然啦,还有参与社团项目,其实平时要干的活也不是很多,我也没做过很多活,但是我记得第一次把 commit 合并到组织 repo 时的激动——当时是要改一个微信公众号的回复的链接,还是做那个校历的功能(正则关键词然后弹一段校历的 text,再后来改成 image 了),我只记得当时是真的兴奋,我的确能为他人做一些事情
哦对了,关于 Golang,我真的很感激社团的前辈选择了 Golang,我刚上手时就惊叹于它的简洁与美感。的确是 21 世纪的 C 语言,没有 C++ 深奥的语法(当初 Noip 的时候就看不懂重载运算符为什么需要写成那个样子),还保持了 C 的简单,同时解决了很多 C 的弊病,我真的很爱 Golang。可能更重要的是,对比 Java,Golang 在字节跳动与腾讯这种大公司更加流行,这也是我现在能在大厂实习的原因之一了吧
关于 Golang 最大的缺点感觉是有些过于简洁了,像是有洁癖一样,语法糖有点少,刚上手时另一点让我不满的是没有 C++ 里的 STL 这样方便的库,各种数据结构都需要手搓或者使用第三方的库
为了我的简历,对,一切为了简历
大一的时候其实参与了很多活动与比赛,包括数模,ACM 也尝试过互联网+、服务外包等等,但是要么是感觉没什么意思,要么是进不去(ACM 真的太卷了呜呜),要么是感觉学不到什么东西(我只能说互联网+这种就是纯纯的 PPT 大赛,幸好后面没在这种比赛上浪费时间)
你可能说我以前是打 Noip 的,ACM 怎么就进不去呢?哇我只能说我数学真的不好,我高考数学和物理是一个分数,都是 94(一个满分 150 一个满分 100),如果我数学很好的话,我当年也不会只拿一个省三了
我开始思考,我为什么要参加这些比赛与活动
为了我的简历
我开始思考,四年后我毕业,我能在面试官前拿出一份怎样的简历,我需要怎样向面试官证明我能胜任这个岗位
努力卷绩点拼奖学金有用吗?
当你和腾讯的面试官面对面的时候,你跟他他掰扯你绩点多么多么高,拿过多少多少奖学金,他能靠这个给你 offer 吗
对,然后呢?这能说明你能帮我做出这个前端功能 / 你有经验能排查出这个慢 SQL 是为什么吗?
你只能说这句话,然后能接什么话呢?
你说钱?折腾 OSPP 直接 12k 到手不香吗,去大厂实习更是一个月大几 k,卷绩点投入产出比根本不够哇
你参加过 ACM 有用吗?
哦,如果奖项高的话的确是有些用的,但是你的水平应该做不到,而且你高中的时候已经玩过算法竞赛了,你可以把这些时间用来折腾项目与学习其他方面的计算机知识,这或许帮助会更大
你参加过互联网+,这有用吗?
你从中学到了什么呢?与其糊一个 Demo 出来,在学校做一个能实际落地的项目不更能体现你的能力吗?
所以,我之后每投入精力去做一件事,我都会问我自己:
这件事能给我的简历增加一行吗?或者有什么其他理由让我付出时间?
这 1.7 MB ,就是我成长的证明
我写博客到目前统共 293 篇近 32w 字(平均一篇 1k 多也算是合理的数字),其中:
你可以看出,我现在已经江郎才尽了 我成长最快的时候就是大一下、大二上、大二下三个学期
当时我花了一整个学期搞清楚我当前是个什么状况,我发现已经浪费了不少时间了,于是寒假开始我就努力学习与更新博客
大一下,我开始努力学 SQL(大一上的时候就简单熟悉了 Gin 框架),然后第三季字节跳动青训营来了,我在社团里被带着参加构建了一个完整的后端单体项目(具体来说是给出接口定义,让你实现一个极简的抖音后端,他再给你一个定制的 App 客户端,能指定后端地址,让你演示能实现各个正常功能)
这一段时间我基本是强迫自己在日更博客,不管发生什么事情每天必须更一篇,必须有所收获
但是这时候我还不是很会 GORM,纯纯的学着其他人的接口逻辑 + Copilot 依葫芦画瓢,也积累了不少经验
最后的小组答辩结果的是第 10/79 名,详情可以看 『字节青训营-3rd』结营感想(待后续) 和 『随笔』写在新学年伊始#青训营顺利结营
每节课的课程笔记在这里 #字节跳动-3rd-后端
我一开始还跟着做笔记,但是后面发现根本跟不上,干脆给 PPT 截图得了
之后的暑假去参加了第四届青训营,但是没有后端方向,所以就去了大数据方向,我们组选的方向是做分布式存储
但是因为全家出去旅游+学车,我也不是很懂(大一的人怎么一上来就懂什么 gRPC 呢),而且团队里也不是杭助的人,是在群里组的,实际上两个半活人(我算半个,打下手的,最突出的贡献是写了个 Redis 的分布式锁)
最后没拿到奖,但是还是有所收获的
这个时候我开始几乎全程使用 Linux 了,除了打游戏的时候切一下 Windows ,因为之前做分布式存储的时候依赖 Unix 的接口,不能在 Windows 环境下开发,我那个时候用的是 WSL2,但这东西是真的难用,我受够了 Windows 开始坚持使用 Linux 桌面进行日常学习与开发
这段时间开始复习算法,当时还是想考研的,但是现在已经没有那个想法了
还有学习 GORM,还有 CICD、OAuth 、JWT 等后端比较常见的知识
这个阶段只能说在慢慢积累
之后接了一个活,就是给我们的一个学院搓一套教学系统,有点类似于学习通,但是有些定制性的功能,不过主要体现在前端上需要做一些额外功能
这段经历还是很重要的,因为是实际落地运行一个项目,这就是牵扯到很多屁事
有很多事情,跟你虚空去糊一个项目是完全不一样的
首先是跑在老师申请的校内的平台上的虚拟机,限制贼多,首先是每次 SSH 都需要走 eazy connect,找老师收手机验证码,我只能说这东西是真的难用,后来我搭了一个 Web 访问的 Shell,这样方便多了
另外,就是这个机子是没有网的,要做自动化部署开放什么域名的访问还得去找网络中心
然后后面最离谱的是有一天 CORS 居然报错了,一问居然是网络中心把 OPTION 方法给 ban 了,这下不能用 CORS 了
怎么办呢?同源策略嘛,只能再加个 Nginx 作为统一入口,然后根据 URL 分流前后端
另外因为是实际落地的项目,可观测性就很重要,服务监控、日志收集、链路追踪都必须做好 ,记得第一次在日志里看见线上 Panic 我还有点慌
之后,寒假参加了第五届字节跳动青训营(见上面链接),我作为组长是直奔项目而去的,然后发现居然是和上次一样的项目
上次是做的单体,这次就想用 go-zero 折腾个微服务,但是组里的小东西真的态度很差,根本不给劲,基本就是我和 yeebing 两个人糊的
然后最后答辩成绩出来发现是差不多 200 支队伍的第一名
我只能说,双非非科班的大二能在一堆 985 211 里(有些还是研究生)拿到第一,算是一种幸运吧
现在回过头来看那个项目,我只能说做的是纯纯的一坨
(一次次觉得以前写的东西都是一坨,每觉得一次就进步一次)
哦对了,这个学期还入了个二手的 MacBook,2020 款的初版 Pro,用的 M1(不是 M1 Pro 芯片),16 + 1T 花了我近 9k
其一是因为 Linux 桌面的确不算很好用(当时还没有现在 Linux QQ,全是 wine),而群友都在鼓励换 Mac,我就换了
事实证明这是我买过最值的电子产品,一直用到现在都很舒服,赞颂 macOS 神教
接下来大二下就开始了,我记得当时为了逼自己不能把时间花在打游戏上,就只带了 Mac 过去,之前的幻 13 送给我弟了
大二下我属于是处于很忙当时不知道在忙什么的状态
首先头等大事是参加 OSPP(请见上面的链接),哇那篇博客感觉是到现在让我最满意的几篇之一
那段时间真是每天第一件事就是看今天又上了什么社区,上了什么项目
找准了之后又开始构思各种实现方案
除此之外就是平时上课了?我也忘了当时在忙什么了(博客没记想不起来了哈哈哈
哦对了还有亚运会志愿者的培训,因为下半年就要开亚运会了,经常被拉去奥体中心训练
然后,要到期末的时候,yeebing 居然开始面字节了,他当时还想拉着我一起去面
但是我感觉我是真的啥都不会哇,然后他说没关系的,你这个青训营第一拿出来肯定能进
但是我感觉我基础真的是还得复习,LeetCode 都没怎么刷过,算法基本都要忘光了,操作系统,计网,我也都不会
还有 MySQL Redis 那一堆八股也没背
所以我说让我准备一下,等下学期一开学我就去面吧
然后他居然就面进字节了,暑假开始上班,400 一天,纯纯的羡慕(话说他现在还在字节呢,快一年了)
然后,然后时间就到了去年 2023 年 8 月 22 日返校的那一天
而当时满腔热血的我不知道的是,长达 7 个月的至暗时刻即将到来
我感觉我的前言和铺垫讲的已经挺够了,不过感觉还有一点需要补充
就是为什么我这 7 个月一直都在找实习,而一直都没有放弃
其中一个原因是看着周围一个个人都去大厂实习了,我不去是真说不过去哇 (都没脸呆在群里了都)
字节 400 一天的薪水也实在是让我心动
但是最重要的是我需要尽快将之前的成就转化成更大的成就,不然就没什么用了
为什么会没什么用了呢?在我看来,至少在目前这个阶段,我的生活就是一维的 dp
转移方程就是从临近的几个状态推导出下个状态
其实和左耳朵耗子(在此默哀一下)说的差不多:也就是所谓的「成功是成功之母」
用我举例,那就是
到这个阶段,我应该能把之前所积累的优势转化为另一个成功,这也是最关键的一步:拿到大厂实习
这意味着来到一个更大的平台,接触更多的知识与经验,而且这是真正有含金量的事情
我只能说如果我没拿到大厂实习,我都不知道我以后怎么找工作,无论是在国内还是国外
而且这个链条有个关键点:
这个 dp 的状态转移是不能停的,是跟着时间匀速往前走的,如果有一步掉了那就步步掉
等于是前几个临近状态取个总和?然后推到出新状态
而如果你临近的这几个状态都没什么新产出,都是零
这意味着你后面就都是零了,前面的产出作用也会越来越小
举个例子,就是我可以在大学的时候跟别人吹嘘高中的时候打过 Noip 拿过奖
但是等你毕业了,你还跟别人说你高中比赛拿过奖?谁会理你?
字节青训营也是一样的,你拿了第一,然后呢?这意味着什么呢?过段时间就没什么意义了
(唉青训营现在也不办了,最开始的发起人月影也都离职了,这种东西没了主心骨就很难继续)
所以我必须借助这个青训营的第一拿到实习
这样才能让这个循环继续下去
而这也给了我很大的压力,我在后面越找不到实习,就越焦虑
而越焦虑,越急,事情通常就越难办到
这就是为什么我说,这七个月是我从未承受过的痛苦