第一次实习总结
好久不见,甚是想念!真是光阴似箭,岁月如梭,两个月的时间就这样过去了。这两个月干的最大的一件事就是有幸进入了一家实习,消除了我对企业的一些恐惧与幻想,也收获了一些东西。接下来就来说说我的收获与心得。
首先我先来讲讲,我入职这家公司的大致情况,我入职的这家公司是国内汽车电子领域的龙头,听着很厉害吧,其实也的确很厉害,但是我面的的后端岗,所以我的这个部门基本上都是在为支持算法而服务的,比如建立内部的算法数据管理平台呀等等。介绍我所在的部门的一些情况,说说我这两个月的工作内容,基本上是在做一些增删改查,我的第一个任务是对接本地大模型,基于企业内部的一个技术方案管理平台,集成一个AI问答的功能,核心就是RAG。这里我不得不感谢一些我的老大了,他让我独立设计这个模块。我负责的任务主要就是针对会话消息的管理,流式数据的处理,以及一些技术方案的索引。这部分的内容不是我自己想的,是我抄的,抄的一个开源项目的设计思路。这里是我学到的第一个东西,先借鉴好的东西,而不是自己拍脑袋想,先模仿再超越,当然这里也得感谢和我对接大模型的那位算法大哥。由于这个功能是需要集成到原有的技术方案管理平台中的,所以我不得不看看这个方案管理平台使用的技术栈有哪些,很好!大部分我都会,唯有JPA,这就是我学到的第二个东西,阅读官方文档,英文文档也没那么难,借助一些工具也能读下来,看完官方文档的核心内容,再参照原有的代码,我基本上就可以上手写JPA了。这和我之前的学习方式完全不同,面对一个新技术,我是恐惧的,认为只有体系化的学习,才能掌握它,但是现在看来,只需要掌握最核心的部分,快速实践,不会的东西再慢慢补,这种方式才是常态。然后后续的三周时间,就上限了这个模块。在这几周的实习中,消除了我对企业的一些恐惧与幻想,比如企业中的系统,大部分还是CRUD,没有什么非常高深的技术。当然,最让我啊哈的时刻,应该是当我知道有git stash
这个指令的时候,简单来说就是我可以将我写的代码先暂存起来,然后就可以安全的切分支了。基本上前一个月的工作内容就在集成这个AI问答系统上。除了上面提到的这些东西,在有限的环境下如何高效开发,这里有限的环境指的当然是,没有IDEA付费版的支持,不能使用API管理工具,等等。当然还学习到了单元测试的重要性,以至于我现在开始学习和实践TDD了。
接下来的一个月时间,主要是两个任务,学习微服务相关的知识,以及完成一个数据中心项目的重构。针对微服务相关知识的学习,我主要是看的凤凰架构这本书。而这个数据中心的项目就是一个支持算法的工具类项目,主要功能就是管理算法节点,为算法节点提供数据知识,结合LLM的能力实现数据的快速和有效的检索以及推送,从而实现从数据的采集到数据的使用,再到算法落地的一个闭环。这部分让我学习学到了一个新的学习方法。这次重构有性能要求,所以我们的老大选择用GO去重写这个项目。而对于GO,我之前学过,但是都忘的差不多了,但是老大说我们只有一周的学习机会,剩下的两周要开发,最后一周要测试上线。在这一周的学习中,如果按照我之前的学习方式,也就是看视频的话,很难完成后面的开发任务,因为目前市面上的Go技术视频过于老旧(指免费的),所以我们老大给我们推荐了一种新的学习方式,在面对一个对于自己而言全新的技术体系的时候,可以借鉴这个领域的大佬给出的技术路线图,按图索骥的去学习,一般大佬们都会推荐他们认为好的资料。然后掌握先掌握核心的内容,就可以了。这里我们的老大给我们推荐了一个网站,然后后面的两周我们就开始在哼哧哼哧写代码了。到我实习结束,离职的时候,这个项目的大流程全部测试完成,基本符合老板的要求。
谈谈我的感受,这次实习,正好印证了那句话,世界就是一个巨大的草台班子,没有那么可怕。也正如冬泳怪鸽说的那样,消除恐惧最好的办法就是面对恐惧。再来说说我为什么选择结束实习,不是干的很好,也成长了很多吗?因为这家公司是汽车电子领域,基本上所有的后端服务都是围绕企业内部,或者开发给算法提供支持的工具。虽然我现在还没想好要找什么样的工作,但至少不会是汽车电子领域,回到学校也该刷刷算法题,背背八股文,看看互联网大厂的笔试题。毕竟还年轻,还有点梦想。