裴永鹏

Java研发工程师

个人总结

•
学习能力强,自学Java技术栈,如RabbitMQ、ElasticSearch、Redis等中间件。

工作经历

天津国御网络安全技术有限公司 - Java研发工程师
2024.03 - 2024.12
主机安全防御平台
•
项目介绍:基于 SpringCloud + Kafka + Redis的主机安全防御平台。通过主机探针和应用探针,平台能够实时监控和分析主机层和应用层的安全状态,及时识别潜在的安全威胁,并采取有效的防护措施。平台支持灵活配置各种安全策略,目前已在公安部一所、中石化、中石油、农业银行等多家国央企部署试运行。
•
主要工作:
1.
负责开发登录、审批、云资产管理和授权功能,作为平台相对核心的功能,在多轮提测下bug率为0%。
2.
设计并实现了黑白名单模块,包括黑白名单和隔离策略,通过向探针下发配置,实现配置主机黑白名单,保障主机安全。
3.
开发销许版本告警报表功能,集成实时监控与告警机制,使用策略模式和模板模式实现导出不同搞告警的报表,提升了告警处理效率和数据分析能力。
4.
主导一期和二期运行态势模块开发,实现了实时监控和数据可视化,使用WebSocket实现数据的实时性。
5.
负责私有云版本系统设置功能的开发,包括NTP时间同步、代理服务器设置、端口管理等。
6.
开发平台升级功能,通过调用底层shell脚本实现云平台的自动化升级,简化了升级流程,0人工干预,提高了升级效率。
产品演示平台
•
项目介绍:基于SpringBoot + Vue2开发的前后端分离项目演示平台,平台作为销售和客户服务的跳板,方便销售团队在向客户演示公司产品时提供流畅的体验,并在客户使用试用账号时进行权限校验。通过精确的权限控制和灵活的用户管理,平台确保了产品演示过程的安全性和高效性。
•
主要工作:
1.
负责产品演示平台的前后端全栈开发,独立设计并实现了系统的核心功能。
2.
负责网关的开发,利用 cookie 校验用户权限,使用 Nginx 实现产品地的快速跳转,确保了安全性和高效的访问控制。
主机安全防御平台SDK
•
项目介绍:基于 Spring Boot 开发的轻量级 SDK,遵循标准的 SDK 规范,旨在提供简便的配置方式和强大的可扩展性,同时保持极小的体积。该 SDK 设计注重易用性与灵活性,确保在提供高效功能的同时,不会对系统性能产生负担,能够快速集成到各种应用中,并支持根据需求进行定制和扩展。
•
主要工作:
1.
负责开发主机安全产品 SDK,供公司其他产品(如智能防御平台和情报中心)调用,确保 SDK 的高效性与易用性。
2.
在主机产品原有用户登录机制的基础上扩展了应用登录功能,区分应用 token,并集成 saToken 进行权限校验,提升了安全性和灵活性。
3.
为第三方应用编写了 20+ 个接口,考虑到 SDK 的轻便性和可扩展性,设计了 token 获取后的操作接口,并将其默认存储在全局变量中,方便调用者根据需求自定义和增强功能。
4.
编写了Kafka 推送接口,通过向公司其他产品线推送主机安全告警数据实现数据互通,提高了公司产品生态的协同效率。
OpenStack集群搭建
•
项目介绍:搭建一个高可用的 OpenStack 集群,为公司提供云计算平台的基础设施支持。通过使用 kolla-ansible 部署 OpenStack 集群,并协助各产线进行代码迁移和虚拟机创建,确保了各应用能够顺利迁移至 OpenStack 环境。
•
主要工作:
1.
使用 kolla-ansible 部署 OpenStack 集群,成功搭建了高可用的 OpenStack 环境,确保了平台的稳定性和扩展性。
2.
协助各产线进行代码迁移,并为不同应用和服务配置虚拟机,确保了云平台的顺利过渡和高效运行。
3.
基于 Freezer 备份方案,编写了自定义的 shell 脚本,实现定期备份镜像、实例快照和数据文件,增强了集群的容灾能力和数据安全性。
天津心生科技有限公司 - Java开发工程师
2023.01 - 2024.03
负责开发工业互联网和安全风险管控平台的大型微服务项目
•
负责后端服务的开发和实现,使用Spring Cloud框架搭建微服务,实现核心功能模块,如短信登录、租户管理等。并且参与项目后期信创改造工作,对华为云CSE、OBS等技术进行适配和优化,确保项目的顺利过渡和升级。
•
设计并开发了单点登录插件,集成了Jenkins、Kubesphere和Nacos中间件,提高了用户体验和身份验证的效率。

教育经历

天津中德应用技术大学
本科
软件工程 3.6GPA
2019.09 - 2023.07
优秀学生一等奖学金,企业奖学金,CET4,计算机二级,校级优秀团干部(两次),科技立项小组一等奖,互联网+小组二等奖

项目经历

next-bi
https://nextbi.nexuracloud.cn
•
项目介绍:基于 Spring Boot + RabbitMQ + AIGC的智能数据分析平台。区别于传统 BI,用户只需要导入原始数据集、并输入分析诉求,就能自动生成可视化图表及分析结论,实现数据分析的降本增效。
•
主要工作:
1.
考虑到单个图表的原始数据量较大,基于 MyBatis + 业务层构建自定义 SQL 实现了对每份原始数据的分表存储,提高查询性能 30%左右和系统的可扩展性。
2.
使用 RabbitMQ来接受并持久化任务消息,通过 Direct 交换机转发给解耦的 AI 生成模块消费并处理任务,使用死信队列处理异常情况,提高了系统的可靠性。
3.
由于智能分析是异步操作,任务执行成功或者失败的情况,使用Server Side Event向用户推送实时消息。
4.
为保证任务的可靠性,给任务的执行增加 Guava Retrying 重试机制,如果任务重试后仍然失败,使用定时任务把失败状态的图表放回队列,重新生成。
next-api
https://nextapi.nexuracloud.cn
•
项目介绍:基于 React + Spring Boot + Dubbo + Gateway 的 API 接口开放调用平台。管理员可以接入并发布接口,可视化各接口调用情况;用户可以开通接口调用权限、浏览接口及在线调试,并通过客户端 SDK 轻松调用接口。
•
主要工作:
1.
为防止接口被恶意调用,设计 API 签名认证算法,为用户分配唯一 ak / sk 以鉴权,保障调用的安全性、可溯源性。
2.
选用 Spring Cloud Gateway 作为 API 网关,实现了路由转发、访问控制、流量染色,并集中处理签名校验、请求参数校验、接口调用统计等业务逻辑,提高安全性的同时、便于系统开发维护。
3.
为解决多个子系统内代码大量重复的问题,抽象模型层和业务层代码为公共模块,并使用 自主开发的next-rpc框架 实现子系统间的高性能接口调用,大幅减少重复代码。
4.
开放了自主开发的BI系统-智能分析接口、OJ系统-判题接口、脑肿瘤分割系统-分割接口,用户接入后即可实现相应的能力。通过使用JMeter对线上每个接口进行十万次调用,并且全部成功,得出接口调用可用性达 99.999%。

其他项目

next-oj
https://nextoj.nexuracloud.cn
github: https://github.com/change-everything/nexura-oj-backend
•
项目介绍:基于 Spring Boot + Docker的编程题目评测系统。系统能够根据管理员预设的题目用例对用户提交的代码进行执行和评测;系统中 自主实现的代码沙箱 可作为独立服务供其他开发者调用。
next-rpc
•
项目介绍:参考 Dubbo 开源项目自主设计实现的 Java 高性能 RPC 框架。开发者只需引入 Spring Boot starter,就能通过注解和配置的方式快速使用框架,实现像调用本地方法一样轻松调用远程服务。
https://github.com/change-everything/next-rpc

专业技能

#1
•
熟练使用 Java,能够运用 Java8 的 Stream API 高效完成数据处理,能够使用常用的设计模式,如工厂模式、单例模式、适配器模式等完成系统设计。
•
熟练使用SpringBoot、SpringCloud 全家桶,能独立开发项目。
•
熟练使用JavaScript、TypeScript语言,并可以结合Vue2、Vue3、React框架以及AntDesign、ArcoDesign等UI开发前端项目。
•
熟悉Linux系统,能使用命令监控系统负载和进程状态,并可以使用Docker完成容器化部署以及线上排查报错。
•
熟悉Redis,可以解决缓存穿透、击穿、雪崩问题, 可以基于Redisson的 RateLimiter 实现分布式限流,控制单用户访问的频率。
•
熟练使用RabbitMQ,熟悉常用交换机。可以使用死信队列处理消息异常情况。
•
熟悉网络安全相关知识,了解攻击原理,对于Rasp等防护技术有较深理解。
•
了解Openstack,熟练使用kolla-ansible部署集群。
Download PDF
Link copied