个人介绍
工作经历
2015-06-05 -2022-04-01农行软开软件工程师
1. 负责即时通讯相关的短信、消息推送、直播、实时音视频等多个项目的研发工作; 2. 以基于 Java 的服务端开发为主,也参与过 PC端、安卓端、Web 端开发; 3. 目前主要负责直播及实时音视频相关的研发及团队管理工作,同时负责组内技术调研、架构评审、技术培训等工作。
教育经历
2012-09-01 - 2015-06-30北京林业大学计算机软件与理论硕士研究生
1. 获得国家奖学金 2. 作为teamleader及主力开发者在实验室负责过多个项目
技能
1. 项目分为主服务、代理程序,对使用者来说主服务可以维护登记代理程序,查看远程计算机及服务的监控,发送命令,代理程序负责自动化收集远程监控信息,执行主服务发送的运维命令。 2. 代理程序使用 Rust 编写,资源占用极小,性能优异,稳定性好;主服务使用 SpringBoot + MyBatis 开发;我负责代理程序的全部开发工作,以及主服务的框架搭建,包括基于 WebSocket 的应用层协议设计等。 3. 需要编写大量的自动化 bash 脚本,需要保证代理程序 7x24 稳定运行且资源占用极小,同时在网络状况不稳定的时候、磁盘慢等极端情况下仍然可以正常运行。
1. 项目分为接入模块、推送模块和存储模块,主要面向公司内部支持高并发访问; 2. 负责带领团队进行技术预研,同时也作为主力开发,负责框架搭建及代码审查等工作;使用了 Vert.x、Redis、Kafka、FastDFS、Oracle 等技术,用较少的资源满足 5 万以上 TPS 访问,日均消息发送量在2亿以上。 3. 自研了 Vert.X 生态的 fastdfs 客户端。
0. 项目为开源项目,地址为:https://github.com/gengteng/jinshu 1. 项目分为长链接保持、消息接收、第三方接口网关、文件上传、消息推送服务、消息存储服务、授权服务、定时服务等模块; 2. 负责全套系统的设计、开发及测试。该系统是使用 Rust 语言实现的一个高性能、稳定、可定制、易于部署、资源占用极小的包含前后端的跨平台即时通讯系统。服务端可以在 Linux、Windows、Mac 上编译运行(后两个主要用于开发)。客户端可通过交叉编译支持 Windows/Mac/Linux/iOS/Android/Web/Electron/Flutter。 3. 技术栈:主要使用了 Tokio、Axum、Tonic、SeaORM 等框架,使用了 Etcd、Kafka、Redis、PostgreSQL、MongoDB等中间件;支持使用 Docker 部署。