熟悉Java语言,熟练掌握各种Core Java技术栈,并且对并发编程、JVM等都有深入的理解。
掌握Spring、Spring MVC、MyBatis、Spring Boot等主流Java开发框架。
熟练使用MySQL,了解其核心原理,并有分库分表、性能调优、数据迁移等经验。
有丰富的分布式经验,有分布式事务、分布式锁、分布式一致性等问题的解决经验。
熟悉Redis、RocketMQ、Zookeeper、Dubbo等常用中间件的使用及原理。
熟悉Clean Code原则,熟练掌握开发规范,并在项目中使用过各种设计模式。
熟练解决各种线上问题,有各类技术问题的排查及解决经验。
有架构落地经验及知识储备,做过金融级的技术架构落地方案。
项目简介:聚合支付平台系统,为商户提供支付宝、微信、银联等多个平台支付的能力。利用与各第三方支付平台以及合作银行等的聚合,所开展的一项支付工具多样化的综合支付业务。
技术栈:SpringBoot、MySql、Mybatis、MybatisPlus、Nacos、Shiro、Redis、RabbitMQ
责任描述:
参与技术选型,主导分布式服务架构设计,负责项目落地实施部署工作。管控人员开发进度,核心文档撰写,定期组织CR。带领团队完成日常工作。
1.使用quartz定时任务实现支付单自动关单功能,并解决引入多线程+分段解决锁表延迟的问题。
2.为防止接口被恶意调用,设计API秘钥、令牌校验等方式来提醒接口安全性,并通过滑动窗口实现接口调用限流。
3.通过采用”一锁二判三更新”方式设计接口幂等,解决支付单重复支付的问题。
4.基于可靠消息实现积分增减的最终一致性,基于RocketMQ事务消息解决分布式场景下的数据一致性问题。
5.排查并解决线上问题,如慢SQL、CPU被打满、Load飙高等。
6.引入TransmittableThreadLocal解决多线程间ThreadLocal无法共享的问题。
6.基于Redis实现库存扣减,避免高并发场景下出现超卖、少卖等问题。
7.基于Redis的分布式锁,解决短信验证码重复发放等问题。
| 角色 | 职位 |
| 负责人 | 高级Java开发工程师经理 |
| 队员 | 产品经理 |
| 队员 | UI设计师 |
| 队员 | 前端工程师 |
| 队员 | 后端工程师 |