2023年一年经验的码农工作总结

简述

光阴似箭,2023 年一眨眼就过去了。第一次做年度工作总结(Abnormal),就浅浅地记录一下 2023 在码场搬砖的一年。现在已经是三月了,写去年的年终总结可能是有点"不合时令"了。哈哈,文章也是要讲究一个季节时令。

一切都得从考研说起

2022 年我只工作了半年(其实我从 2022 年 1 月就开始实习了,后来因为 Covid-19 gap 了,在宿舍度过了大四下半学期),也给它算到 2023 年的工作经历中。

2021 年,那年似乎是考研的热潮年。考研人数迎来史上最高峰,好像是 500 多万考生参加考研。最后到底有多少考生进入考场参加了考试那就不得而知了。我那年确实准备考研的,目标院校是江苏某 985 旗下软件学院。我也稀里糊涂地报了一个考研培训班,就是在暑假进行集训。在长江一个小岛上进行封闭式培训(老南京人应该知道在哪里,读者不妨猜一猜)。谁知天公不作美,那年暑假南京爆发了疫情,整个小岛都被封锁了。然后隔三差五来捅一波嗓子测核酸,给人都搞麻木了。

在那期间,我不幸患上了重鼻炎。得了鼻炎之后整个人生不如死,每天就感觉要窒息了一样,关键是医院的耳鼻喉科不收,因为关了(上面的操作,咱贱民看不懂,也不敢问)。药店也不卖消炎药了,结果我的鼻炎越来越严重,到后期每天晚上都整夜失眠。呼吸不畅让我每天都很头晕,精神状态很差。到了 8 月底,南京终于放开了,我终于可以乘高铁回家了。这时候学校也同时宣布开学延期到 9 月底,我那时候虽然也每天坚持在复习,但是我知道以我这种状态下去肯定是没法复习,考试不大可能考上。考试不仅拼的是人的刻苦努力,而且拼的也是人的心态还有身体素质。

到了 9 月底,我回到学校也渐渐适应了新的学期的生活。但是每天还是被这该死的鼻炎折磨,每天晚上入睡都很困难。然后到了国庆节,我竟然连续玩了一个节,那时候我已经知道了考研已经要败北了。看到之前大一大二认识的哥们儿都拿到了很不错的秋招 Offer,我心里很不是滋味。难道我考研失败,连工作都要找不到了吗?

整个 10 月,我的内心很焦灼,未来还没有定数,难道终将以一个失败者的姿态毕业回到家乡吗?因为我的情绪不好,加上心理压力很大,那时候鼻炎好像更严重了。

到了 11 月初,我知道大局已定,考研必将是个"最差的解"。写过 LeetCode 朋友都知道一道题有最优解,每个解都可以解题,但是获得收益完全是不一样的。一个普通人最应该牢记的就是"选择大于努力",就算你再怎么聪明,你选错了一个方向,你再怎么努力也是徒劳。因为这个解的收益太低了。影射到现在的职场,普通牛马打工者拼死累活每个月也就那点钱,老板只要压榨你就足够躺着挣钱了。

但是那时候我告诉我自己,我他妈绝对不能输,我一定要赢一把!!!向现实低头是弱者的姿态!!!过了一两天,我终于清醒了。考研并不是唯一的出路,我这时候打算放弃考研准备参加秋招找工作。得益于我在大二大三两年期间(主要是疫情在家 8 个月时间)疯狂学习技术,我的技术底子比较扎实。再加上那年 2021 年互联网行情很好,我花 10 天不到时间一边面试一边背面试八股文拿到了十几个 Offer,基本上都在 10k 以上。对我这种普通科班本科生来说已经很不错了。其中我最满意的是互联网安全行业某信安全的 Offer。在十年前,这家公司是全南京最养老的公司没有之一,现在已经裁员裁疯了,年后刚裁一波。还有一家做电气设备制造的上市公司给的 Offer 也不错,但是最终我拒绝了。在秋招末尾的时候,我突然接到了 SHEIN 的面试邀请,很遗憾最终二面挂掉了。我怀疑是面试官想劝退我,问了太多 JDK 源码的问题,还有很多高并发、分布式的问题。

直接开始摆烂

在 11 月 26 日晚上,我突然地收到了上面我说的某信的 Offer,我欣喜若狂,我把我的喜悦分享给亲戚和父母。但是我的父母并不是太高兴,他们觉得我还是应该考研,但是每个人出路并不是一定要一样,并不是要走一样的路。我最终还是放弃了考研,考试那天我只是走个过场随便应付了一下。

从收到 Offer 之后,我就天天躺在宿舍。实训课直接敲,如果老师问我为什么不去?我直接亮出我的 Offer,这个是最有说服力的东西!而且那实训课讲的全是些零基础小白的 Java 后端开发的就业课,这些东西对我来说真的是太入门小儿科了,因为我在大二暑假的时候已经能熟练使用 SpringBoot、SpringCloud 技术开发项目了。

现在我终于有时间学习我之前一直想学但是没有时间学习的东西。比如,Golang 编程语言、Netty 框架、Spring Cloud Alibaba 微服务技术、Java 并发编程、React.js 框架......

同时,我也有很多时间来看我之前一直想看的书籍:《Java核心技术》、《JavaScript权威指南》、《Go语言程序设计》、《设计模式就该这样学》、《Java编程思想》、《Spring5核心原理》等等。

大四上学期已经还剩一个多月,我也利用这段时间在宿舍完成几个小项目,也很开心终于能回到以前愉快的技术生涯了,程序人生才刚刚开始。

过年回到家我也没闲着。我利用一个寒假的时间学习了 23 种设计模式的实战应用并写了很多笔记分享到了我的仓库。同时,我也在积极开发我的毕业设计课题,我是准备开发一款 mini Spring 框架,实现 Spring 的 IOC 以及 AOP 机制,也借着这个机会学习 Spring 框架的底层原理。

开始实习

时间来到 2022 年 2 月底,我申请了去某信安全实习。一个月 3k 的薪资感觉也可以了,可以补贴一些生活费也不错。开学两天后,我就跟正常的上班族一样,每天到地铁站乘地铁去公司。虽然每天都要 6 点半早起,花一个小时通勤,但是我却感觉过得很充实。到了公司之后,组长跟我简单介绍了他们做的业务,是一个专门为企业设计的安全态势系统。因为我的导师一直在出差,所以就没人管我,我就一直在学自己的东西。在实习的前一个星期,我的毕设课题也开发得差不多了。

疫情反反复复

我才去了半个月不到,南京又爆发了疫情。据传是有几个上海人阳性来了南京,整个南京城从 3 月 10 号开始封城。不出意外的意外,我的实习计划泡汤了,组长直接帮我办了离职手续。这个疫情真是搞得我浑身难受,我的工作计划全被打乱了。

呆在宿舍的三个月

既然封城也封校了,那就只能老实在宿舍呆着。唉,大学四年,三年都是疫情封校封城的,真是搞得人要疯了。真的对上面的操作感觉很迷,唉屁民就别讨论了,不配。接下来呆在宿舍的三个月中,我顺利地完成了毕业论文的编写以及毕业答辩。

在 5 月 23 号答辩当天,我跟答辩评委老师们大吵了一架。因为他们觉得我设计的东西太空洞,没有 UI 界面操作。我设计的东西是一个库啊本来就没有界面。反倒是他们对所谓的 XXX 管理系统很感兴趣,很乐意点评。他们对我这种原理性的探索项目一点兴趣都没有。真的很失望,这难道就是当今中国失败的高等教育么?如果你在欧美国家的大学,你研究这种课题,你的导师会非常高兴,可能这就是中西差距吧。西方的孩子都是在一片赞美和表扬中长大的,反观我们的中国孩子,在自我否定中长大。影射到职场:"其实我对你是有一些失望的。你最初来到这个团队,是低于大家的平均值的,大家都希望你能够拼一把,快速地成长起来","你在公司的时间也不短了,你比公司其他开发强在哪里?你是否沉淀了一些可以复用的资料和方法论》有任何想法时你都要想一想:为什么是你,而不是别人呢?"。

最终我的答辩成绩是 60 分,妈的,多给我一分都是浪费,艹。回宿舍路上边走边骂,妈的一群猪,狗屁不懂,就会瞎扯蛋。答辩完当天,我就申请了提前回家,也买好了高铁票。我感觉这个乌烟瘴气的地方也没什么值得留恋了,我需要静一静。

5 月 28 号早上,我搭乘了复兴号列车回到了老家。回家之后感觉好多了,没有之前那么的压抑,小县城的生活节奏依旧是那么轻缓。每天清晨坚持去公园锻炼,我感觉我这四年在大学真的压抑坏了,精神总是处在崩溃的边缘。

突如其来的毁约

刚回到家没几天,也开心地度过了端午节。可没想到端午节后一天某信安全就开始大规模毁约应届生(每年必看的戏,每年都会重复上演)。HR 突然把我们的飞书账号拉黑,然后解散了飞书群。我们都被这操作搞懵逼了,刚开始还以为是正常呢,没想到真的是毁约。当天下午就接到了 HR 的电话,我人傻了。

我当天的心情就不好了,感觉整个人都要抑郁了。辛辛苦苦面试通过拿到 Offer 本是一件开心的事情,没想到公司说毁约就毁约。学生们自发地组建了 QQ 群、微信群来讨论如何应对这件事情。下面是脉脉的帖子:

帖子链接:

某信安全6月6号毁约:无良公司,丧尽天良!

最终这个无良公司只赔偿了 3000 块钱。我们学生是真的耗不起,斗不过这些公司的。去搞仲裁,没个一年半载也搞不定,公司直接把我们耗死了。所以大多数人只能忍气吞声那赔偿走人,那些已经租好房子的是真的倒霉,押一赔三,损失比较大。

重新找工作面试

我这是心想,你再怎么愤怒,骂娘也无济于事。不如重新整理好自己的情绪,早点进入面试状态。我被毁约的当天晚上我就联系了之前给我发口头 Offer 的公司的 HR 姐姐。HR 姐姐人挺好的,还帮我跟部门争取了一下,给我一次重新面试的机会。我也顺利地通过了面试,拿到了 Offer,薪资也还满意。真的感叹终生学习受益匪浅,在人生的任何阶段都要坚持持续学习。

后来学校的老师也知道了这件事情,他们跟公司的人事联系询问到底是什么情况,但是最终也无果,人事直接不接电话。我真搞不懂学校的操作,第二年这公司又来校招,真特么服了。只要给钱就能来祸害应届生是吧?骗完国家补贴然后就卸磨杀驴,试用期结束就裁掉?这傻逼学校也有问题,真的不好评价这傻逼学校,Rubbish。

学校的负责学生就业的老师也帮我安排了面试,是一家南京中科旗下的事业单位(信息高铁研究院,有兴趣可以搜搜)。我也顺利地通过了面试拿到了口头 Offer,但是我感觉那边太偏了啥吃喝玩乐的地方都没有,所以我还是拒绝了,去了之前那家公司。

感觉做的事情没有什么意义

拿到了新公司的 Offer 之后,我的心情终于得以平复。还是一如往常地早上出去锻炼身体,白天在家看书写代码,度过了在家最后的十几天。7 月下旬我就去新公司的上海总部培训,话说我已经快 6 年没有来过魔都了。公司的总部在闵行区的一个工业园里面,也挺鸟不拉屎的,突然有点怀念在南京生活的时光了。那鸟不拉屎的地方房价都要接近 7 万一平米,真的震惊了。

在上海培训的日子也过得挺开心的,每天晚上我都要出去在立交桥下面散步,看钓鱼佬钓鱼,还有捉知了幼虫的。到了 8 月下旬,我结束了培训乘高铁回到南京,熟悉了一下工作的地点以及我的工位。刚来没几天就被安排去了青岛出差。当时我心想,出差就出差吧,出去见见世面也挺好的。

但是出差到现场并没有我想象中的那么顺利,每天就是对着系统点来点去,干一堆杂活。我明明是一个研发啊,怎么变成了调试岗位的人了?到出差现场无非是跟研发中心的人用钉钉远程对接,开远程桌面给他们用,干的全是杂活。在出差现场唯一写的代码还是我用 Go 语言结合 excelize 库导出数据的二进制程序(可以说是脚本)。

第一次出差历时半个月,总体感觉也还行吧就是感觉干的活没啥意思。人家互联网公司的都是来了就上手写代码,一刻都不会耽搁。可能这种传统公司比较看重业务吧,也没啥核心技术。

第二次出差是 10 月底,这次出差有一个多月时间。一个人到一个陌生的地方时间一长难免会感觉孤独寂寞,而且每天干着枯燥乏味的调试员的工作真的没啥意思。我感觉我学的很多技术根本都派不上用场,我心想在这里迟早得废了,不能就这样下去。那时候我已经想好第二年准备找工作面试跑路了,不能再在这里浪费时间了。

12 月初,本次出差终于结束了。本来打算回来好好学习然后准备面试八股文的,没想到全南京突然在 12 月 19 号完全放开了(据传是因为有人举白纸,上面的操作比较抽象,看不懂,不好评价)。从那以后,再也看不到健康码、行程码、核酸码,还有核酸亭、大白......

不出意外的意外,12 月底,全城该阳的都阳过一遍了。哈哈哈哈,群体免疫咯,咱不说谁是小丑了。

抽象的架构师

时间来到 2023 年 1 月,虽然我阳了,但是我还是坚持每天学点东西,毕竟现在不怎么忙,等忙起来的时候真就没时间学习了。

过完年,已经是 2 月了。部门终于给我安排了活了。部长把我安排给一个主任转件工程师,在他手下干活。他自称为系统架构师(咱也不知道谁承认这头衔),姑且叫他架构师。

架构师主导的是一个叫状态感知故障诊断系统的项目。这个系统可以采集计算机的硬件信息,以及系统内存,包括内存占用、CPU 占用、磁盘占用、网络接口通信流量等。而且还可以自定义采集的指标,比如业务指标。采集指标只是一个基本功能,最牛逼的是可以诊断崩溃的进程,自动诊断出问题然后自动修复问题。众所周知,C++ 编程语言开发的软件很容易出现内存泄漏、野指针问题,很容易就会把系统搞崩。所以架构师搞出了这么一个项目。

但是后来的工作中,我发现此人就是一个水货,就一小丑。自称为架构师就会一天到晚画 PPT,写文档狗屁不懂不懂装懂。

刚开始跟他谈论 Go 的运行时,他说 Go 也有像 Java 一样的 VM 用来分配内存和 GC。我服了大哥,Go 要是有 VM 的话怎么可能内存占用那么低,Go 的并发控制、内存分配以及 GC 都是通过 Go 的 Runtime(运行时) 实现的。

整个小组就仨人,架构师想搞成这么一个项目就是天方夜谭。于是他想到拿开源项目二开套个壳子(跟某为的思路一样了,哈哈不能黑爱国企业)。软件监控系统方面,"套用"了开源的云原生监控系统 Prometheus 以及配套组件 AlertManager、Grafana、Node Exporter。架构师自己独立负责崩溃进程捕获生成汇编崩溃报告的功能,咱也不知道他用的什么库套了壳子,反正我记得 Linux 操作系统是这么一个机制的。

我的职责就是基于 Node Exporter 二次开发业务代码。我刚开始提议,开发业务部分的代码,应该跟中间件隔离开而不是直接拿源码改。具体来讲就是创建一个新的工程,引入 Prometheus Go Client 库,然后基于 SDK 的接口规范编写业务代码,再引入一些常用的业务开发的库比如 Viper、Wire、Gin、Gorm 等。

可是架构师他偏要拿源码改,说是因为我们这个项目要用到嵌入式平台环境所以得保证内存占用率低,进程数量少,不能出现其他进程。当时我一听这话我就惊了,搞嵌入式开发那应该统一使用 C++ 啊,为什么使用 Go 啊。Go 在嵌入式环境也不成熟啊,根本也不了 C/C++ 这些老牌语言啊。从这时候开始,我就觉得这个逼一定是水货,实捶了。

因为第一次接触到这个领域的东西,所以我得从头开始学起。虽然我在大三的时候就接触了 Go 语言,但是比较没有什么项目经验而且时间太长语法都生疏了,所以我又开始把 Go 语言拾起来学了,重新学习了 Go 的语法基础、并发编程之类的东西。然后还要熟悉 Prometheus 生态的一些概念,比如采集指标的类型有 Counter、Gauge、Histogram、Summary 等。还要熟悉 Grafana 监控可视化平台的使用。最重要的是熟悉 Node Exporter 源代码,在此基础上开发业务代码。我大概花了半个月时间吧就熟悉了 Node Exporter 的源代码以及它的接口扩展设计。

在 7 月之前的半年中,架构师要么是上班睡觉要么就是跟部长们扯皮吵架。因为他这个项目迟迟不能落地,都预研了两年,这时候突然说要换语言,原来是 C++,现在要换成 Go。这个架构师也不知道跟老板有什么铁硬的关系,这么混都没被干掉,部长们都是不屌的。我们组员呢就抓紧学习项目必备的技术,尽快熟悉项目。

但是在此期间,我也是投了很多简历,每天坚持刷牛客,好不容易通过了一家公司的面试。5 月初然后说让我等 Offer 等一个月。我真的奇怪哪家公司的 Offer 需要等一个月。结果最抽象的是到了 6 月突然告诉我他们招聘通道冻结了,我的 Offer 被卡住了。我草,他妈的辛辛苦苦来来回回花了一个月时间面试就等来这个结果。最终 Offer 还是在 9 月发下来了,下一节再说卡了我四个月的 Offer。

这个逼最恶心的是他自己搞不出来东西,就硬逼手下的人,天天 PUA 我还有另一位同事。中午搁那不睡觉天天跟得了哮喘一样在那故意咳嗽还敲击着键盘,真想给他一拳。就喜欢在别人工位旁边逼逼赖赖他那所谓的高大上的技术,每次逼逼都要逼逼一小时,最烦这种一瓶不响,半瓶咣当的货。

到了 7 月终于正式开始开发项目了,我拿 Node Exporter 源码来改,我导入了一些常用的依赖库,比如依赖注入 Wire。架构师疑惑什么是依赖注入,为什么要用依赖注入?我跟他解释了半天也解释不清,亏他之前搞过安卓的连依赖注入都闹不明白。他疑惑为什么不用全局变量,我说因为全局变量不易于管理,用依赖注入比较易于管理,而且 Wire 是生成式依赖注入,在编译的时候就生成了依赖注入的代码,不会因为运行时注入用到反射影响性能。反正跟他说不明白。

最无语的是,他连什么是 MVC 编程模式都不知道,真的服。安卓里头都有 MVVM 架构,真的怀疑他到底多少年没写过代码了。我写个 Controller、Service 对象他竟然都很惊讶。

到了 8 月份,公司突然严抓考勤,我就感觉不对劲了,咱也说不出来是什么感觉,就感觉不对劲。那时候部门突然也要求 996 加班,整个研发中心都卷起来了。在 7、8 月份俩月我也去面试过一些公司,有国企外包、互联网小厂、中厂都有,最终有一家小厂愿意给我 Offer,岗位是 Go 后端开发。

到了 9 月初,我因为一些技术方案问题跟架构师有分歧,大吵了一架,那天我真他妈的不爽,这个逼真的太傻比了。那天晚上,那家小厂的 HR 突然跟我说我的 Offer 马上要审批完成了,我心里一阵暗喜,我当天晚上就跟人事主管提了离职了。

第二天,部长也找我谈了。妈的这部长跟这架构师一个尿性,也跟我说历史都是相似的,你现在跟你领导有冲突,在别的公司也会重新上演的。我说那你既然这么说,我们也没什么好谈的了,我只能拭目以待了。说完,我就猛地摔了一下门出去了,然后在 OA 系统上面提了离职:

终于入职了新公司回到正轨

离职后我在家休息了一星期,第二周的周一我就去入职了那家小厂。我看了一下他们的代码,对外宣称是做工业软件,实际就是拿国外的工业软件套个壳子,使用 Go 开发 Web 后端服务然后调用工业软件进程的接口最终实现所谓的云原生在线工业仿真平台。

好巧不巧,那个 6 月份卡我 Offer 的公司在第二天突然给我发了 Offer,最终我还是选择去之前那家公司,互联网业务还是比较通用一点,公司也比较大发展还是有机会的。

在这家小厂干了一天我就跑路了,也挺对不住招我的老哥的。但是,得记住的是职场本身就是残酷的,人往高处走,水往低处流。

离职之后第二天就去做体检了,我也顺利地通过了体检。9 月下旬我终于入职了这家公司,新公司的工作强度稍大但是确实能学到一些技术吧。感觉技术生涯也终于回到了正轨,不像在架构师手里干的事情那么扯蛋了,感觉在跟造原子弹一样。

经历还是挺魔幻的。2023 年也在这家公司干了仨月左右,也学到了不少标准工作流程,收获还是不小的。在这家公司就不分什么前端后端了,人均全栈,我也熟悉了 Vue3 的语法以及一些工作流的用法。

总之,职业生涯终于回到了正轨,2024 年继续加油,创造新的辉煌!无限热爱,奔赴星海!

相关推荐
炒空心菜菜11 分钟前
MapReduce 实现 WordCount
java·开发语言·ide·后端·spark·eclipse·mapreduce
独行soc2 小时前
2025年渗透测试面试题总结-阿里云[实习]阿里云安全-安全工程师(题目+回答)
linux·经验分享·安全·阿里云·面试·职场和发展·云计算
wowocpp2 小时前
spring boot Controller 和 RestController 的区别
java·spring boot·后端
后青春期的诗go2 小时前
基于Rust语言的Rocket框架和Sqlx库开发WebAPI项目记录(二)
开发语言·后端·rust·rocket框架
freellf3 小时前
go语言学习进阶
后端·学习·golang
全栈派森5 小时前
云存储最佳实践
后端·python·程序人生·flask
CircleMouse5 小时前
基于 RedisTemplate 的分页缓存设计
java·开发语言·后端·spring·缓存
獨枭6 小时前
使用 163 邮箱实现 Spring Boot 邮箱验证码登录
java·spring boot·后端
维基框架6 小时前
Spring Boot 封装 MinIO 工具
java·spring boot·后端
秋野酱6 小时前
基于javaweb的SpringBoot酒店管理系统设计与实现(源码+文档+部署讲解)
java·spring boot·后端