Appearance
周小白
电话: 199******** 出生年月: 1999. 02
邮箱:1871229316@qq.com 微信:zhz1992435(有事可以微信) 学历:本科 求职意向:Java开发工程师
专业技能
- 接近 2 年的Java开发经验,半年的go迁移Java经验
- 熟悉Java基础,集合,并熟悉多线程的开发,熟悉JVM原理,具备一定的线上调优经验
- 熟悉Spring,SpringMVC,Mybatis,阅读过部分Spring源码
- 熟悉SpringBoot,SpringCloudAlibaba,SpringCloudNetifix体系,阅读过SpringBoot,Nacos,Feign部分核心源码与设计,部分框架有二次开发的能力
- 熟悉消息队列(Kafka,RocketMQ)的原理与设计
- 熟悉分库分表ShardingSphere,具有真实生产的数据迁移经验
- 熟悉分布式缓存中间件Redis,对其的核心数据结构,部署架构,高并发问题解决方案有一定的积累
- 熟悉ElasticSearch的使用,对其核心的原理有一定的了解
- 熟悉MySQL数据库调优,索引原理等,日志原理等,并且有出过一篇专栏
- 了解Linux,K 8 s,Docker,Jekins,GitLab
- 熟悉常用设计模式,并运用于实践工作中
- 了解VUE,GO
- 了解计算机网络,对TCP协议,滑动窗口原理等有一定了解
- 技术视野开阔,学习能力好,对技术保持敏感度,并且喜欢落地成文档
工作经历
上海畅指网络科技有限公司广州分公司 移动互联网 2023.03-至今 Java开发工程师 服务器一组(2023.03-2023.06) 中台组(2023.06-至今) 广州
- 组内CodeReview
- 负责开放平台系统的从0到1的开发与设计
- 负责日常开发迭代,并负责核心代码模块的设计与落地
- 负责Cat监控的搭建与改造,结合现有公司业务二开
- 基础组件的开发(email,redis,mysql,sms等)
广州易工品科技有限公司(三一重工旗下)
互联网工业电商 2022.04 - 2023.02 Java初中级开发工程师 研发三部(财务资金组) 广州
- 负责带新人的培养
- CodeReview,对现有代码进行优化
- 负责日常开发迭代,并负责核心代码模块的设计与落地
- 负责财务资金项目的平台资金,支付,商家账单,母子账号,供应商资金等的模块的开发与维护
- 协助领导进行团队建设,规范流程等,并落地部门人员的技术分享等
- 荣获 2022 年优秀团队奖
北京阿帕科蓝科技有限公司(松果出行) 互联网出行 2021. 06 - 2022. 04 后端开发工程师 城市运营开发部(运力供给组) 北京
- 负责部分项目架构设计,并负责核心代码模块的设计与落地
- 维修保养,换电等系统的开发(公司GMV项目)
- Codereview,对现有代码进行优化
- 荣获公司 2021 年度GMV子项目优秀项目纪念奖
项目经历 项目一:
项目三:FMS,FUND,PAY(财务资金项目) 公司:广州易工品科技有限公司(三一重工旗下)
项目介绍
- 本项目主要是中台项目,主要是提供给产品,财务人员,OMS订单人员等的一个支付线,主要是对财务的商家账单,客户资金,出纳收款,寄售管理,对账管理,客户账单,客户请款,出纳付款,客商发票,客户补偿,平台资金结算,客户交易,存货成本,活动结算(金币,积分,红包),支付等的管理,提高财务对资金的管理,对于公司的财务对账有极大的帮助,与及客户,商家的资金的安全管理,和对C端的订单组 的支付功能的实现。
技术架构
- SpringCloudAlibaba体系(Nacos,Sentinel),Feign,SpringBoot,MybatisPlus,Redis,XXL-Job,MySQL等
重难点
- 流程复杂
- 整理开发上线文档,梳理每一个流程的细节,并产出文档,供团队使用
- 负责整理团队建设相关文档,并落地技术分享等
- 代码扩展性差
- 运行策略模式,工厂方法,责任链等设计模式重构自己负责的领域
- 自己整合出一个导入导出的组件复用
- 自己整合出一个Redis的starter组件复用
- SQL运行慢
- 通过explain分析,将非主键索引的sql转成主键索引sql
- 通过tuning-primer.sh工具优化
个人职责
- 代码CodeReview
- 有相关的DDD开发经验,并落地于代码中
- 负责部分核心功能的设计,开发,工时评估,技术选型,UML画图,跨部门沟通等
- 负责部分核心领域的开发与维护,比如商家账单,供应商资金,平台资金,补发单,部分客户交易相关等领域
- 为了解决平台资金与内部业务的代码耦合,采用事件监听机制解耦,跨系统的采用消息机制,明确在线支付的生命周期,并精细化商家账单中不同店铺类型的金额账户划分,为后面金蝶记账打基础,提高财务人员的人效 30 %以上
- 利用策略模式+工厂方法解耦不同店铺类型,不同店铺业务类型的商家账单转账逻辑
- 利用责任链模式处理不同节点的日志处理
- 利用MAT+JProfile排查JVM溢出问题(Excel导出溢出)
- 利用分片思想+多线程优化项目中大数据插入处理,CompleteFuture并行处理三方调用
项目收益
- 服务稳定性,可用性:通过熔断,重试等机制,提高业务体验,提高系统可用性。
- 系统性能上:通过异步提高系统响应速度,提高业务人员工作效率
- 实际数据:MRO业务近半年日均销售单 793 单,付款日均 727 笔,GMV日均 516 W,日活 454
项目四:换电/维保平台重构 公司: 北京阿帕科蓝科技有限公司(松果出行)
- 项目介绍
- 换电/维保系统重构是整个公司最关键的项目,它涉及到对车辆的管理,蓄能,保养,维修等功能,原有项目扩展性差,性能有一定的瓶颈,且涉及到跨语言(Go),所以对其进行重构
- 技术架构
- SpringCloud混合体系,SkyWalking,ShardingSphere,XXL-Job,RocketMQ,Feign,Redis等
- 重难点
- 高并发,低延迟
- 优化代码规范,减少大对象创建等,两分钟内无GC情况
- 引用异步日志,染色日志等,提高系统性能高达 50 %,减少CPU使用率 30 %
- 数据来源广,实效性、稳定性差
- 引入数据一致性中间件保证建库成功率,并提供一致性校验、数据自愈、时效性报警等能力
- 引用动态多数据源,减少切数据源的损耗
- 赖三方多,三方不稳定,采用降级方案解决
- 项目扩展性差,稳定性差,并且涉及到跨语言(Go)
- 数据量大,实时性要求高
- 高并发,低延迟
- 个人职责
- 代码CodeReview
- 主导部分项目迭代的统筹规划,系统业务建模;
- 千万级换电数据的导出,SQL优化从原来的 5 s,到后面优化成 200 ms,由于原来的车况衰减功能数据源越来越多,导致从原来的处理时间2h到后面的 20 h,使用ShardingSphere做分库分表、多数据源、读写分离等,解决难点数据迁移,与及后期的库表扩容等难点
- 由于ECU消息(QPS 1000 )业务流程数据读取性能差,采用redis缓存优化,减少查库,并使用布隆过滤器+先写数据库,解决一致性、缓存击穿等问题,提成效率从 200 ms到 2 ms
- 由于低于可用里程,换电消息具体时序性,采用基于RocketMQ实现自产自消的多个topic之间的时序性问题,并且采用异步消息提高吞吐量和把原来同步发送线程数 567 优化到几十负责项目的Go迁移重构到Java的部分功能
- 项目收益
- 人效:平均提高 30 %以上
- 性能:重构后,性能提升 30 %,机器实例减少 50 %,并实现内存优化
- 业务解耦:实现换电业务与车辆平台业务,定时业务解耦合,大幅度减少机器的性能损耗
项目五:电池管理平台重构 公司: 北京阿帕科蓝科技有限公司(松果出行)
- 项目介绍
- 电池管理系统主要是提供给产品,城市经理等使用的系统,管理公司的电池使用,去向等,主要功能要安全管理,电池业务管理,电池档案管理,电池故障管理等
- 技术架构
- SpringCloud混合体系,SkyWalking,RocketMQ,SpringBoot,Mybatis,ElasticSearch等
- 重难点
- 服务稳定性
- 规范日志打点,完善服务稳定性监控报警能力
- 采用降级策略,优化三方接口调用
- 提高系统响应时间,原系统接口 50 %以上接口响应时间超 5 s以上,优化后平均响应时间 100 ms左右
- 数据来源广,时效性高
- 采用ElasticSearch对数据进行实时性检索
- 采用动态多数据源,读写分离等,减少切库,数据库本身压力
- 服务稳定性
- 个人职责
- 独立负责项目的Go迁移Java迭代,重构,从 0 到 1 的迁移开发等
- 优化电池相关统计报表获取来源
- 多个RocketMQ消息的迁移开发(如:计算所有城市按城市维度统计电池每小时数据,每天,每月等的数据计算)
- 公司几百万的电池信息的统计,实时报表数据等的提供
- 项目进度把控,流程规范上线
- 项目收益
- 实时性:基于ES实现数据的实时性检索,对MySQL数据做宽表的处理
- 人效:提高一线,产品的工作效率 50 %
个人项目:星泽脚手架(持续更新中)
项目介绍
- 我们这一个项目旨在让大家能够快速集成开发,这一套框架是我根据自己日常开发,感觉到一些在工作中所不能接触到的一些基础组件,比如 权限,日志管理,搜索,代码生成,大数量导入导出,定时任务,消息,分库分表,二次封装MybatisPlus等等,为了解决这种问题,我决定集合身边的小伙伴,写一个能够真正意义上解决大数据量,满足于小中厂,千万级别数据的一个小型项目,让大家用之于身,取之于身。
个人职责
- 参与项目的需求分析,架构设计等
- 项目中集成单例,建造者,工厂,原型模式等
- 定时任务,大数量导入导出,OSS,Pay,MQ,ES,多线程监控,缓存等的核心开发
Git地址
个人博客
教育经历
- 普通二本院校(本科) 2017.09-2021.06
个人评价
- 适应性能力强,能够接受加班和出差
- 具有较好的沟通能力,并且能够快速融入团队
- 跨部门沟通,有良好的的人际交友能力,能快速跟不同的部门同事相处得当
- 有强烈的责任心,开拓创新意识强
- 有相对较好的长短期职业生涯规划,与及技术学习路线等
公众号:(可以赞赏哦)