从看不懂到写得动,一个实习生在供应链系统里的硬核蜕变
又是我,分享实习 + 干货时刻,期不期待
是的又是我,我是陈少荣,又是分享最近的实习情况,还有一些心得和干货。
一个多月的时间,让我成长的飞快,再次介绍一下有的鱼友不清楚什么情况,我做供应链的wms系统。
初战任务:一个“看似简单”的日期查询
接到的第一个任务就是交易流水下添加一个按日期的查询,我个人感觉蛮简单很快写完,后面和导师和供应链的leader一起codereview的时候就让我改,添加需求,要求按日期也要包含实时数据和存量数据和包含实时存量数据的查询,还要实时的库存数据。
实战升级:查询 + 实时库存 + 存量库存 = 大爆炸!
我tm什么东西?实时库存从哪来?从job来,ok改job,job怎么改,问题来了job怎么改啊,我靠我怎么知道怎么改,那个job代码我都还没搞懂啊,没搞懂什么到情况,就是业务和代码逻辑我都不知道,就是只有大概的思考就是定时去跑一个任务,把这个表的数据插入另外一张表中,然后就花时间去理解Job代码逻辑和业务场景。
Job 改造之路:多线程、性能优化、代码艺术让我“飞起来”
我嘞个,真的是学的我飞起来,这代码多线程,性能,这代码艺术成分很高啊,有多高?三四楼那么高,终于花了一天半看懂,这一天半不是只看这个代码还做了其他的基本的bug修改和前端展示的一些页面,第二天下午才写了个大概,第三天才把job的功能修改,测试,完成,然后去修改这个查询的逻辑,按日期查询包含实时数据、存量数据后端前端全部完成,codereview,提测,好哎没有bug,
新任务来袭:效期预警系统的挑战
然后就接手新的业务,最近在搞效期检查,就是预警商品快过期了,然后发起警报,很复杂的,wms重要的几个维度,什么批次、库位、sku、入库、出库,后面可能还要接手其他的供应链的系统,管理大仓的,配送的,审批流,财务.......,一个月下来我对于这个wms也是越来越熟悉了,对于这个公司的体系也是慢慢的有所了解,更重要的是知道了实际的业务,我接手的这个系统只是众多系统中的一块,业务也确实比较复杂,具体的就不说了,这些都是我和别人拉开差距的底牌,但是也是有干货送给大家的,
干货来了:实习生如何快速熟悉项目?
作为实习生怎么快速的了解项目? 个人认为去看技术栈没必要,应为对于实习生来说,不打杂也就很好了,让你写功能不错了,不要想什么去完成什么并发,性能优化,那都是后事,导师给你的任务包含你才有机会去碰,所以我很感谢京东老哥带我飞,真的是俺贵人啊,
那么该怎么做呢?
- 先调试已有功能
- 去 Debug 类似功能,看数据是怎么流转的。
- 抠 SQL ——SQL 是一切的根基 复制关键 SQL,分析: FROM 哪张表? INNER JOIN 了哪些表?LEFT JOIN 的又是哪些? 为什么要这么连?这反映的是业务关系!
这些做了会怎么样
1.这会让你知道你在干什么,对那张表操作, 2.表中的字段其实就是业务,去了解字段的含义,也思考这个简单的业务是要哪些字段数据, 3.有这些了你就可以去看代码是在manager vo->dto 然后拿dto去service调sql。
技术笔记建议:记录才是你最大的资产
知道了怎么个事之后就可以去写了,这个时候其实完成导师的任务是其一,其二是什么?就是记录代码,我特别喜欢写文档,包括计划,还有记录心得,这个好习惯让我在实习的时候被我的导师夸了,每次codereview的时候我就打开我记录然后还有代码讲,到底记录什么呢,记录表的含义这张表是什么表,这些表和表之间的关系,记录全局可以使用的方法,要鉴权的数据这个鉴权是哪些枚举,还有就是要多问问题,先自己想一遍再去和导师沟通,说我的思考是不是有什么偏差,不至于啥也没想就去问,个人认为可以去画一下公司的技术架构图然后在根据自己负责的地方去思考这个业务流程,所以我在上一篇文章为什么说基础很重要了。 (有次和供应链三巨头codereview的时候,这三巨头都是京东出来的,在聊到底层sql的时候我都还没反应过来在干什么,他们讨论到可以只用inner join 不需要left join ,这些都是基操真的要很牢固啊,不然后面什么高并发,性能优化,线程安全,怎么学的会呢?)
如何成长
这个问题也是我现在绞劲脑汁的问题,这个因人而异但是我觉得也是有一些相同的内容,首先就是要去熟悉项目,记录好的代码思想,多问这个为什么这么做,要把学习到的只是用上,这是实习的成长。个人的成长,我说说我的思考,我拿我个人为例,思考自己差什么,项目吗?还是技术,还是业务,个人看来我现在的阶段应该再去把基础狠狠的打牢,要做到肌肉记忆,项目有编程导航和实习,牛逼的框架技术公司项目也能满足,公司中间件用的kafka我也看了代码,真服了看不懂,但是学习项目我要换一种思考方式去学习,至于八股文、算法、jvm、juc是要平时的积累,我不知道我卷不卷,但是这些思考和总结已经是深入骨髓的东西了,所以大家要做到对自己复盘,对自己近期复盘,对自己的表现复盘,所以接下来的学习我要在完成工作的时候去打牢基础,然后在工作之余去积累项目,准备秋招的项目、八股和算法、要多记录东西到秋招时候就有东西讲。
我的导师,我的贵人
我提一嘴我感觉我的导师巨好,很负责,也很有耐心,不是把你同事看就是把你当自己的徒弟,讲解的也超级清晰循循渐进的带你思考,虽然会压力,但是这压力是对我成长的鞭策,他也会问你一些关键的问题看你懂没懂,然后我就会带着我的思考和他交流,然后给我指正,我真的哭死,满分真的满分!
大家乐意看我的总结吗,感觉在自说自话,有同频的鱼友可以和我多交流啊
