1. 熟练掌握Java开发语言,理解IO、多线程、集合等基础框架,对JVM原理有一定的了解,并且注重面向对象思想和设计模式的应用,致力于保持代码规范与开发标准。
2. 熟练掌握Spring、Spring Boot、Spring Security、MyBatis和MyBatis-Plus等主流框架。并对Spring Security和MyBatis源码有过深入阅读和理解,了解其内部原理。
3. 了解SpringCloud微服务框架及常用的组件如:Nacos、Sentinel、Gateway等。
4. 熟悉Web前端UI设计与交互页面开发。
5. 熟练应用HTML、CSS、JavaScript以及流行的前端框架如Vue.js,并具备Webpack工具的使用经验。
6. 熟练掌握数据库和搜索引擎技术,有MySQL、Redis、ElasticSearch等,具备数据建模、查询优化和性能调优等方面的实践经验。
7. 熟练应用Nginx、Tomcat等服务器技术,能够独立进行配置和管理。
8. 熟练使用Git、SVN和Maven等项目管理工具,能够进行代码版本控制、团队协作以及项目构建与管理。
9. 熟悉Docker容器技术,具备基本的命令操作和容器、镜像的创建能力。
项目一:数据支撑平台
项目描述:在业务系统业务数据日渐增多的情况下,针对业务数据进行分析统计困难。该项目作数据支撑平台,服务于决策分析、数字大屏、用户画像等数据应用;该平台包含全套得数据管理体系功能,如任务调度管理、数据据标准管理、数据采集(离线采集)、数据质检、指标校验等功能模块。
项目技术:Spring、SrpingBoot、SpringMvc、Quartz、Mybatis、Oracle、Vue
工作内容:
1. 参与了项目的部分功能模块的需求分析、设计、开发和测试,了解和掌握了项目的开发流程和生命周期。
2. 优化了项目的流程引擎功能模块,通过引入数据明细表单的概念,实现了审计数据和业务数据的分离,从而解决了流程与实际业务代码之间过度耦合的问题。这一优化简化了业务流程的开发工作,提升了开发效率。
3. 设计和开发了数据标准管理功能模块时,通过使用状态设计模式,定义了一套通用Service和表字段,实现了数据版本的管理。
4. 对项目中采集任务的依赖调度进行了优化,使得现在ADS层模型的采集不再需要查看并手动触发每个依赖任务。主要采用了队列来广度优先搜索任务依赖,将任务之间的依赖关系进行依赖层次分组。并且实现了同一层级的依赖任务可以并行执行,降低了任务的整体执行时间。
5.在数据采集同步模块,采用一读多写的并行模式提升数据的采集效率;使用一个线程从jdbc中读取数据,读取的数据往一个BlockingQueue队列上放,多个写线程去消费BlockingQueue的数据,从了实现读过程和写过程的分离,提升了数据采集的效率。
项目二:移动门户APP
项目描述:本项目的主要任务是将核心业务——审批和经办业务功能进行页面的移植,以适应移动端使用,进而方便客户进行线下业务办理。
项目技术:Spring、SrpingBoot、SpringMvc、SpringSecurity、Mybatis、Oracle、Redis、Vue
工作内容:
1.为简化移动端页面开发,在Vue框架上,依据原有jsp业务框架,对表单组件及相应的表单操作方法进行了组件封装,这使得表单布局、表单项验证等方法和老版业务系统保持一致,简化了页面开发流程,提升了开发效率。
2.在原有的账号密码登录机制的基础上,我抽象出公共的登录部分,并引入短信登录、支付宝授权登录、刷脸登录的多种登录方式。开发过程中通过为每一种登录方式定义不同的Token和Provider,为每种登录方式实现了独立的登录逻辑,从而达成了登录逻辑的高效分离。