专注于大数据领域(redis,kafka,elastic stack)/软件架构设计,内心怀储互联网之梦。相信代码改变世界,程序设计人生。
期待更多志同道合的朋友交流。
联系方式
- Email:truman.p.du@qq.com
个人信息
- Truman/男/1990
- 本科/西安邮电大学
- 工作年限:8年
- 技术博客:http://trumandu.github.io
- Github: http://github.com/TrumanDu
- 期望职位:Java高级程序员,架构师,项目经理
- 期望薪资:税前月薪30k+
- 期望城市:西安
工作经历
newegg公司 ( 2015年11月 ~ 至今 )
Persona Email
- 项目描述:基于深度学习的个性化邮件推荐系统。
- 项目特色:利用用户活动行为特征和Item特征结合深度学习来进行邮件促销。
- 项目职责: 主要负责用户数据特征,用户向量分群等工作。
- 项目业绩: 比传统Top40促销提交多个百分点。
- 主要技术:hive,hbase,kafka,kafka stream,kafka connect,python,PyTorch等
SNS
- 项目描述:SNS是newegg统一消息通知平台。
- 项目特色:统一内部所有的通知渠道,避免重复建设,便捷扩展通知渠道,系统高可用,高扩展性。
- 项目职责: 主要负责架构设计,平台代码开发,项目管理等工作。
- 项目业绩: 目前接入多个业务通知服务,支持email,sms,teams等渠道。
- 主要技术:kafka,mongodb,zookeeper,grafana,react,elasticsearch,spring boot等
EventHub
- 项目描述:Event Hub是一个高度可缩放、分布式、基于时间序列的事件中心,能够实时的处理流式事件并进行告警和提醒。可以实现事件指派,追溯等事件全生命流程。
- 项目特色:事件可追踪,可提醒,可管理,强大界面,以事件为中心挖掘价值。
- 项目职责: 主要负责架构设计,平台代码开发,项目管理等工作。
- 项目业绩: 目前接入技术和业务类事件,作为持newegg企业监控平台,业务提醒与追踪平台。
- 主要技术:kafka,grafana,react,elasticsearch,spring boot,mysql等
KafkaCenter
- 项目描述:KafkaCenter 是kafka一站式平台,提供自助,监控,管理,运维,生态等全平台功能。
- 项目特色:消费监控自研,丰富的kafka周边生态,强大完整的集群管理功能。
- 项目职责: 主要负责架构设计,平台代码开发,项目管理等工作。
- 项目业绩: 目前作为newegg企业kafka支撑平台。
- 主要技术:kafka,ksql,kafka connect,react,elasticsearch,metricbeat,spring boot,mysql等
RCT项目
- 项目描述:RCT 是一个通过解析rdb文件对redis内存结构分析的一站式平台。 支持对非集群/集群rdb文件分析、Slowlog查询与监控、ClientList查询与监控。
- 项目特色:采用分布式架构,通过解析redis rdb文件,多角度多场景分析redis中内存数据结构,提供友好的可视化报表以及邮件通知等功能。
- 项目职责: 主要负责架构设计,平台代码开发,项目管理等工作。
- 项目业绩: 目前已在产线上使用,多次发挥重要作用,为公司节省了宝贵内存资源。
- 主要技术:redis,react,eureka等
SyncBigdataPlatform项目
- 项目描述:SyncBigdataPlatform 是依赖大数据存储技术,提供高性能读写,jumplocation,以及跨location数据同步服务平台。DB层采用Hbase,Cassandra,Cache层采用Redis,数据同步层采用Kafka。提供restful接口,以供业务调用。
- 项目特色:支持自定义业务扩展,支持热部署,支持配置信息动态调整,支持可视化配置信息更改,支持多数据中心高速数据同步,支持jumplocation操作,支持业务数据格式与数据库scheme自定义设计
- 项目职责: 主要负责架构设计,平台代码开发,项目管理等工作。
- 项目业绩: 目前平台上线多个主要服务,可以支持重点核心业务系统,上线一年来,稳定运行无误,获得公司优秀项目荣誉。
- 主要技术:redis,kafka,hbase,cassandra
基础服务搭建与运维
- 项目职责: 搭建RedisCluster,Elasticsearch,KafkaCluster集群,对集群进行日常维护,处理线上问题,开发周边组件,便于更好的维护集群。
- 项目业绩: 为newegg线上服务提供可靠稳定的cache,消息,检索服务。
服务Docker化
- 项目描述:针对公司kafka/redis/elasticsearch/opentsdb等基础服务docker化,其次针对业务项目进行docker化部署
- 项目职责: 针对不同需求场景设计部署架构,编写shell脚本,Dockfile文件。
- 项目业绩: 将我们项目组所有服务实现全部docker化,降低服务维护难度,极大的解放劳动力。
- 主要技术:docker,bash
RedisClientAPI项目
- 项目描述:该项目提供一个使用Redis的rest/thrift API,客户端可以跨多种编程语言,更高效,更便捷的使用Redis的功能。
- 项目职责: 负责该项目的设计及开发工作
- 项目业绩: 提供高效API服务,承受上亿次调用,未出现任何事故。实现了RedisCluster批量操作,慢查询追踪等功能。项目难点是对于批量操作的实现方案改造。
- 主要技术:redis,thrift,springboot等
MonitorPlatform项目
- 项目描述:该项目可以用来检测机器指标,基础服务指标,业务指标等数据,通过可视化技术快捷高效的监控相关服务。
- 项目职责: 主要负责该项目的设计与开发工作,该项目利用ES stack技术,使用metricbeat收集机器指标信息,使用grafana做可视化。
- 项目业绩: 实现我们团队服务的无死角化监控,打造具体我们team特色的监控平台。
- 主要技术:elasticsearch,metricbeat,filebeat,grafana等
其他项目
redis cluster监控,EC Dashboard,kibana 插件(email_table,indices_view),ServerLoginAlert,AnomalyDetection
开源项目和作品
开源项目
- KafkaCenter主导设计及开发,维护,获得开源社区关注。
- redis-manager(参与) redis 管理工具,获得业界关注。
- RCT redis 内存分析工具,获得业界关注。
- autocomplate-shell:VS Code 编写shell插件,下载量30k+
- indices_view:查看ES indices kibana 插件已被elastic官网收录,码云周刊第68期推荐 )
- cleaner:设置es index ttl 插件,已被elastic官网收录
技术文章
- 技术博客
- 微信公众号
- 消息队列入门与最佳实践
- Elasticsearch 速览学习笔记
- MongoDB指南
- Kibana Plugin Development Tutorial
- Java 初级架构师入阶系列专栏
- Better Javaer
专业技能
- Java基础扎实,熟悉多线程并发编程,锁等
- 熟悉常用的数据结构和算法
- 了解常用的设计原则和设计模式
- 掌握Redis/MongoDB/Cassandra等Nosql
- 熟悉Elasticsearch以及Elastic生态
- 掌握Kafka,了解RocketMQ消息中间件
- 了解kafka周边生态,KSQL/Connect
- 熟练使用Docker
- 熟练使用SpringBoot
- 熟练使用MySQL,了解MySQL索引机制
- 熟练使用Grafana,Kibana
- 熟悉 linux 常用命令
- 具备分布式系统设计能力
- 具备系统架构设计能力
- 具有JVM调优能力
- 具有前端编程经验,熟悉React
- 具有多种语言使用经历(js/go/shell)