1.掌握一定的运维知识, 有CICD部署经验, 负责了团队的私有代码仓库搭建, 一键部署发布, GitLab + Jenkins 实现, 帮助团队解决了繁琐打包部署的问题
2.有基于 SpringBoot + ElasticSearch(ELK) + Apache Spark Mlib(ALS算法和逻辑回归算法) 的个性化搜索推荐模型的训练经验
3.掌握 ElasticSearch 的使用和原理, 比如基本语法, 高级语法, 分词策略, 相关性重塑, 内置函数, 比如 Guess 基于经纬度的地理位置衰减函数的打分
4.对于Java相关的大部分框架都了解并且使用过, 无论是基于 Http 的 SpringBoot / Spring Cloud, 还是基于 RPC 的 Dubbo
5.有压测经验, 参与过Lazada & Daraz的双十一和BDay大促的压测
6.有基于SpringAI进行AI模型 (ChatGPT) 接入的经验, 并且尝试过使用Ollama进行本地模型的训练, 让模型能够更加偏向企业生产的定制化开发
7.负责了团队的登录人机验证 (图片滑块 / 文字点击) 的服务实现和解耦, 可以自由支持第三方应用的接入
8.了解多线程下对于线程安全的实现方式, 比如基于DataBase的悲观锁, 乐观锁, 基于Redis的逻辑锁
9.了解分布式事务的解决方案, 比如 Seata 的XA模式, TCC模式
阿里巴巴 - 菜鸟 - 东南亚国家 - Lazada&&Daraz 路由平台能力建设
路由分单过滤引擎开发和维护(这个组件是包裹从进入路由域到从路由域出去给表达域的重要组件,负责包裹的线路分配部分,比如重量过滤的DimWeightFilter, 站点容量过滤的CapacityFilter,而线路我们从下游网络域获取,线路绑定了站点的地理位置经纬度,运输方式,预计的运输时间,费用等等,我们将根据我们的过滤引擎讲不满足条件的线路逐个排除,直到最优的线路获取,当然如果是最后到分单我们都没有获得最优线路,那么我们就会采用兜底的方式分单,兜底可能不是最优选择,但是我们此时要保证包裹的正常配送)
路由分单规则引擎开发和维护 (在过滤引擎的基础上进行更细粒度的线路分配,比如当包裹的重量大于某个设定的规则,则触发降级)
路由流水监控(TheOne系统的路由部分) (TheOne的最初建设目的就是为了让业务能清晰查看包裹的整个链路足迹以及时效),路由域建设TheOne系统的路由流水,方便直观的展示一个包裹从进入路由开始到从路由出去,整个过滤引擎对包裹的影响作用,包括降级原因,兜底原因,每个过滤组件为什么会将不满足条件的线路排除,大大提交了日常排产问题的效率,在2021年我们刚开始做路由平台的时候,排查问题是非常苦恼的,我们只能去登录查看日志,进行重试,找出线路过滤的原因,TheOne系统上线后,整个Lazada&Daraz的开发团队以及业务团队都给出了好评,并且我们后面不仅仅支持了流水查看,我们还支持了一键重试,让业务可以快速的查看自己新配置的过滤方案是否符合预期
仿真计算 (根据历史数据和当前配置进行模拟仿真分单)
路由平台稳定性建设 (慢SQL监控, 上下游接口调用时间监控, 兜底监控等)
配置任务发布卡控+配置任务发布通知 (防止不符合预期的配置上线导致故障, 高风险配置发布我们不允许直接发布,阈值由业务决定,一旦系统判定为高风险,仿真页面对应的也会标记高风险提示, 此时就需要BPMS审批流介入让高层领导审批后方可发布)
中信重工 - 数字化精益制造平台
工单模块,提供接口对应SAP系统,SAP系统将工单推送给精益制造平台,接受工单后我们讲会根据期量进行工时的预估,我们也提供了指令重排功能调整工序的执行顺序,自动生成外协计划功能,根据已投工单数量判断是否自动完成报工,根据不同的工单类型决策是否可以直接触发下达任务,提供了工单拆分功能,将主工单拆分为子工单进行任务分发,工单是生产计划的重要组成部分,用于指导生产车间的任务的执行
工序模块,工序是工单的子项,一个工单比如要制造一个车轮,那么工序就是制造这个车轮所需的步骤,比如切割,冲压,焊接,钻孔等等工序来完成一个车轮的制造,工序包括了准备工时,实际加工工时,加工数量,完工数量,这些是重要数据,用于我们后续的时间计划输出,同时工序也提供了自动报工,拆封工序等功能
期量模块,期量是精益生产中的一个重要概念,它定义了每个工序的生产周期,是时间计划组成的重要部分
机床排产,不同的车间有不同的机床设备,我们支持工序在相同机床,不同机床之间的排产,这个排产逻辑是很复杂的,比如同工单工序的排序,不同工单的工序排序问题,工序在不同机床的排序,以及预计开始时间的预估,由于每一次拖动工序都要将所有机床的工序进行重排,否则将会导致工序之间不能连贯加工甚至顺序颠倒,同时我通过分布式锁来实现无论何时,即使分布式部署的架构下,仍然同时只能有一个人操作机床排产的时间计算,原因是,原因是时间计算本身是异步的,那么如果在A计算期间,B去拖动了工序,就很可能导致计算的时间不对,这个计算时间是要汇总的,必须保证准确性,当A出发了排产计算,分布式锁将会被A操作持有,其他人的操作将会被拒绝,直到A的计算完成方可再次触发,不同的机床还有不同的工作时间,比如 8:00 – 16: 00, 16:00 – 24: 00, 24:00 – 08:00,我们将结合机床的工作时间和工单的预估时间进行排产,完成最优的计划决策
中信特钢-产品碳-CBAM欧盟碳关税以及环保
物质库,物质的种类是非常多的,包括镁,硫酸,铝,高炉煤气,无烟煤等等都算是物质
因子库以及因子,因子库,比如企业温室气体排放相关的因子库,因子库下是具体的因子,比如高炉煤气,它的成分就包含了 一氧化碳,氢气,二氧化碳,氮气这些都算它的因子
CBAM建模,建模是核算的前提,包含了填报主体,商品类别与工艺流程,商品类别与工序,前体部分,排放因子卡片模型,排放因子卡片模型是各个工序之间输入,输出排放源信息,排放源就是排放物质,比如天然气,电煤等等,而排放物质绑定了因子,比如生产这个物质会产生什么因子,比如