Iven

云原生 . 微服务 . 工程效率 . Python . Go

(+86) 1xx-xxxx-xxxx
ivenvd@gmail.com
https://github.com/iven


知识技能


工作经历

Shopee

研发效能 SRE 团队(Leader) 2022.01~2022.03

主要负责效能相关稳定性建设,建设故障自愈、MTTR、制定 SLA 等。

知乎

微服务架构团队(Leader) 2020.05~2021.12

设计研发新版 App Engine(Golang):

· 引入 Istio,使用云原生的服务发现、限速、熔断、鉴权、流量控制、链路追踪等,替代现有自研方案,避免多语言 SDK 的开发和维护成本。并为以后全链路压测、流量染色、流量录制与回放、持久功能分支等功能打下基础。
· 基于 Argo Workflows 开发部署流水线,使部署流程完全跑在 K8s 上,方便资源管理、权限控制等。
· 以基础设施即代码(IaC)为理念,将部署流程固化为 YAML 文件,方便重现、回滚等操作。
· 新增有状态服务的部署支持,支持代码、配置同步回滚,自定义金丝雀部署等多种功能。
· 扩展 App Engine 的作用范围,将产品研发的需求、项目等功能与开发流程进行绑定,方便统计人效。

工程效率团队(Leader) 2016.07~2020.05

应用平台

从零开始设计和开发知乎的 PaaS 平台 ZAE(Python)。

实现了较为强大的 CI 功能:

· 支持跨语言、多版本 Docker 镜像的构建,支持多阶段构建。
· 构建系统支持 tarball、容器镜像等多种构建产物输出。
· 支持基于 Sonar 的代码静态质量分析和约束。

以及 CD 功能:

· 支持物理机(Fabric)、容器(K8s)、定时任务(自研)、静态文件(Nginx)等多种部署。
· 支持弹性伸缩、蓝绿部署、金丝雀部署、预上线环境、多机房部署,实现了秒级的上线和回滚。
· 支持不限数量的联调环境,允许多个应用在未上线前创建临时环境进行联调测试,允许内测版 App 在手机上直接选择环境进行测试。
· 支持创建不限数量的在线调试容器,用于调试线上 Bug、执行批处理任务,提供 Web 端访问。
· 支持部署过程中的质量验证,如冒烟测试、文档测试、在线覆盖率测试、手动提测等。

同时兼顾了应用平台的其他功能,如:

· 入口层管理:提供域名管理、Nginx 配置管理等功能。
· 服务管理:提供服务的监控图表(Grafana)、实时/离线日志(ELK、Kafka)、异常管理(Sentry)等。
· 资源管理:对数据库、缓存、消息队列等资源进行生命周期、成本管理。
· 安全管理:漏洞检测、依赖检测、服务鉴权等。
  成效:

· 平台覆盖了公司 90% 以上前后端业务,使开发者全自助维护各自应用,整个知乎零运维人员。 · 统一了公司的整体开发、测试流程和代码规范,统一了测试环境、预上线环境的使用规范。
· 金丝雀部署、联调环境等机制,基本避免了由新代码上线引发的全站故障。
· 移除了 90% 以上的个人开发机需求,除了使用容器部署,还用容器解决线上故障,节省了大量的成本。
· 曾受邀在猿辅导、金山云、Face++、GrowingIO 等公司分享相关经验。

微服务

开发和维护跨语言的平台基础 SDK,如 RPC 框架(基于 Apache Avro -> Thrift)、服务发现(基于 HAProxy & Consul)、资源发现、配置管理、功能开关等。

参与公司的微服务治理与拆分,推动微服务实现降级,统一各应用的 SDK 版本。

与其他团队合作,提供了服务的熔断、限速、鉴权、流量录制、监控、日志、链路追踪等常用功能。

团队管理

负责 8 人团队的管理工作,熟练使用 OKR、One-on-one、周会等多种管理工具进行团队目标制定、成员绩效考评、定期成员沟通、持续引入新鲜血液。

接受过 DISC 人格特质在内的多种团队管理心理学培训。具有较强的团队组织能力、对外沟通能力、向上向下负责的能力,能够以不同的方式推动团队成员的成长和和谐共处。

微学明日(在线教育创业公司)

后端开发团队 2015.05~2016.06

负责题库、平板教学等系统的前后端、爬虫、支付等相关功能。敏捷开发,熟悉 Scrum、测试驱动开发机制。

爱奇艺

计算云团队 2013.03~2015.05

从零开始设计基于 Mesos 的混合云计算平台:

· 引入 Docker,替换原有基于 OpenStack 维护的虚拟机、OpenVZ、KVM 混合集群。
· 促成 Hadoop, Spark, Storm, Chronos 等分布式计算组件在该平台的弹性混合部署。
· 编写自定义框架,将公司核心视频转码业务迁移至 Mesos。
· 驱动多 IDC 共 500 台以上虚拟机、物理机协同工作。
· 开发了集群资源、任务审计平台,并为 Mesos 周边项目提交开源代码若干。

该平台整合了公司物理机、虚拟机计算资源,通过计算资源的复用,大幅度节约了公司成本。

另外,初步设计和开发基于 Marathon、Jenkins、Nginx 的应用平台,和基于 Vagrant 的本地开发工作流,具有基础的 CI/CD 能力,成为现在爱奇艺云计算平台的雏形。


教育经历

中国科学技术大学

软件工程 硕士 2010.09~2013.03

阅读 Linux 内核源码,了解内核启动、系统调用、进程调度等相关原理。

在 Intel 公司实习,负责 Meego Linux 性能优化、Google Chromium 代码定制等工作。

中国地质大学(北京)

电子信息工程 学士 2006.09~2010.06

参与 KDE、Compiz、QSanguosha 等 Linux 桌面系统相关开源项目(C++)。

在红帽软件(Red Hat)实习,负责内核测试工作。


Iven - Github: @iven - Twitter: @ivenvd