个人介绍
工作经历
2017-08-01 -2021-08-01上海市微创软件股份有限公司java开发工程师
完成CI/CD由Jenkins迁移Github Actions,实现代码提交后自动化部署; 在由SVN迁移至Github后,完成新的代码提交规范及项目发布流程规范; 完成使用Spark Streaming替代原有数据处理框架,提升了系统的性能; 提出并完成使用Java多态的特性优化不同产品处理方式不同的问题; 日常监控程序运行情况,分析线上程序宕机原因(如OOM等)并提出解决方案;
教育经历
2017-09-01 - 2020-01-01电子科技大学计算机应用技术专科
本人2017年9月参加网络教育,于2020年1月参加考试,并且考试合格准予毕业
技能
该项目是基于打印机日志的智能报警系统,当系统收到上游的某事件后,根据定义的规则分析数据仓库中是否有匹配的事件,如果有则为下游发出警报。该系统由spring boot搭建后台项目,前端则采用angular js 。在整个项目中定义规则业务最为复杂,采用策略工厂等模式解决该逻辑。
该系统主要是在限定文件中搜索包含指定关键字的文件。系统主要使用Spring boot搭建后端服务,使用vue做前端页面。我在该项目上主要负责系统的总体架构及后端服务代码的编写。
该项目是打印机的大数据分析项目,数据由打印机发送的数据收集中心,数据中心将数据收集整理并发送到SEALs和其 他下游,SEAls把收到的数据包进行解密、解压、抽取、计算、存储,并提供UI、API等方式将数据结果提供给下游数据 分析人员查询和查看。 SEALs由以下模块组成: 1. 文件接收:使用Servlet,提供API,接收并存储上游发过来的文件; 2. 数据抽取:运行在Spark的应用程序,解压并抽取文件中有效的数据,将数据存储到数据仓库; 3. 数据处理:数据处理的ETL,对数据进行清洗、计算等操作; 4. 数据展示:基于Spring boot的Web应用程序,提供页面给用户,供用户查询需要的数据。 应用技术: AWS、Spark、SparkStreaming、Spring、MyBatis、Redis、Kafka、PostgreSQL 工作职责: 1. 参与数据抽取模块中的Shell脚本编写; 2. 参与模块的代码编写与调试; 3. 负责项目中新技术的研究与可行性分析; 4. 负责各模块的性能分析与优化。 工作成效: 1. 使用Spark Streaming直接消费SQS,优化了文件处理流程,不仅提高了系统的吞吐量,而且使维护和部署更方便; 2. 提出并使用数据同步方案,将热数据缓存,使页面响应速度降至3s内; 3. 提出并使用数据的增量计算替代全量计算,提升了数据计算的速度,减少了资源的浪费。