工作经历
2021-04-07 -2023-06-30杭州笛佛软件有限公司Java架构开发
该公司主要从事电商ERP业务开发。从02年开始做“网店管家”,到如今旗舰产品为“吉客云”:内部包含OMS、WMS、ERP等多模块电商一体化数字产品。我在其中担任架构团队的开发工程师,完成了诸如公共导入导出服务、OSS服务、延迟消息服务以及各类组件的开发
2020-11-07 -2021-04-06杭州红云智汇有限公司Java开发
该公司主要是做政府公务员系统,通过其自行研发的框架能较为顺利的实现公务员审批流程的向上或向下推进。我在其中独自完成了一个模块的功能开发及上线
教育经历
2017-09-01 - 2021-07-01温州大学计算机科学与技术本科
技能
1.项目主要以更细微颗粒度的方式让开发者使用redis,便于企业运维管理。比如原先一个服务对应一个redis实例,使用该组件后,开发只能使用对应redis中的一个key,实例的管理权交给企业运维。另外该组件还集成了caffeine缓存、并提供了函数提供数据源支持,便利实现3级缓存架构。让开发者无需关心过多redis配置专注于开发,将配置权全权交给企业运维。 2.该组件由本人独自完成开发,实现了上家公司内部的全覆盖。 3.难点是市面上并没有类似的参考案例,如何通过Spring提供的扩展点,完美实现不影响spring原有基础功能并使扩展的bean也能使用spring原有功能成了一大难点。后面想到了通过动态代理的方式进行实现。
1.导单机器人项目功能可参考【八爪云】,项目按业务功能分为【收单】、【结算】、【推单发货】、【核销】等功能。通过在企业*添加机器人,负责接收群内的各类消息,并对其中的关键文本或文件进行处理,减轻电商用户日常经营压力。 【收单】:可以将各类格式订单文件或者文本订单录入ERP系统,并生成结果文件反馈给使用者。 【结算】:针对每日处理的订单,以自定义周期进行结算,生成结算文件,减轻日常统计压力。 【推单发货】:用于日常分销商需要供应商发货,导出自身订单数据形成文件给供应商。 【核销】:用于日常供应商与分销商之间,需要针对已发货订单进行财务核销问题的处理。 2.项目整体后端设计及开发都由本人执行,该项目为本人上家公司后期的核心新产品,距本人离职前已有上百家企业使用。 3.难点主要是如何合理运用企业*提供的“企业归档”功能,让客户感受到的回复延迟时间尽可能的小。主要是通过powerjob实现任务定时轮询,并通过合理的线程管理尽可能多的进行轮询。
1.项目核心目的就是一个:替使用者存储需要延迟处理的消息或任务,并在设定时间进行准时投递。比如某些场景下,客户需要根据自己设定的时间进行周期性的任务触发,时间范围又是不确定的,则可以使用该项目,开发者只需要关心自己需要实现的业务逻辑,延迟触发功能则全权交给该服务。 2.该项目由本人独自维护,使用了rabbitMQ、redis、LUA以及时间轮算法,摆脱了阿里云上版RocketMQ,单机TPS达到了400+每秒。 3.市面上拥有延迟功能的组建很多,比如各类MQ都集成了延迟队列,但都是固定时间的。如何满足“任意”时间的延迟消息则是需要解决的。因此想到了使用redis的zset有序集合,那如何解决redis数据不可靠的问题,则需要结合LUA脚本保证操作的原子性,以及通过Mysql进行数据持久化。