It's our wits that make us men.

个人简历

Posted on By eatMelon-Masses

联系方式

  • Email:z11764404@aliyun.com
  • wx: zy11764404

    个人信息

  • 本科-计算机科学与技术专业,1996年,工作年限:5年,期望职位:java,期望城市:成都
  • 技术博客:https://eatmelon-masses.github.io
  • 开源项目:https://github.com/eatMelon-Masses/learning-leetcode

    个人优势

    1. 熟悉数据库、缓存、消息队列等中间件(mysql、Postgre、redis、kafka)
    2. 熟悉docker及了解k8s相关生态,基于k8s实现异地跨云厂商物联网设备集群稳定部署,用于个人技术中台
    3. leetcode coder,维护300多道题的个人题解库。个人博客上分享多篇技术文章。
    4. 熟悉linux操作系统、命令,结合日常使用经验解决服务维护问题
    5. 自学能力强、持续关注,学习新的技术热点、行业动态(ai、区块链、物联网)。

工作经历

| 公司名称 | 职位 | 时间 | |———|—–|——| | 北京天润融通股份有限公司 | 高级java开发、项目负责人 | 2022年6月至今 | | 医联 | 中级java开发、项目负责人 | 2021年1月至2022年3月 | | 哈尔滨安天科技集团股份有限公司成都分公司 | java开发、项目负责人 | 2018年9月至2020年12月 |

北京天润融通股份有限公司

呼叫中心saas-业务线迭代需求

云呼叫中心系统,满足企业与客户的联络需求,提高服务和营销效果,

  1. 采用事件驱动模型。项目框架采用springboot、consul、redis、dubbo、mybatis。github构建,k8s部署。
  2. 每两周一个需求迭代,和同事一起相互协作完成升级任务,快速解决升级中遇到的问题。
  3. 开发过程中通过使用arthas、jmeter、telent、jdk工具、gpt、k9s高效定位遇到的内存、中间件、接口并发访问等疑难杂症。

呼叫中心2.0 项目负责人

  1. 负责设计服务架构,带领两名组员完成功能开发。
  2. 用spring gateway实现 用户认证授权、路由转发、限流熔断
  3. 引入消息队列和本地队列,提高峰值处理能力,将话单数据保存到es中,使用es做统计查询
  4. 通过redis、spring chache 减少数据库访问次数,提高系统性能
  5. 引入Jaeger链路跟踪和Prometheus监控应用
  6. 使用spring test 和 mockito框架编写业务功能点单元测试,保证业务主流程健壮性

    医联

业务线迭代需求

业务线涉及一个scala语言历史项目,负责迭代的需求在该项目上进行修改,这个项目开发最大的困难是语言、sbt依赖管理、编译打包慢,本地无运行环境,我采取修改网络环境和手动替换新版本jar包,提高依赖拉取速度,解决本地无法运行问题,增加remote debug 配置。使依赖拉取、代码调试、测试环境线上问题定位,从几十分钟缩短到几分钟。

标签系统

  标签管理、用户标签查询

  1. 项目onwer,负责项目所有业务设计、脚手架搭建及代码落地,运用alibaba cola项目改造的架构模版创建应用,使代码层次更清晰。运用微服务rpc调用,拆分数据库密集型操作代码和业务逻辑代码,更有利于应用横向扩张,职责分明。运用自定义注解,保证同一个仓库不同应用按需加载实例bean,减少内存浪费。
  2. 运用jpa框架,提高数据库api编写效率。运用mongodb实现动态新增集合列,满足新增业务需求,热更新数据库配置。

    问卷系统迁移改造 项目负责人

  3. 通过调研,把微服务rpc框架从dubbo远程调⽤改造成grpc远程调⽤,提⾼rpc调⽤效率,同时打通公司两套技术平台rpc调⽤。
  4. 运用ddd、充血模型 改造业务代码,使熟悉业务的开发人员更容易理解业务代码。

    消息平台迁移改造

  5. 整合多个基础消息服务,统⼀简化配置,对外提供统⼀sdk
  6. 通过Spring-Integration 将应⽤程序与消息传递集成
  7. 通过消息队列,解耦消息发送和接收,通过内存队列对业务流量消峰,确保业务⾼效稳定。

涉及技术框架

阿⾥cola代码⻣架、rabbitmq、内存队列、redis、模版引擎、bilibili注册中⼼、携程apollo、grpc

安天


资产安全运维项目

  资产安全运维平台是一个综合管理平台,提供安全运维门户、日常安全管理、资产管理等功能。

职能描述

  1. 开发和维护认证中⼼和⽤户中⼼多服务架构,基于oauth2.0密码模式和授权码模式规范,使⽤spring security实现认证鉴权功能。
  2. ⼯单、知识库模块功能开发,使⽤Quartz框架完整每⽇定时⼯单创建任务。运⽤⼯⼚模式和构建者模式,提升了消息模板的可扩展性。
  3. 同步开发业务场景单元测试,运⽤mockito和powermockito单元测试框架,减少修改代码逻辑、重构代码时间成本。
  4. 完成相关模块软件需求评审、概要设计、详细设计⽂档,涉及业务流程图、PDM数据库设计图、时序图。

网空资产探测项目 项目负责人

云应用识别、隐蔽隧道建立、反云查杀手段等、虚拟机容器识别、多探针协同探测技术解决方案

职能描述

  1. 负责隐蔽隧道建⽴架构设计,解决思路基于dns协议建⽴隐蔽隧道。
  2. 设计微服务架构,web端服务包括探针管理,探针端部署后能够⾃动注册信息,使项⽬部署具备灵活性。
  3. 设计多探针协同探测解决⽅案,web端服务负责指令下发等功能(包括指令下发、通过分配协同算法,拆分⼤作业),实现多探针并发探测同⼀⽹段资源,提升70%探扫效率。
  4. 原本架构是java应⽤解析流量,获取元数据,保存在数据库,但是吞吐量,受应⽤程序和数据库限制严重,通过改造 elastic beats(流量解析开源项⽬),实现⾃定义应⽤协议元数据标识获取,把流量元数据清洗成标准json格式,通过elastic beats -> logstash -> moloch 通过动态表达式配置实现云应⽤识别,新增识别应⽤,开发⼈员只需要关注表达式配置。
  5. 指导组员完成开发任务

技能清单

以下均为我熟练使用的技能

  • 理论基础:
    1. 熟悉java语言:jvm、内存管理、垃圾回收、并发、集合、流等
    2. 熟悉基础数据结构与算法:字符串、数组相关算法,查找、排序、回溯、动态规划、DFS、BFS
    3. 熟悉计算机网络(tcp/udp)协议栈、熟练使用linux操作系统,部署应用,日志debug
    4. 熟悉mysql优化、了解设计模式
  • Web框架:springboot
  • 缓存:redis、Spring Cache
  • 消息中间件:kafka、rabbitmq
  • 数据库相关:MySQL、Postgre
  • 单元测试:mockito/powermock
  • 运维工具:Grafana、K8s、K9s、Prometheus、Jaeger、github action、jenkins

    致谢

    感谢您花时间阅读我的简历,期待能有机会和您共事。