
2024 年度总结:曲折但整体向上的一年
🌆摘要
大家好,我是小答,时间过得很快,已经过去一年了,今年也开始实习和整秋招相关的,上次写实习还是在一年前,当时还是在大三的时候,当时说想要一直追求⌨️ coding 之路,还定下十年之约,当时还以为很远,没想到已经过去一年了,我记得当时给自己定下的目标就是找到一段中厂实习吧,没想到完成了两段,算是超过预期了,哈哈哈,接下来我就来小小说一下我这一年吧。
然后我这一年的总结主要分为几个部分吧,🚢实习和面试、⛅日常生活、🚀技术提升、👻疑问解答、✨目标展望,因为我答应了许多人说年度总结的时候问题一起回答,但是我怕我有的地方控制不住说得有点多了,所以先把目录画出来,需要的同学直接定位到相关的部分去看就好了。文章略长,勿喷😭!!!!
🚢实习和面试
🕐初始:实习准备
在去年春节回到家之后,其实在家里的鼓动,有过一阵子想要考研的想法,当时就纠结了很久,还询问了一下鱼皮哥给的意见,当时就是一直在动摇,没有做出决定,后面想了一下,还是决定选择继续找实习不考研了,然后就继续准备八股和算法,然后八股一开始准备的路线也正常就是 MySQL->Redis->JUC->JVM,然后计网和操作系统由于当时大三上的时候基本准备得差不多了,当时就是看一下,到学习差不多就开始面试了。这个时候我背的八股可能还是纯八股,不会结合项目和自己的经历去说,只能说还是太嫩了,不过差不多 4~5 月开始,我就已经知道自己的不足了,然后当时项目也非常简单,就是网关 + 12306 + 论坛项目。
🕝实习之路
然后当时基本就是准备差不多一个月就去面试了,当时面试的第一家公司是杭州的一个小公司,只能说是一家初创公司吧,当时基本没有怎么经验,就是纯面试,然后基本就是面试了基本十几分钟,然后就是问一些常规的八股,我回忆,当时面试的内容也非常简单,就是简单的 MyBatis 缓存、SQL 注入、HTTP 三次握手、四次挥手,差不多就这些了,我记得当时面试完过后,半个小时 HR 就打电话来通知已经通过了,然后我就先去问了一下我们班主任,当时的说法就是我们班主任说小厂的话可能学校不会同意让你出去,没有办法,那就只能尝试各种中大厂,当时主要是和条神交流多一点,当时条神教会了我很多东西,在这里先感谢一下条神,然后也给条神的 AI 智能图书馆项目(https://gitee.com/falle22222n-leaves/vue_-book-manage-system)可以说课设、学习都是很不错的项目,适合小白入门学习进行实现,而且现在大模型也非常流行,这个项目整体来说算法非常不错的,感兴趣的小伙伴可以学习或者点个小 star ⭐,然后还是继续说我的实习寻找之路了。
在后面知道只有大厂实习才有机会的时候,我就开始尝试去冲大厂的暑期实习,可是发现投了一个星期没有效果,我开始思考是不是我的简历是不是不够了,后面想了一下,是否可以使用我自己大二之前写的项目,后面问了一下,就是可以,就是不要直接用项目的简介,换一下描述就好了,自此我的项目就变成了一个 CRM 和一个异步任务框架,然后任务描述基本用到了现在,这里我找到当时的项目描述。

后面的话我两个项目,一个字节青训营的电商项目,还有一个 CRM 项目平分这个项目的亮点💡,基本上够用了。
然后换成这个之后,当时是面试就多了起来,直到后面暑假去实习我用的项目都是这个,秋招前期用的也是这个,后面去了现在的公司日常实习才换,当时面字节的时候冷热分离,还有链路追踪基本这两个问到就稳了,冷热分离可以扯 LSM 树、RocksDB、HBase 这三个都可以扯,然后后面实习的时候完成了一个日志数据的优化,那个主要是 MongoDB 数据的优化,到秋招后期面试的时候,日志数据优化的三个方案 CK、HBase + ES + 冷热分离、MongoDB 的优化就都有了,基本只要问到冷热分离,这场面试基本就稳了。
然后当时 5 月还是 6 月的时候,Boss 上面美团测开的时候给了一个机会,当时面试也是通过了,但是可惜学校还是不放,后面我也就没有面试了,安心准备暑假找实习,然后在没有实习的期间,我选择了另外一个方式,就是尝试去整一些开源项目,这里我说的开源项目可以是一些开源社区的项目、开源之夏、自己开源的项目都是可以的,我主要做的是开源社区的项目,这个也是后面别人问的比较多的点,我后面一起在日常答疑那块一起解答。
然后就是等到学校期末考试,学习期末考试之后开始投实习,当时优先投的是深圳的,但是深圳很多岗位都是测试和运维,就连测开都没有,还有一个公司当时甚至直接 KPI 面试,他当时是先发了一套笔试题,然后笔试完成之后就面试了 5 分钟,然后就没有下文了😡,甚至后面这个公司挂了实习生岗位挂了快两个多月才取消,我就知道这是故意的了,然后继续投了接近一个星期,没有下文之后,我就开始投上海、杭州和北京的公司,然后当时很幸运,给我实习公司的 leader 一下子就选中,原本公司是卡 211 甚至最低只要一本的,当时收到面试通知的时候我也是懵的,没想到我 leader 给了机会,后面面试也非常顺利,直接就是问了一点实习的东西还有项目的东西就给过了,没有什么为难的点,这个也是我从春招面试到暑期最容易得一场实习。
之后就是一边实习,一边准备秋招了,不得不说,一边实习一边秋招是真得累,算法、八股、简历这些都得整,只能说完全忙不过来,还有到后面还得整学习毕设,所以可以上岸还是建议早点上岸,不然到后面真得忙死,然后实习主要语言就是 Go 后端,然后 Python、C++、前端都写,这里还是得感谢一下鱼皮哥星球的项目,我是大一就已经跟着鱼皮哥做星球前后端一起的项目了,所以虽然前端一些底层原理可能不是很熟悉,但是组件封装、前后端联调这些基本我都可以整,所以基本第二天就开始干活了,这里实习还是比较轻松的,请假什么的都比较方便,基本都是我下午需要请假,中午吃完饭再申请都没事,我现在实习的这个公司基本都要提前一天去请,而且提前结束也不能。
然后后续就是实习到差不多 10 月份的时候,知道公司没有转正,就开始寻找其他公司的转正实习了,然后后面面了许多公司,就发现今年的公司有一个奇怪的点,就是很多公司都要求提前实习和转正实习,当时面了许多小厂,基本都是要求转正实习,甚至我现在这个实习的公司也是转正实习(后面来了后知道没有机会,给 HR 骗了😭o(╥﹏╥)o),为此我错过了我的 Airpoir 套装啊,当时差点哭死。
不过后面来到我现在实习的公司,是一家物流方面的公司,不过来到这边之后就经常很忙了,当时主要是听了 HR 的实习转正,在这里切记要问一下 HR,是否是转正实习,有无转正 HC,但是 HR 大概率不会告诉你,就记得一定要有保底,不要完全相信 HR 说的话,因为把你招进去,其实就算她们的绩效!!!
📺面试 review
说完实习的过程之后,我简单说一下面试,我春招暑期实习的时候,有面试的不过,主要就腾讯日常,那个一个资产部门的,当时忘记问了,然后就是度小满、美团日常测开,其他都是一些不知名的小厂,春招整体来说并不顺利,只能说前期的准备就不是很好,因为当时还错过了腾讯暑期基地的招聘(那个不卡学历,感兴趣的同学可以冲一下,因为腾讯这两年校招的 HC 并不是很多,主要还是给转正实习的多一些)。
然后主要就是暑假的时候面试,暑假的时候深圳投了很多都没有消息,也让我对深圳有点祛魅了,在深圳一直投一直没有消息,投到后面我也放弃了,就去投了一下上海、杭州的,然后主要就中了两个,一个是 Open AI 旗下产品的子公司,好像是干求职 AI 模型的,另外一个就是上海一个不知名的游戏厂,当时的话我是选择去了那个游戏厂,主要有一定规模了,秋招 title 会大一点,然后这个时候其实我分享一个选择的吧,就是实习的话主要还是看公司 title,因为实习生可以干的事情基本大差不差,有亮点💡的活基本都要自己抢着去做,我实习的时候基本就是可以做的事情,我都会努力做吧。
然后秋招的话面试其实不是很多,就面了几个字节、商汤、月之暗面、联想测开、快手游戏,微软日常实习(二面英语没提前准备,这个有点难受)、希音(Boss 捞),然后基本其他面试都是小的,基本都是转正实习的那种,有一个正式的秋招的 offer,然后一开始拒绝的时候她薪资涨了一点,好像数马是可以 A 的,但是不知道为什么那个网上说不让 A,不过要提前实习的时间确实没办法改,这个和我期末考试和毕业论文开题答辩的时间有点冲突,我就没有去了,后面听别人说那个是数码的 SSP,笑死,应了当时让二哥看简历那个 SSP 的话了 🤣
然后字节就一言难尽了,除了第一次是硬实力确实不够,不过那次给我之后的收获挺大的,自那之后我基本面试只要不是算法 A 不出来,基本都可以应付,月之暗面当时面了三次流程,第三次流程一面当时给我整道树形 DP,当时快一个月没刷算法了,直接 GG,当时第一眼就看出是树形 DP 了,暴力写出来了,但是面试官要求要 DP,我 DP 公式当时知道推不出来就没了。然后字节除了第一次是自身原因,之后面试有一次是到 Offer 审批没通过,然后另外一个调剂到一个卡学历的部门,然后换到抖音电商,然后面了一次之后,就卡流程,也没给你释放,还是等到我后面去脉脉上面投才知道流程卡了,所以我春招选择直接放弃字节核心部门了,就选择一些边缘的部门看一下情况了😭,不然再卡流程,命都不够面的。
快手游戏和联想测开都一样,都是技术面面完,然后 HR 面正常流程,不过联想 HR 有谈薪,联想主要是 offer 审批下不来(八成是学历了),快手游戏是面完直接就挂在那里,不挂你,也不管你,最后直接没了。商汤这个是因为部门整个裁了,然后就一直在池子,希音主要是学历排序挂,当时在牛客上遇到一个面试同个部门的兄弟,然后 HR 说只有一个 HC,那哥们 QS 50,好家伙,也就没了。
总得来说,秋招只能说磕磕绊绊,一直碰壁吧,不过春节的时候,一发入魂免费中了一个传说皮肤,我朋友说拿秋招运气换的,当时其实想说我不要,我想上岸😂,不过希望春招可以顺利吧,秋招真得一直碰壁
⛅日常生活
然后在上面基本就说完实习的寻找过程了,然后主要说一下一边实习一边秋招吧,只能说一边实习,一边准备面试还是挺累的,如果公司有会议室,然后可以请假一会还好,但是如果不能请假,基本就只能请假一天或者半天了。
日常实习的话一般就是早上提前半小时到公司,然后先看看公司文档,这里和一些实习的小伙伴说一下,就是公司如果有📃文档沉淀一定要用笔记记下来,我现在实习的组,沉淀全在注释里,那个没办法,不过我上海实习的那家游戏公司是有对应的文档分组的,然后好的一些文档,比如最佳实践、期刊之类是由 + 💰 的,就一定要收藏或者自己记录下来📓,如果有朋友去大厂的话,记得疯狂收集,这个你之后如果跳槽写简历,发现没有产出的话,你就可以整合一下包到你的简历里面,这个我之前刚刚开始的时候没有注意,直到后面离开了才发现,不过在记录到你的文档的时候,如果要分享的话,记得脱敏一些敏感信息,或者就是直接不分享,自己记在笔记里。
然后周末的话,我基本是属于夜猫子 + 宅家类型,就是如果没人叫我出去的话,就是在家里研究八股或者敲点代码玩玩,可以发现基本这一年下来,我学习的项目比我前面三年学习的还有多,这个我在下面单独总结一下,今年学的项目有点多,这里就不过多赘述了。
🚀技术提升与项目积累
这一年整的技术积累主要体现在项目上,有点多,我按照时间线,然后还有我目前在做的项目一起说一下:
- 神领物流(小程序端 + 鸿蒙端 + 后端):这个主要是我当时为了学习鸿蒙的语法,然后去考一个开发者证书顺便学习的项目,我主要把鸿蒙端和后端的代码完整过了一遍,代码的话我是基本按照章节的方式去整,就我其实不太喜欢一遍敲代码,一边看视频,我喜欢就是将对应的需求记录下来,然后再一个章节去敲,然后遇到不会的东西,再去看视频,这样的印象会比较深刻一点,然后神领物流的调度算法那块还是有点难度的,不过吃透之后确实还可以,然后其他的就是一些简单的 CRUD 了,没有那么难
- Blossom 网关 + 小傅哥网关:这两个网关我是一起学的,不过这两个网关的性质不太相同,Blossom 主要是流量网关,小傅哥的主要是 API 网关,这两个的方向不太相同,流量网关偏向于流量调用,比如说鉴权,灰度、限流、负载均衡,主要作用是为了保护服务,然后 API 网关的话,主要偏向于服务调用相关的,一般这种会有对应的业务,所以在企业里面也有对应的业务网关,像我之前待的那个游戏公司,不同的游戏服务就有不同的业务网关,比如说登录有专门的 API 网关,然后内部服务比如说充值有其他的一些网关,这个主要看服务的差异来进行决定
- **小傅哥抽奖(主要看抽奖算法部分):**这个主要我之前实习的公司有对应的抽奖算法,我发现他的抽奖算法还没有小傅哥那个抽象设计的好,我就想着直接套小傅哥的抽奖算法了,在这里就是简单说一个点,就是你在星球学习的项目,其实从一定程度上来说是可以和你的实习经历结合起来的,像我之前做的一个前端需求,其用到一个配置文件配置,类似 Nacos 那样的配置文件读取,我就是利用率鱼皮哥 OJ 前端的代码块实现的,这里我下面在疑问解答那里会专门说一下,就是如何把实习经历和项目经历结合起来,这个可以说是一门学问。
- 小傅哥组件:分库分表路由组件 + 支付组件:**这两个是当时写学习课程设计代码的时候用到的,就顺便学习了一下,感觉这两个组件还是挺 OK 的,特别是小傅哥的分库分表路由组件,基于 HashMap 算法 + Mybatis 拦截器 + ThreadLocal,不过后面 ThreadLocal 我想到了没办法解决父子线程传递的问题,我换成了阿里云的 TTL(Mark 住了,八股 + 1,简历亮点💡 + 1)
- 面试鸭(主要在动态黑白名单、JD-HotKey 实现高性能缓存):从这里开始我开始学习一些项目,我就很少会去看对应的视频教程了,我一般喜欢直接上手去看代码,然后自己去实现类似的逻辑,然后看看可以往实习经历上去靠可以不,就是我项目从秋招开始一直没换过,基本上有新项目,我就是结合对应的项目经历加上我做的业务,然后往简历上去靠。
- SingleFlight 缓存击穿组件:这个主要是我在做一个表单填写的需求做的,当时要开放预约报名,然后我负责解决缓存击穿的问题,然后我就基于 Go 原生的 SingleFLight + Redis 分布式缓存实现了缓存击穿组件改造。
- TairZset 封装:这个主要是阿里云整的,也是实习的需求,阿里云魔改的 Redis 中 zset 支持多维度排行榜的实现,但是其他的 Redis 是不支持的,然后我当时有一个需求,要实习一个多维度的排行榜,但是阿里云 Redis 太贵了,所以我们就基于原生的 Redis 哈希结构 + Zset 的结构实现一个多维度的排行榜,然后结合 ES 的一个算法就可以实现亿级时间精度的搜索计算,然后再时候时间轮 + 哈希桶的方式实现 Redis 排行榜大 Key 的解决。
- Redis Hot Key-Golang 版本简易实现:这个主要是为了解决 JD-Hot Key Golang 版本没有的问题,当时是为了字节青训营的项目,为了实现一个类似 hotkey 的统计组件,结合面试鸭的动态黑白名单实现简单的 IP 以及流量风控,还有实现高性能的动态换成,当时就去解析 Redis 对应的 AOP 日志,统计对应 key 的出现频率,最后实现对应的热 Key 统计,然后为了实现规则配置化,这里使用的配置中心是 Nacos,然后读取对应的热 Key 配置统计规则实现热 Key 统计
- **冰河 RPC(SPI 扩展 Java 动态代理):**这个主要是实习的需求,要实现一个对应的 RPC 动态代理扩展,然后之前看 RPC 的时候有看到过,这里推荐一下冰河的 RPC,整体来说 100 多章还是不错的,不过要看之前建议先看一下 yupi 哥的 RPC ,鱼皮哥的适合入门,你要深入研究可以看一下冰河的,冰河哥的 RPC 生产可用这个绝对不是吹的,我毕业设计也是实现这个,看完可以学到很多东西。
- 马哥短链接系统: 这个主要是为了帮一个同学改简历的时候看的,主要核心在于短链接的生成算法,谷歌的 mumuHash,然后短链接监控,短链接管理,异步处理等等,整体来说马哥的短链接系统还是 OK 的,感兴趣的同学直接去看就可以了,整体来说较充分了。
- 12306(主要在于 12306 的秒杀库存扣减 + 基因法):这个主要当时在做字节青训营项目的时候,12306 是我接触的比较简单的秒杀场景的项目,当时主要借鉴 12306,然后来实现抖音电商的库存扣减,还有一个分库分表实现多维度查询,主要是雪花算法+主键冗余(简历亮点💡 + 1,这个可以自己去实现一下)
- 冰河秒杀(主要看秒杀风控): 这里主要我在过年前接了一个风控组件开发的需求,所以在学习一些风控相关的东西,主要是流控 + 规则(责任链 + 规则树),这个主要是我结合之前 Blossom 网关想到的,然后风控一般 QPS、TPS、RT 这些要求比较高,所以一般会采用单元化部署,我的想法就是基于大数据组件,开发一个流式风控引擎,然后涉及到冷热分离,我的想法是 HBase,然后日志的话计划用 CK 实现,因为我目前已经有了 MongoDB、ES 两套日志的优化经验了,加上 CK 的话基本就三套方案了,然后如果春招前可以整出来,就直接做春招的简历项目。
然后以上就是这一年主要的项目,然后今天的技术提升主要是八股文,比如 Redis,今年在 4-6 月的时候简单看了一下 Redis 的源码,然后整理了一些对应的八股,然后技术栈的话冷热分离主要看了一下 HBase、RocksDB、Clickhouse、TIdb 这几个底层的数据结构 LSM 树,然后看的时候顺便看了一个 PgSQL 底层的 B-link 树,其和 B+ 树主要的区别在于其在插入方面加入了优化,即 patch 和 lock 方面有了一些优化,所以 PgSQL 的写入性能会更加好一点,但是 pgSQL 带来的代价就是其 MVCC 的实现会提高一点(当时在面试一些 Web 3 的公司,就简单学习用 Rust 实现链表,然后提升一点难度,简单实现一个简单版本的 MVCC),然后技术栈基本就这些。
线上问题排查由于我现在实习主要负责故障诊断引擎的开发,OOM、FullGC、数据倾斜这些比较常见,我感觉我现在实习积累的线上问题排查,至少够我社招三年内的面试了,所以基本问题不是很大,就是积累就可以了🤣。
还有一个就是从今年开始,我就开始养成了一个习惯,就是一天至少看一篇技术文章,比如说美团技术、哈啰技术、小红书技术、阿里技术、得物技术等等,这个主要看的就后端和大模型方向,B 站技术还有大数据方向,不过今年因为秋招的缘故,输出有点少了,命令可以加大一些输出,哈哈哈哈。
然后以上就是今年的技术积累,主要就是实习和写项目中整的比较多,这里主要就是我在上海实习的时候 + 1教我的,当时阿里云提供的服务是没有对应链路追踪实现的,然后我 +1 沟通了很久,阿里云那边的架构就是这个说很久之前就在考虑范围内了,但是没有做,当时我 +1 就一直吐槽阿里云,然后自己实现了一个服务的链路追踪,然后他当时还和我说了一句话,就是印象有点深刻,如果看一个人不爽,你最直接的方式不是抱怨,而是选择去干掉他,当时差点笑死,不过也是他教会了我很多东西,就如果你一些东西,依靠第三方服务的话,如果第三方服务很烂,在你可以解决的成本里面,你就可以去解决他,这个也是我现在的观念,如果一些代码问题没办法完成自己的需求,最直接的方式就是自己动手用代码去解决。
👻疑问解答
今年和许多的朋友交流,然后也帮许多朋友看了一下简历,就有遇到一些问题,我在这里一并解答一下吧,然后有其他问题可以评论区一起问。我看到会直接解答。
1. 开源经历怎么整?
这个应该是很多看过我兄弟之后,问得最多的点,开源项目是在你没有实习的情况下,最加分的情况,一般分两种,自己开源和社区开源,自己开源的项目,像小红书的校园招聘,其非常看重 Github 的 star 数,不过有的同学说自己开源的项目点赞很少,其实也没有很大的关系,主要就是有开源的经历就可以了,然后这里推荐一下可以增加自己开源 star 的方式,一个方式是参加字节青训营的项目,然后去分享你的项目,或者字节青训营的项目直接去比赛,然后取得名次后去开源,这个是增加开源一个方式,或者发在编程导航或者 CSDN 一些平台,通过宣传来提高自己的 star 数目。
不过很多小伙伴比较感兴趣的应该还是开源社区的项目,这里简单说一下,大家可以去看一下 Dubbo、CloudWeGo、Apche、Dubbo-Go 一些社区,就去联系一下社区的 Comitee,问一下有哪些需求自己可以做的或者加入的,想要加入或者贡献,一般他们有对应的周会,你只要表达你的想法就可以了,这个方式是比较简单的,因为如果有人带的话,你可以更快地熟悉这个项目,然后 Cloudwego 社区还是比较友好的,因为是字节云旗下的一个社区,所以如果想冲字节的同学,可以优先看一下这个。
另外一个就是直接找一下社区 issues,然后自己去修改,然后改多了,然后你只要做了比较核心的需求,基本就可以简历上面写了。这个比较直接,我当时在写前端的时候,发现有一个组件不太 OK,然后有一些 Bug,就直接去提 issues 然后顺便完成了一个 feature,整体来说还是可以的。

最后一个方式是一些开源活动,比如谷歌的 GSoc、中国开源之夏,腾讯犀牛鸟开源计划等,然后谷歌的 GSoc 如果完成可以的话,甚至可以直接去谷歌实习,然后我列举的这些活动都是有报酬的,还有一些 AWS 开源活动还直接提供 AWS 的实习名额,然后我直接还看到一个双非的前端开源大佬 gronk 去微软实习,所以参与开源不仅可以简历加分,在你没有实习的时候,也是和面试官聊下去的关键,不过有实习的兄弟可以更多把精力放在实习上,或者想给自己简历增加亮点💡的时候可以去整。

2. 八股文怎么背?
这个应该是问得第二个比较多的问题,八股一开始我背的方式其实差不多,就是直接看,然后记录,不过自从字节第一次面试失败之后,我就开始琢磨一个点,要是面试官一直问我八股,我要是回答得中规中矩,那不就寄了,所以自那之后我背八股就开始结合我的项目,实习去整,比如说我上面说的阿里云 TTL 解决 ThreadLocal 父子线程传递问题,这个就是一个亮点💡,面试官问到 ThreadLocal,你可以说完 ThreadLocal 之后,继续说一下 TTL 的,但是有的面试官可能不喜欢你扩展,那么你就直接简单说一下就可以了,一笔带过,不要说面试官不喜欢还一直说,这种面试其实没有那么加分。
就八股的话可以你自己整理一个你的笔记,然后一直看一直整理,因为面试的本质就是你提前准备,你准备得越充分,面试通过的概率就越大,这个时候有个兄弟会说了,面试官喜欢问场景题,那怎么解决,那就要你的八股活学活用了,就背八股的时候最好带着自己的思考去背,不要为了背而背,因为面试的本质就是一场交流,在问到场景题的时候,你可以阐述你的观点,因为方案这东西不唯一,有好有坏,如果你的方案不可以,面试官会提出来,然后你顺着他的思路去优化你的方案,最终给出一个满意的答案就可以了。
3. 项目烂大街怎么办?
这个应该是问的比较多的,因为很多同学都是在校的同学,很少有自己的项目,然后项目很多就是跟着 up 主做的,比如鱼皮、马哥、小傅哥等,所以简历上的写法基本都大差不差,为了避免烂大街,所以鱼皮哥在讲自己的项目的时候,其实有很多时候提出了扩展点,就去扩展,但是扩展点又有个问题,就是很多人项目都是把扩展点整了,这个时候简历的描述就又重复了,怎么整?
这个时候最简单的一个方法就是融合其他项目的亮点💡,然后添加到自己的项目里,让自己的项目不再是一个项目,而是多个项目的融合,我这样说吧,鱼皮哥星球的那么多个项目,我感觉除了用户中心以外,通用性最强的项目就是 BI 项目,也是我看了很多简历最多的项目,因为这个项目逻辑简单,而且结合大模型,所以面试的时候遇到的问题基本是最好解决的,但是你感觉简单了,那么其他人也肯定感觉学习起来简单,那么写的人自然而然就多了,那么有什么方法可以解决呢?那有的,包有的,兄弟,那就是和其他项目结合起来,比如 API 开放平台,你是否可以将 BI 的功能进行接入后台管理页面,通过大模型去分析用户调用情况的数据,然后针对调用频率的 API,采用分组限流的方式去优化调用,这里分组限流,主要是针对不同的情况,因为你有的 API 调用的比较多,你就可以添加限流参数,然后有的比较少,你就减少调用的参数,这样你不就可以实现不同 API 的限流效果不同了,或者你可以和 OJ 项目结合,分析用户的做题情况,像以下这个雷达图,用去统计用户的做题数据,然后这里为了避免用户查看到其他用户的数据,即出现水平越权的情况,你可以校验一下用户的信息,一般从 session 中拿用户 id 就可以了,然后因为这种数据对于实时性的要求并不是很高,你不是就可以异步的方式进行展示,然后每隔一段时间去进行一次统计即可,然后针对用户的刷题给出对应的结论,甚至你不用 BI 分析,你直接利用大模型也是可以的。
像下面这个,其就是 OJ 加上模型的结合,通过利用大模型帮忙刷题,充当你的刷题助手,这个其实并不难想到的亮点💡,只是很多同学没有去进行扩展而已。

还有就是面试鸭那里教的刷题热力图,你就可以去进行展示,用到对应的 OJ 项目那里,还有一个我之前面试遇到的反向压力的探讨,是否可以一起用到 OJ 那里呢,这就是一个点了。

那有的同学说了,我只想用 BI 项目怎么办,那还是有的,你可以在 BI 项目上接入支付的功能,这里可以使用小傅哥的支付组件,也可以找到 IJPay 聚合支付组件,小傅哥那个好像用点钱就可以解决,然后内网穿透就可以了,这个时候有个问题了,支付问题有什么亮点💡呢?那包有的,当你支持多种支付即微信、支付宝、银行卡等多渠道支付的时候就有了第一个问题,幂等问题的解决,比如说你在微信支付了,但是一直在转圈圈,你以为支付失败了,那么你就换支付宝支付,但是支付成功了,这个时候由于网络原因,微信支付的回调比较慢到,这个时候幂等问题如何解决,这个时候就涉及到两个问题,第三方不可信以及幂等的保证,第三方不可信最直接的方式就是自己做记录,优先按照自己的记录为保证,这个也是后面实现幂等的关键所在,然后如果你支付宝支付成功了,回调的时候只需要检查一下是否前面微信支付已经成功了,或者已经生成了对应的支付流水号就可以了,这样问题就解决了。
有人说支付太难了,有无更简单的写法?有的,兄弟,有的,这个时候就可以从文件上传入手,即文件太大了,怎么解决上传问题,很多同学说我第一办法就是限制文件大小就可以了,但是如果是第三方用了你 BI 平台作为企业内部项目,这个时候你限制文件上传的大小,那不就噶了,所以有无解决方法,答案是分块上传以及断点续传,就是还要限制文件上传的大小,但是可以加大上传的大小,比如 10 MB 升级到 100 MB 不就可以了,这个时候再进行文件大小的限制,然后继续使用分块上传和断点续传的方案不就可以了。
有人说上面这个太简单了,有没有其他亮点💡,那一定是有的,首先就是实现多维度变量分析,因为 BI 使用多个列数据对比分析,查看多个因变量,这个时候有没有解决方案,一定是有的,那就 MongoDB,因为 MongoDB 支持文档存储,你拿 MongoDB 去存你 AI 生成的代码,然后通过调用 MongoDB 的 API 参数,不就可以实现数据的多维度分析了,有人说这个就是调 API,没难度,那还是有的,鱼皮哥直播的时候不是说可以针对列元素过多的情况,去使用分库分表吗?这个也就是一个扩展,然后分库分表键的选择,你要实现多维度查询,那就直接基因法就可以了,这样你简历亮点💡就又 + 1了,然后你针对那个图例太多怎么办?是不是可以采用数据的冷热分离,这个时候引入 HBase,针对图例数据按照时间分离存储,这样不就可以提高和写入的效率了吗,亮点💡就又双叒 +1 了。
所以到这里,基本项目烂大街的说法基本就可以打破了,然后你换一下描述,换个说法,那不就是又一个说法的新项目了吗?所以没有烂大街的项目,既然这个项目能实现,那就有他的亮点,然后平时在看一些 APP 的时候,就可以多借鉴一下他们的亮点,这里我就又想到了一个亮点,比如说你在做博客项目的时候,是否可以引入 AGI 实现评论的风控,然后我这篇文章废话有点多了,是否可以使用大模型帮我总结一下,这样博客项目的亮点不就 +1 了,然后博客项目换个皮,是不是就可以变成面试鸭了?那不就变成了鱼皮哥的商业项目了吗?哈哈哈哈,说得太多了,不废话了。
4. 训练营有没有必要加?
这个是一些朋友问我的,问的人不多,但是我简单表达一下我的观点吧,就是训练营有很多,然后很多训练营的价格也很高,这里每个人的观点可能不一样,我简单说一下我的观点吧,其实看你的自制力,因为训练营只是一种辅助你的方式,主要还是看你自己,你可以看你的需求吧,而且训练营很多质量有差距,有的训练营有一丢丢水。里就不过多进行赘述了,就是加训练营,可以首先看一下牛客上的描述,不要过分相信他人的说法,或者找一些评价吧,就加训练营建议谨慎一点,如果一定要加的话,我建议加一些知识星球,这里我推荐一下质量比较高的星球吧,然后大家感兴趣的可以了解一下,首先声明,我不是托,哈哈哈哈,主要加的星球多了,所以看的比较多,然后绝对客观,没有掺杂想法,我这里主要推荐几个:
- 码农会所:这个是小傅哥的星球,也是我绝对强推的星球,小傅哥堪比生产队的驴,大年初三,我还在睡觉,他就开始更新项目了,而且项目质量绝对有保障,分库分表路由组件、聚合支付组件、小型监控组件等等,还有一个很强的网关项目,绝对质量可以,而且有一些训练营一年推出的项目不到一个,小傅哥一年推出两三个项目,所以基本差距可以看出来。
- 冰河技术&冰河指南: 这个是冰河哥的星球,比较硬核,不建议初学者加入,适合一些社招的人群,项目不多,但是更新的深度绝对可以,像 RPC 目录,可以去看一下冰河老师的博客,绝对硬核,然后这个更是卷王,我记得大年初二我还在拜年,这个已经在 B 站更新 RPC 的视频了,比我优秀的人还卷,我有什么理由不卷😭‼️
- 编程导航: 我加入的第一个星球,可以说是白月光星球,可以说以前绝对每个视频直播都看完,可惜我现在年老了,已经不行了,只能看一些残羹生菜,所以一般都是挑亮点看,比如 Disruptor、DDD、热点黑名单,感觉小伙伴可以挑一些亮点,写到自己的简历里,或者和其他项目一起融合,鱼皮哥的项目绝对适合零基础的同学,可以说鱼皮哥做项目的思路,绝对用到自己写代码没有问题,实习写代码绝对足够。
- 拿个offer-开源&项目实战: 这个是马哥的星球,项目 12306、牛券、短链接这几个都不错,而且和鱼皮哥一样都是从 0 到 1 开始敲,然后我开始接触开源项目并参与开源贡献,而且马哥是 Apache 分库分表开源项目的贡献者,如果想要接触开源,找马哥绝对可以,然后项目亮点和鱼皮哥一样,基本通用的解决思路,比如分库分表基因法、秒杀库存扣减等等,基本思路通用。
然后还有许多优秀的星球,比如开发者内功训练营(深入学习计网和 OS 可以加入)、JavaGuide、二哥等,都是非常不错的,然后训练营水有点深,加入需谨慎!!!
✨目标展望
新的一年目标其实比较简单,主要如下:
- 工作方面:找到一个满意的 Offer 吧,想上岸了😭
- 技术学习:飞哥星球内存管理、网络管理、CPU 管理过完、ES 深入学习、然后 RocketMQ 和 Kafka 源码
- 项目方面:继续积累项目,为社招做准备(目前春招简历项目其中一个打算社招用)
- 开源:参与更多的开源项目,明年参加一下原子开放、阿里大数据天池。
- 积累: 每天 leetcode 每日一题,然后一天 3 篇技术博客,新的一年更近一步
- 生活:注意身体作息,在这里劝诫广大朋友,注意身体,我已经年纪轻轻就神经衰弱了,所以还请身体为重,注意身体。
然后目标我与 coding 的十年之约,第二年,目标启航!!!
📚年度记录
最后再附上我的年度记录,记录一下我在编程导航的一年吧,主要是上半年在星球说得会比较多一点,后面开始实习和秋招就少了很多了,新一年的目标就是保证自己持续输出吧,感觉今年输出还是有点少了,继续加油!!!
然后有问题的同学可以评论区提问,看到了会一一解答的,然后废话可能有点多, ( * /ω\* )。

