PS:以后写感想类博客一定要当天冲完,不然拖个一个星期真的找不到那种劲了

首先我真的想向字节跳动和掘金社区道个歉,这次青训营我主要就是奔着大项目来的 ,平时的课基本没怎么听

关于课的话,其实是挺好的,但是和第三届的重复了很多,加之一开始结营条件定的太高了,考虑到寒假的精力,我选择直接放弃结营证书,全力去冲项目证书了 (结果最后告诉我没有实体的项目证书)

好了,回到正题,关于这次的项目总结,关于项目的过程在我的 写在大二开学之初 其实已经有所记录了,这一篇再稍微简单补充一下


答辩成绩

作为 h68u 队的队长,这次项目能取得这么好的成绩绝对是在我的意料之外的,我一个双非本科非计算机专业的大二学生,居然能带领团队拿到第一的名次,这我真的想都不敢想

image-20230318210642346

当我第一次看见这个名次的时候,我是愣住的

image-20230318210714092

答辩时与评委的对话,我从未想过能得到评委这么高的肯定

img

最后的电子版证书


开发过程

项目地址:https://github.com/h68u/h68u-tiktok-app-microservice

项目文档:https://hdu-help.feishu.cn/docx/KuGidErAIogvWDxcn2VcTrfUntb

当公布大项目的题目和第三届的一样时,我心里差不多就有个框架了,毕竟有第三届的项目可以参考,这个项目可以很好的锻炼一下社团里面的新人,然后最后让我来收尾做一些优化(我一开始真的是这么计划的

项目框架选的是 go-zero ,一方面我在微服务方面暂时也就比较熟悉这个,而且也挺好用的,另一方面我有其他项目也在用这个框架,但是我也不知道我写的是个什么水平,于是就想用相同的框架开发,然后让评委点评一下,看看自己怎么样

我本来计划的是春节前把基本业务都实现好,然后后面开始优化,但是实际上你们也都看见了,没办法,到头来基本还是得靠自己

于是真的是苦了自己,那段时间真的是连轴转,到后面时间真的很赶,到农历十几号才让所有接口都能正常工作

然后就是优化了,缓存是肯定要上的,但是 Redis 我之前也不是很熟,也没用过(上次项目的缓存不是我写的),但是没办法你肯定要逼着自己学,我就去看上次的项目怎么写的,然后看了一堆文章,又去和 GPT 聊了很久,我再开始写缓存

但是维护缓存的一致性又可以牵扯到消息队列,我想尽量让我的项目高大上一些(这个项目大概是我一年来对于后端的全部理解),我就又去学消息队列怎么用,不得不说 asynq 真的是一个很好的库,作为刚上手消息队列的新人,我用不上 kafka 那样高大上的方案,我只需要能简单快速地上手,能理解什么是消息队列就行

最后还折腾了一圈外围的服务来提升服务的可观测性,这方面其实没什么好说的,go-zero 框架都做了适配,也就是增加个配置项的事情,但是这在答辩的时候无疑是个很大的加分项


其他人的项目

关于我对于拿到第一那么震惊还有另一个原因,就是我的确看见了很多大佬与很多很好的项目,有的项目用上了 redis 里面的集合运算,我感觉有点眼前一亮,我这也是第一次用 redis 于是就没想着整太多花活。我还看见有人把 ChatGPT 集成在里面的,真的是绝了,还有人在开发的时候发现赫兹框架有问题,给官方提了 PR ,还有的人在答辩的时候说了很多我根本不了解的次,什么水平越权垂直越权的,这些都是大佬哇

答辩的时候也从其他项目学到了不少东西,比如说手表问题:你有了两块手表,结果反而不能判断时间了,因为两块手表的时间不一样,这意思就是不能为了获得一个信息而设计两套机制,不然如果不一样的话你也不知道该信哪一个


关于实习

实习?是的,青训营本来也包含了招人的目的。这届我们杭助参加的人不少,前端后端的都有,然后有个前端进阶的字节问他要不要去实习,结果他说暑假才能实习,就直接被拉进人才库了(

我记得报名的时候有一项是问有没有在字节实习或者入职的目的(大概是这个意思),然后当时我填的否,我想如果我填的是的话肯定也有人会来联系我的

然后应该是要去参加面试(听唠嗑群里消息),然后如果没过还是会被丢进人才库(

如果先告诉我这次项目的结果的话,我肯定会填是,然后去试一试的,毕竟也是一次开拓眼界的机会,但实际上我也没做好去实习就业的准备,我计网、算法、还有各种八股都没掌握,k8s之类的云原生基础设施也没折腾过,还有 golang 的一些特性都答不上来,我只能说我还得好好学习

这两天听群里学长学姐讨论就业形势,就像是骆驼祥子进了茶馆看见了老马一样(那么优秀的人,结果也是工作都找不到?这也是我会是的未来嘛?