1.熟悉Java体系架构,熟练使用IDEA 开发工具,熟练Maven 工程开发方式,模块式开发方式。
2.精通数据库交互端框架熟悉mybatis ,mybatis-plus框架。
3.熟练使用springBoot、springcloud框架的开发方式。
4.熟练使用rabbitmq、kafka、rocketmq三大消息队列的使用。
5.熟悉JavaScript、python语言。
6.熟悉mysql ,oracle等关系型数据库。
7.熟悉elasticsearch、redis、mongo等非关系型数据库与搜索引擎的使用。
8.熟悉linux 的常用命令,简单的shell 脚本编写。
9.熟悉Streamsets大数据ETL工具、flink流式数据处理框架的使用。
10.熟悉外部攻击面相关的渗透知识,主要涉及信息收集、传统漏洞扫描器、web漏洞扫描器、web爬虫(js逆向)方向。
一、项目名称:灵知·互联网情报监测预警中心(Ai·Radar) 项目时间:2022-06-至今
项目描述
灵知是一个SAAS系统,主要负责对租户基于关键词进行暴露面测绘,例如租户存在一个根域名关键词,会对此根域名进行子域名获取,使用DNS反查技术可获取到IP等信息,在根据IP信息进行主机资产探测,使用发包等方式获取开放端口信息,在根据开放端口信息进行Web资产探测,此探测原理大概为对域名和IP的开放端口进行应用层协议发包进行判断是否存在此Web资产,获取到Web资产后此时的IP、域名、Website的暴露面已经测绘完成,也可以获取到此三种暴露面的实体关联关系,关联后为关联暴露面信息查询。还会对关键词进行搜索引擎关键词查询,在根据关键句查询结果进行爬虫采集,爬虫采用JS逆向方式进行反爬破解,稳定性高,搜索引擎可以基于关键词获取到代码、文件、APP、公众号、供应链、人员组织、关联企业等暴露面信息。在根据暴露面信息进行攻击面测绘,攻击面分为四类,分别为:漏洞、不安全配置、高危端口、敏感信息。漏洞根据Website数据进行Web漏洞扫描可获取到漏洞相关信息,在根据漏洞扫描器获取到的漏洞与我们维护的漏洞库进行对比数据替换。所有的列表数据展示都为ES查询,所有的聚合统计等维度也为ES使用,效率极高。此项目分为,每个系统又为多个微服务组成,内部每个服务之间的调用都为OpenFeign调用。后台运营系统与采集服务系统使用RocketMq用于交互,采集到的数据会推送到Kafka中,使用Streamset大数据工具进行ETL清洗进行入库,在使用Streamsets进行监听mysql的binlog日志进行数据同步到ES中,实现了系统之间的解耦。
二、项目名称:公交云课堂 项目时间:2021-03-2021-11
项目描述
1.此项目是一个公司内部教育系统,现在已经上线,基础数据人员存在18万人,组织存在3000多个,是一个大型公司的内部系统,主要业务有课程,考试,直播,证书,面授等。后台管理员可以在后台推送课程给人员,人员通过app端进入系统并学习课程。学习课程之后,后台管理员会创建题库,导入试题,创建试卷,创建考试,推送考试到人员,人员通过app端进入系统进行考试。考试完成会实时判出分数发已证书。使用的阿里巴巴的微服务架构,使用的框架为bladex企业级框架,bladex框架是对springcloud alibaba的在一层封装,多了很多好用的组件和注解,可以很简单的写出低耦合高实现的代码。我主要负责项目的架构层,写的为租户管理,组织管理,岗位管理,人员管理,用户组管理,管理员管理,角色管理,系统管理,日志管理。主要是写的基础层,要研究一些bladex框架的封装代码并二次开发bladex框架。各个业务的数据权限都会从feign接口给出,人员数据和组织数据都会放入redis缓存中,各个业务在获取的时候可以直接从缓存中获取。
三、项目名称:智能建造 项目时间:2021-07-2021-11
项目描述
1.此项目是物联网项目,其中包括各个硬件设备的推送数据对接,有塔吊黑盒子,考勤闸机,环境监测,ai百度盒子,ai摄像头,普通摄像头,升降机,卸料平台等硬件对接。其中我主要负责塔吊黑盒子,考勤闸机,环境监测,ai百度盒子对接。此项目我后端的第一负责人。项目的框架使用的是bladex框架,之前的公交云课堂人员,系统,日志,角色权限等基础服务迭代到此项目,此项目的框架为二次开发后的bladex框架。与设备对接部分主要逻辑为,平台方根据设备方的接口文档写出对应的接口,设备方进行调用,平台方根据设备定时推送的数据进行保存并关联自身的业务,因为数据量较大,我把这些推送的数据加入到了elasticsearch7中,查询速度快了多倍,秒级响应了。Ai黑盒子的对接思路与其他的设备不同,ai黑盒子需要根据设备方的接口文档去调用他们的接口进行业务关联。
灵知是一个SAAS系统,主要负责对租户基于关键词进行暴露面测绘,例如租户存在一个根域名关键词,会对此根域名进行子域名获取,使用DNS反查技术可获取到IP等信息,在根据IP信息进行主机资产探测,使用发包等方式获取开放端口信息,在根据开放端口信息进行Web资产探测,此探测原理大概为对
1. 系统分为仪表盘、漏洞知识图谱、漏洞库管理、源数据库管理、任务管理、系统管理、用户管理、角色管理、日志管理、备份管理模块 2. 此系统后端部分从架构设计、数据库设计、功能开发全部是我个人开发,此系统主要逻辑为通过任务中心的 定时任务进行爬虫任务采集,定期的进行增量数据的采集