熟练掌握Java 技术基础,掌握IO流,多线程等技术,有良好的编码习惯;
熟悉中间件 nacos、redis、mq、nginx、easy-es、docker、Jenkins等技术,能合理利用相关技术解决实际问题;
熟练使用 SpringMVC、SpringBoot、SpringCloud 等,能快速进行框架的搭建
对分布式系统的并发、限流、降级、事务以及故障处理有较多经验;
熟悉常见设计模式,并在实际项目中深入实践。
能深入解析项目需求,找到合适的解决方案,并清晰的输出设计逻辑。
项目名称: ***互联网贷款项目
项目周期: 6个月
技术选型:SpringMvc+Mybatis+Mysql+Js+Bootstrap+Echarts
项目描述:
互联网贷款项目,基于德国mambo系统(主要为银行、信托、保险等客户)的业务,开发的一款互联网产品项目。
责任描述:
1. 订单模块:各进件渠道(pc、app、小程序等)对接,处理工作流业务
2. 清算模块:处理贷款的各项逻辑运算
3. 财务模块:对接金蝶数据
4. 区块链模块:对接区块链接口,将系统数据上链
5. 报表模块:对接各种监管接口,上传监控数据,解析各种报文。报表的优化查询以及多线程批量导出等
技术挑战:
客户使用了十多年的老系统,有大量的珍贵的历史数据,新系统需要融合老系统,因此主要困难集中在了需要平滑的过度老系统。
解决方案:
1、与客户重复讨论他们的需求以及历史系统,在充分对接需求的基础上来设计新系统。这部分耗时较长,因为需要充分了解老系统的后台逻辑,每个模块我们都反复测试挖掘其中的逻辑。
2、在摸清后台逻辑的基础上,我们将基础数据通过ETL工具抽至新系统。
项目名称: **资产管理项目
项目周期: 一年
技术选型:SpringBoot+Mybatis+oracel+vue
项目描述:
商业银行资产管理项目,基于第三方的数据分析企业的经营情况以及财务状况,展示给用户。
责任描述:
1. 抽数业务:基于kettle开发的抽数功能,定时抽取第三方的数据落表。
2. 财务模块:基于特定企业近3年的数据,分析计算各种财务指标,包括资产负债率、流动比率、速动比率、应收账款周转率、存货周转率、资产利润率等等。
技术挑战:
三方数据较多,导致系统急需优化。
解决方案:
用sharding-JDBC实现分库分表,根据公司id作为分片规则,做hash取模让数据均匀分散到各个库和表,使用snowflake算法生成唯一主键id。
项目名称:***MES产品
项目周期: 6个月
技术选型:SpringCloud+Mybatis-plus+mysql+vue
项目描述:
工业互联网mes产品、项目。对接工厂plc等硬件设备,将生产设备信息提取出来并做相应的分析展示给用户。对销售、采购、仓库、计划、生产、质检等各环节进行管理,助力工厂数字化升级,让用户更好的管理工厂。
责任描述:
1、系统搭建:使用SpringCloud框架搭建的saas产品系统,完成从0到1的过程。
2、负责仓库、计划、质检等核心功能的开发。
3、对接各种硬件设备,plc、堆垛机、起重机、摄像机、实验设备等等。
技术挑战:
产品技术选型以及各种硬件对接。
解决方案:
产品技术选型,基于历史项目以及未来的产品的展望,最终选择SpringCloud分布式系统,降低各模块之间的耦合性,提高响应速度以及可用;使用seata处理分布式事务,用nacos作为注册中心和配置中心,分布式锁使用的是redis,限流和降级用的是sentinel。后续准备使用easy-es来做搜索引擎。
硬件对接主要选择的是西门子的S7协议、modbus以及MQTT等
工业互联网产品,从产品需求确认,到架构选型以及搭架,功能开发,小组人员分配,系统功能测试,再到客户正式使用以及后续维护,全程参与。
1、负责整个项目的研发测试,需求评估以及设定开发计划 2、项目设计以及过程把控,解决项目中遇到的技术难题 3、部署运维,解决实际使用中遇到的难题,优化系统