阿里云「飞天发布时刻」2024来啦!新产品、新特性、新能力、新方案,等你来探~ 了解详情
写点什么

吴晟:程序员不当 CTO,也能过上理想的生活 |TGO 专访

Milan

  • 2021-11-22
  • 本文字数:3509 字

    阅读完需:约 12 分钟

吴晟:程序员不当CTO,也能过上理想的生活 |TGO专访

本期嘉宾介绍:吴晟,Apache 软件基金会首位华人董事,2021GTLC“扬帆出海”高峰论坛讲师;开源 APM 项目 SkyWalking 创始人,分布式追踪与诊断技术专家,骨灰级开源社区爱好者。先后在大唐软件、亚信中国、华为从事技术工作;2018 年 5 月,加入 To B 级混合云外企 Tetrate,成为公司创始工程师。



2021 年 10 月 22 日,吴晟在 GTLC 大湾区活动分享开源,台上的他看起来自信、从容、松弛,散发着明星的光芒,他将专业小众的开源讲得通俗易懂,让观众深深记住了他。

你很难想象,他本质上并不是一个外向和爱社交的人。大学之前,吴晟其实一直是班上从来不举手回答问题,也不主动参加集体活动的人。2016 年后,这一切开始有了转变。

「做开源需要别人知道你的项目,我在写文章和上台之间选择了上台,对我来说,这是一个对自己负担更低的、更容易曝光的模式」。

01

不做管理,依然潇洒


除了出席各种活动演讲,2012 年以来,吴晟护照上还记录下美国、韩国、意大利、新加坡、瑞士、法国、泰国、乌克兰、印度等国家旅游的足迹,也陆陆续续买了六台车。

边工作边玩,结识不同的人,享受自由的时间,吴晟似乎过上了很多程序员理想中的生活。

「我可能更在意两件事情:一是我的工作每个小时值到底多少钱,而不是我每个月挣多少钱;二是我对自己生活质量有要求。精神状态好的前提是休息好,我不喜欢 Overwork 让人绷得很紧。」

吴晟并不是一毕业就过上自己理想中的生活,他也曾经历过一段难熬的日子。2010 年,吴晟从吉林大学软件工程硕士毕业,进了一家国企大唐软件,这份工作可以拿北京户口,但工资并不高,刚进去他就被扔到了一个「三不管」项目里,还被要求第二年春节上线项目。

「那两年基本都在石家庄出差,被逼得非常紧,感觉状态很差。」虽然这个项目七年都没有上线,在吴晟手里一年多就上线了,但于他而言,这段经历还比不上他暑假去微软实习的收获。

「我好像并没有从中学到什么东西,而只是被动地完成了一个任务」,于是在接下去的几年,吴晟刻意从一线抽离。虽然当年和他一起进大唐的人都升职,成了部门的经理、副经理,吴晟并没有觉得遗憾。他只是走了一条与中国大部分程序员的不同的成长路劲。

吴晟觉得,中国的程序员绝大部分并不是真的喜欢写程序,而是喜欢这份工资。管理岗位是岗位数最多、更容易挣钱的位置,朝这个方向发展是大多数人的必然选择。

但「在我那个年龄,如果太早从事管理,等于放弃了自己所学的专业,毕竟离开技术很容易,再想回来很困难。」

因此,30 岁之前吴晟最纠结的问题是选技术还是管理,直到后来国内开源氛围起来,他才找到了一条更适合自己的路。

02

SkyWalking 是一群人扯皮,影响我下班发明出来的


2021 年 9 月,吴晟接受采访谈开源。

Skywalking 作为分布式追踪与监控系统,其设计思路的灵感源于吴晟工作过程中遇到的问题,用他自己的话说是「影响到他正常下班」(笑)。

2012—2013 年,吴晟在亚信为联通集团做项目,联通招标八个厂家开发一个分布式企业系统,而这些企业的工作人员都集中在同一个地方办公。

吴晟发现,「这些人天天不干别的,系统一旦出了 bug,就在会议室里扯皮,争论是谁干的,最后却很难证明是谁出了问题,SkyWalking 被提出来就是来解决谁应该背这个锅负责。」

发现这个市场痛点后,吴晟在 2015 年生日第二天提交了 SkyWalking 的第一行代码,他最初做 SkyWalking 和开源并没有关系,而是因为一个偶然的事件。

「公司进了一个应届毕业生,想叫我教他写程序,但我不擅长上课教学,我想,是不是可以尝试一起来做项目,在这个项目里,他可以看到我怎么写程序?」

SkyWalking 项目雏形就这样慢慢浮出水面的。据悉,截止到采访当日,SkyWalking 社区共有 550 多位贡献者,在吴晟看来,SkyWalking 项目能吸引很多追随者在于他们尊重贡献者的价值。

「Skywalking 没有评价系统,我们对任何真正伸手做事的人都给予很高的评价,不会根据技术难度将人分成三六九等。我们希望看到的是感性的东西、和你的意愿热情。」

比如,一个上海的贡献者就令吴晟印象深刻,对方虽然至始至终没有向 SkyWalking 提交过任何代码,但在早期帮 SkyWalking 写了很多的成体系的文章。

放下评价,回归到关注每一位参与者的价值,是 SkyWalking 受到持续追捧的重要原因,因为任何一个成熟的顶级开源项目,都不是一个人的力量。吴晟感慨,SkyWalking 并非他个人的成功,而是硅谷模式的成功。

2017 年,Tetrate 高管找到他时,SkyWalking 还是一个非常弱的项目,真正成名要等到 2019 年。虽然,前期华为投了一部分资源宣传,但如果不是谷歌的工程师帮助 SkyWalking 进行全球化运作,SkyWalking 可能很难在短短 2 年时间就成为一个全球知名的项目,并进入了 Gartner 报告。

03

用半小时,决定加入 Tetrate

2018 年 5 月,吴晟加入 Tetrate 成为公司创始工程师。吴晟回忆,自己加入这家公司只用了半个小时。

当时吴晟还在华为,Tetrate CTO Jeyapraggash Jeyakeerth(以下简写 JJ)想去北京找吴晟,这位 CTO 飞到香港转机时,因护照没有中国免签手册无法入境,他便发邮件邀请吴晟去香港见面。

「我就当去香港旅个游」,吴晟飞过去香港时,JJ 已不在香港了,他就在香港住了两天,等第二天下午 JJ 从印度飞到香港机场,他们约在机场的安检通道内聊了 30 分钟。

JJ 是从 Twitter 出来的高管,比吴晟大 10 岁,在国外的开源社区、企业联盟深耕多年。他和吴晟第一次见面时,就阐述清楚了开源和商业的边界,令吴晟颇为惊艳。

吴晟总结 JJ 的观点为,Service Mesh 的开源方案解决了在一个云、一个集群中的技术环节,而商业解决的是跨云、跨混合部署、跨传统应用,并提供一体化解决方案的过程。

鉴于这两者存在明显的边界,开源和商业目标就不会纠缠在一起。显然,跨云、混合云对于开源来说价值太小,受众有限,是全球世界 500 强的企业才会重点关心的话题,绝大部分的中小企业、本地化企业不会关注。而相对更小规模的公司,可以从这种商业化方案中,得到一体化的成熟产品,而非单纯的技术。

04

四年在家办公


加入 Tetrate 后,吴晟都是远程在家办公,这样的方式让很多人羡慕,但也并没有想象中那么美好。

吴晟谈到,头三个月在家办公,「跟谈恋爱一样心情特别好」,三个月过后,幸福感呈指数基数递减,直到一年半后,才适应这个环境。

「一个人很难受,有一种抑郁和孤立的感觉。你很难区分生活和工作的界限,在家办公容易变成了过度工作。」吴晟花了很长的时间去适应这个过程,让自己保持一个最佳的精神状态。

此外,在家办公严格作息,学会换脑子很重要。吴晟每天至少 12 个小时在工作,但他锻炼了一种迅速切换注意力的能力。

比如,他并不会因周末干了一个小时活而影响心情,他经常在边陪女儿爬长城,还能边同公司开远程电话会议。

「有些人习惯把自己定义成上市公司老板,好像你的时间、精力、付出都要被精确地规划和计量。」

不要计较眼前的小得失,不给自己定过高目标,不预设过高的心理预期,是吴晟保持一个积极的精神状态的秘诀。


Q&A

 TGO: 您如何评价您在华为的那段经历?

吴晟:我在华为只做了 14 个月。华为是一家在全球受认可的企业,既有大厂的官僚,但是也在实在做事情,领导正直,实事求是,在 SkyWalking 这件事上,领导也给予了很多支持,但部门层面并没有得到相应的支持,在华为的一年多,SkyWalking 完成了从个人项目进入 Apache 孵化器,再到完成国内大幅度宣传的动作,这个阶段华为出了很大的力气,同时华为给了我一个好的走出去的机会。只是中国企业不擅长于做全球,不能够将这个项目带到全球的高度,这是我离开华为的理由。

 TGO: 听说您连续三年在 GitHub 上提交代码最多的 80 个人里面?

吴晟:这里面存在统计学偏差,我占了一个「最后确认」的便宜。我其实不是前 80 个提交代码行数最多的人,而是提交数量最多的 80 个人。作为一个流行项目最核心的贡献者之一,有大量的提交给上游的代码需要我来审查,绝大部分情况下我是最后确定他可以被合进去的那个人,所以很多人的最终提交的代码既记在了他的名下,也会把我算上。你可以理解成,我引用了最多大家提交的代码,而不是我写了最多的代码。

 TGO: 您曾说,社区最核心的是人而不是代码,您在社区沟通上有什么经验?

吴晟:首先,你要确保你的时间是有价值的,每一个核心贡献者的时间是整个项目最宝贵的价值,你的时间价值远远大于任何一个普通用户。绝大部分的中国开源开发者会说我好累,如果你为 500 个人解决问题当然会累死,你需要做的是让这 500 个人互相解决问题,而不是 500 个人找你解决问题。在中国,很多的开源项目的作者很在乎别人有没有选择你。社区其实跟销售没有本质的区别,不同的是你需要投入时间来换取对方对你的信任、尊重和响应,对于持续贡献的人才是价值的提升,也值得你去花费更多的时间。

2021-11-22 10:323549

评论

发布
暂无评论
发现更多内容

sync.Map源码分析

陈思敏捷

源码 源码分析 Go 语言

尽管HTTP/3已经来了,HTTP/2也得了解啊

清远

网络协议 HTTP

Python 核心技术与进阶 list & tuple

Bonaparte

业余前端的日常

顿晓

学习 大前端 日常 专家 知识体系

Redis稳定性实践

心平气和

redis 缓存 稳定性

Android | Tangram动态页面之路(二)介绍

哈利迪

android

松哥手把手教你定制 Spring Security 中的表单登录

江南一点雨

Java spring Spring Boot spring security

让你高效工作与学习的免费工具(1)

石云升

高效工作 效率工具 工具

游戏夜读 | Scikit-learn迎来0.21之前

game1night

设计模式之观察者模式

设计模式

Mac 使用笔记

FeiLong

面试官:小伙子,听说你看过ThreadLocal源码?(万字图文深度解析ThreadLocal)

一枝花算不算浪漫

源码 并发编程 ThreadLocal

如何在一台计算机上安装多个 JDK 版本

mghio

Java jdk 版本管理工具

松哥手把手带你入门 Spring Security,别再问密码怎么解密了

江南一点雨

Java spring Spring Boot spring security

从一次排查ES线上问题得出的总结——熔断机制

罗琦

elasticsearch 源码分析 circuit break 熔断

MySQL常用权限说明

一个有志气的DB

MySQL 用户研究

如果你觉得学习 Git 很枯燥,那是因为你还没玩过这款游戏!

GitHubDaily

git GitHub 编程 程序员 开发者工具

对于程序员,那些既陌生又熟悉的计算机硬件

架构师修行之路

微软 编程 程序员 cpu 架构师

《零基础学 Java》 FAQ 之 7-Java 中的内存是怎么分配的

臧萌

Java JVM

回“疫”录(18):536公里的路

小天同学

疫情 回忆录 现实纪录 纪实 返程

Java新技术:封闭类

X.F

Java 架构 编程语言

OpenResty部署配置和日志切割

wong

nginx centos openresty

谈谈控制感(5):怎么破控制感损失的局

史方远

职场 心理 成长

Harbor 2.0的飞跃: OCI 兼容的工件仓库

亨利笔记

Kubernetes 容器 k8s Harbor 镜像

Rust 与区块链四月月刊

Aimee 阿敏

区块链 rust 加密货币 crypto

《后浪》产品经理篇(恶搞版)

静陌

产品经理 后浪

Xtrabackup的安装使用

一个有志气的DB

MySQL 工具 数据的分片和备份

严选合伙人(二)

Neco.W

创业 重新理解创业 合伙人

更聪明地学习,而不是苦读——《如何高效学习》

mzlogin

学习

聊聊我对技术一些性质的认识

Tanzv

技术 思考 新人

一文带你看清HTTP所有概念

cxuan

HTTP

吴晟:程序员不当CTO,也能过上理想的生活 |TGO专访_文化 & 方法_InfoQ精选文章