熟悉OpenCode、CluadeCode、Cursor、Trae等AI工具的使用
熟悉 Java 基础知识,具有良好的编码能力 、并熟悉的使用设计模式
熟悉 Java 并发编程 ,对 Java 的各种锁机制 、线程池机制 、AQS 有一定的理解
熟悉 JVM 、JMM 、GC 底层算法 ,熟悉多种常见的垃圾回收器 ,熟悉常用的 JVM 调优手段
熟悉 MySQL ,对常用的优化手段 、索引的数据结构 、表连接相关的算法有一定的理解
熟悉 Redis, 了解底层磁盘及网络 IO 的模型 、数据持久化机制 、多数据类型缓存应用 、高可用机制 ,熟悉 Redis 做缓存时穿透 、击穿 、雪崩 、缓存更新的解决方案
熟悉 Zookeeper 相关的知识, 了解 Paxos 、Zab 算法 ,选举机制 ,分布式锁实现方式 ,对 CAP 定理有一 定的理解
熟悉常见的数据结构和算法
熟悉分布式锁 、分布式事务的解决方案
熟悉常用的客户端优化 、服务集群 、缓存设计 、数据库设计 、应用保护方案
熟悉主流开发框架 Spring 、SpringBoot 、SpringCloud(Eureka 、Feign 、Gateway 、Hystrix) 、MyBatis 、 MyBatis-Plus ,可以通过需求快速构建项目
熟悉消息中间件 Kafka、RabbitMQ,使用过 xxl-job 进行项目的落地实现
对操作系统内存管理 、内核同步机制, 网络的 TCP/IP 、Http/Https 协议有一定的理解
对大型高并发架构 、Nginx 、LVS 、KeepAlived 、CDN 有一定的理解
熟悉 Linux 系统常用命令 、Docker 常用命令 、使用 Jenkins 进行项目部署
项目介绍:本系统是基于联想备件维修的供应链系统(SSOC),服务的区域为除中国区以外的其他地区,开发本系统的目标是希望它能够取代使用SAP方案搭建的一套供应链系统(SECC/CECC),目前已经完成部分仓库的迁移实现由SSOC系统来进行管理,另外的还是通过SECC/CECC管理。其包括中央大仓(WWHub)、区域仓库(DC)、工厂(MFG)、代工厂、维修站点(FSL)等重要角色,系统的功能就是使备件在这些角色之间进行流转。在联想中整个SSOC系统包含如下模块:
1、采购补货模块: 用于实现备件的采购补货,比如当区域仓库里面的备件库存不多时,想从中央大仓调取备件来补充库存,就可以使用此模块实现此场景,相当于是区域仓库从中央大仓进行了一次采购,系统会创建对应的采购订单。但是由于用户的不同,会使这些订单产生不同的场景,每种场景执行的流程不同、所对接的上下游系统不同、系统之间的对接方式也不同。这些场景包括从中央大仓补货到区域大仓、工厂/代工厂直接补货到区域大仓、从本地供应商直接补货到区域大仓/维修站点、从区域仓库到区域仓库之间的补货、从维修站点到维修站点之间的补货等等。即使是同一种场景的可能因为不同的用户而产生不同的流程,比如从中央大仓补货到区域大仓场景,有的用户下完单之后只需要对用户下单数据进行基本数据层面、业务层面的校验,校验通过就可以把数据下发到指定系统处理后续流程即可,有的用户下单成功后,订单会先在系统中锁定,系统会执行后台任务去进行大量的业务处理(库存检查、配额检查、黑白名单校验、库存不足时是否可用使用替代件)才会把订单数据往下游系统进行流转。
2、销售模块:用于备件的销售,基于此操作会在系统生成相应的销售订单。
3、仓库管理模块:用户备件的管理,其中包括维护仓库相关的信息、备件库存的管理、根据入库、出库操作生成对应的入库/出库订单、跟第三方物流平台(3PL)的对接等功能。
4、逆向物流模块:基于某些情况当用户想退货时,就可以通过此模块创建订单实现逆向物流的操作。
5、主数据模块:物料主数据的维护与管理,主要包括物料的BOM信息、物料之间的替代关系维护、物料之间的组关系维护。
6、权限管理模块:用户的登录注册、系统接口的权限管控、前端页面菜单/按钮的权限管控、用户数据的权限控制。
个人职责:
1、项目重构基础架构的搭建
2、采购补货模块系统功能的设计、开发、运维
3、销售模块、仓库管理系统、主数据模块、权限管理模块部分功能的开发
4、对于系统功能基于业务、代码、数据库层面进行性能优化