1、熟悉Linux环境下的开发,部署,配置;
2、熟练使用IntelliJ IDEA,git以及maven配合进行软件开发;
3、熟练使用关系型数据库Oracle和Mysql以及noSQL数据库Redis,elasticsearch框架;
4、使用过Web开发框架: Ajax、Jquery、Servlet和SSH;
5、深入研究使用dubbo以及mq消息组件;
6、对hadoop有一定的认识, 具备生态系统中部分产品(分布式文件系统HDFS、分布式离线计算框架MapReduce、分布式服务框架Zookeeper、分布式-面向列的开源数据库Hbase、数据仓库工具Hive)的使用经验;
7、使用过一段时间的spark以及zookeeper;
8、深入理解spring的架构设计以及实现原理,对于spring boot有过深入研究并且应用于公司的项目中(去哪儿金融事业部的征信系统)。
京户通对公支付系统(2015/08–2016/12)
项目职务: 软件开发工程师
所在公司: 京东金融集团
项目描述: 此项目主要核心是支付,建立一套账户系统,分为一般户,冻结户,担保户。整个系统分为6大模块:(1)sdk层:给业务系统提供交易接口;(2)job层:交易以及开户等任务执行worker;
(3)gate-bank层:调用银行接口;(4)gate-http层:接收银行的交易通知;(5)web层:客户开户,交易转账页面;(6)erp层:交易数据监控;
1、 开户:先调用银行接口,在银行开通一个父账户,同时在系统生成三个子账户:一般户,冻结户,担保户;
2、 转账交易:业务系统只能通过操作子账户进行转账,提现,充值。例如:一个一般户向另一个一般户进行转账的时候,首先调用sdk层的交易接口,我们将交易任务存于数据库中,之后通过job调用gate-bank层的交易接口,以完成转账交易;
项目职责: 1、负责支付核心业务如转账交易等的设计;
2、负责后台提现,虚对虚账户转账以及虚对实转账交易的开发与设计;
3、负责对接银行网关的开发与设计;
4、负责网关worker的开发与设计;
项目业绩: 了解了支付业务的核心;
目前支付系统交易金额已经达到12亿多。
金融分布式worker调度平台(2015/08–2016/12)
项目职务: java软件开发工程师
所在公司: 京东金融集团
项目描述: 此项目集成了TBSchedule开源框架,后端依赖于zookeeper进行存储策略、任务、心跳信息数据,它的数据结构类似文件系统的目录结构,它的节点有临时节点、持久节点之分。支持Cluster,可以宿主在多台服务器多个线程组并行进行任务调度,或者说可以将一个大的任务拆成多个小任务分配到不同的服务器。本系统主要优势如下:
1、支持集群、分布式
2、灵活的任务分片:分布式机制是通过灵活的Sharding方式实现的,比如可以按所有数据的ID按10取模分片、按月份分片等等,根据不同的需求,不同的场景由客户端配置分片规则。然后就是TBSchedule的宿主服务器可以进行动态扩容和资源回收,这个特点主要是因为它后端依赖的ZooKeeper。
3、动态的服务扩容和资源回收
4、任务监控支持
项目职责: 1、参与核心设计;
2、开发worker平台的任务分片等功能。
3、深入分析理解tbschdule原理,重写其核心功能
项目业绩: 将金融系统的worker进行统一的分布式管理
保理资产证券化项目—华泰证券(2015/08–2016/04)
项目职务: 软件开发工程师
所在公司: 京东金融集团
项目描述: 此项目是互联网第一单保理业务资产证券化项目—京东金融与华泰证券合作,发型规模20亿元。主要业务简介: 华泰证券在系统建立专项计划,将保理的20亿借款单,转让给华泰证券,同时将部分收益也转让给华泰,华泰证券将这部分资产打包成证券发行出去。此项目中有几大核心业务:1、首次购买;2、循环购买;3、还款业务;4、转付日转付;5、赎回业务。
项目职责: 1、资产证券化系统的还款业务的开发;
2、资产证券化系统的转账业务的开发;
项目主要功能就是和第三方系统进行交互, 交互协议的维护以及安全监控。网关主要功能包括:授信, 激活,放贷,预授信,还款, 提前还款,退款等业务功能,从而完成消费贷和现金贷业务与第三方交互的桥梁作用,将业务系统与第三方隔离。 项目除了上述的核心功能接口层, 还包括:补授信
项目描述: 此项目主要核心是支付,建立一套账户系统,分为一般户,冻结户,担保户。整个系统分为6大模块:(1)sdk层:给业务系统提供交易接口;(2)job层:交易以及开户等任务执行worker;(3)gate-bank层:调用银行接口;(4)gate-http层:接收银行的交易