我眼中的 PingCAP 工程师文化|PingCAP 招聘季

从 2020 年 2 月 3 日开始,因为新冠疫情,我们全员 Remote 接近一个月的时间,目前仍在分组单双号交替 Remote 中。在这期间,我参加了一次 TGO 组织的对于远程办公效率的线上讨论会,发现大家都多多少少对远程办公的效率抱有一些怀疑的态度。虽然之前也断断续续在家里有过 Remote 工作的一些机会,不过这次确实是时间维持最长的一次。我个人的感觉是远程对于工作效率的影响是一定有的,但总的来说,至少对于我们的研发团队影响还比较有限。其中的原因可能就是因为 PingCAP 骨子里的工程师文化。

开源协作文化

PingCAP 的工程师文化源于开源协作文化。而开源协作文化得从 ARPAnet 的诞生讲起(1969 年),APRAnet 是第一个横贯美国大陆的计算机网络,是由美国国防部兴建的实验性的通信网络。这一高速信息交换网络的出现,不止为后来的互联网奠定了基础,更是促进了散落在世界各地 “黑客” 的协作,最终孕育出了开源协作的文化

在此开始的几十年时间里面,出现了许多耳熟能详的项目,像 AT & T 的贝尔实验室发明的 Unix,MIT 开发的不兼容分时系统(ITS),Stallman 的 Emacs,以及 Stallman 为了反对 Unix 封闭而发起的 GNU (GNU’s Not Unix)操作系统。这个时期经过了非常漫长的纷争以及演进,在我看来,当时的人们虽然通过网络已经建立了一些沟通交流,但是对于协作方面,还是处于原始的集中式,比如 ITS 是由 MIT 大学实验室研发的,Unix 是贝尔实验室研发的,Emacs 以及 GNU 操作系统是 Stallman 个人开发的。

这一切是被一个叫 Linus Torvalds 的不起眼大学生终结的,1991 年他从 MINIX(一个用于教学的类 Unix 系统)开始开发了第一个 Linux 内核版本,发布在互联网上。由此吸引力来自世界各地的互联网黑客们前赴后继的投入 Linux 的开发,今时今日,Linux 已经成为世界上最成功的操作系统之一。

在我看起来,Linux 跟其他类 Unix 系统的不同之处在于它的协作方式,关键词就是 “开源”,“分布式协作”。所有人可以修改所有东西,它吸引了数以千计的贡献者,大家互相不认识(也不需要认识),通过互联网交流,提交工作成果,然后最终被合并到一个地方。这个模式,也最终带来了 Linux 前所未有的成功,它的成功不止是软件工程上的,在我看来更多是社会学意义上的。

引用来自 《大教堂与集市》中的一段经典的话:

Linus Torvalds 的开发风格是:早发布、常发布、委托所有能委托的事、开放到几乎是混乱的程度,这些都令人感到惊讶不已。在 Linux 社区里,没有建筑大教堂那样的安静与虔诚,倒更像是一个乱糟糟的大集市,充满了各种不同的计划和方法,而稳定又一致的一个操作系统就这么诞生了,这真是奇迹中的奇迹。

PingCAP 工程师文化

PingCAP 的工程师文化,我认为是由分布式的开源协作文化所衍化出来的。

面试的时候经常会有同学问我,PingCAP 也有各地 Office,跟其他公司的异地 Office 有什么区别吗?我认为主要是在做的事情上面,我们不会按地域划分团队职能,没有类似硅谷 TiDB 团队或者广州 TiKV 团队这样的情况,在 PingCAP,我们只有一个 TiDB 团队,也只有一个 TiKV,TiFlash 团队,团队成员或许分布在不同的地域,成员之间的协作通过网络完成,诸如 daily catch-up,weekly meeting,RFC 等等都是由网上完成。有时候同事就坐我边上,我也会通过网络跟他交谈,这并不是因为我害怕跟他交谈,是因为上一秒可能我刚跟新西兰、北京的同事交流,切换频繁反而会带来低效。

在之前我司 CTO 黄东旭写过一篇文章 《PingCAP 的 5 年远程办公实践》 中提到了我们用的工具,包括在线文档协作工具、GitHub、Zoom、Slack,微信、企业微信、Confluence、JIRA、Trello、Jenkins 这些远程协作软件的成熟,更是让我们的效率有了大幅度的提升。所以这一个月来,跟去 Office 的协作效率相比,并没有感觉到明显的下降,因为对于我这种在广州分部的员工来说,平时跟团队同事的协作本来也是 Remote 形式的。反而是因为生活工作的界限模糊了,工作效率反而更高了一些(如何避免 Remote 过劳是另一个话题)。

另外,PingCAP 的 Remote 文化,也并不是所有的同学都在家里办公。这主要是考虑到一些现实原因,包括上面提到的 1 on 1 需要面对面的时候可以更加感受到大家的情绪。还有一个最重要的原因,也是现在我在家办公了一个月感受最深的一点是:生活跟工作的界限需要一定的区分。

“小黑屋”

大家仔细回想一下自己感觉效率最高的项目协作模式是什么?在我加入 PingCAP 之前,我对这个问题的回答是:小黑屋式封闭开发。

拉上前端,后端,产品,DBA,运维等等相关的同学组成一个项目组,大家收拾好家当,统一搬到一个 “小黑屋”(办公区域)里面。产品转头就能找到开发的同学,前端同学可以要求后端同学帮助自己调试测试中遇到的接口问题等等。

每天开始工作以前,大家站在一起过一下昨天的进展,以及遇到的问题。项目经理每天把一天中需要完成的任务贴在白板上,让每个人认领。似乎目前看起来,整个协作方式非常的高效,确实在不少公司里面,“小黑屋”就是作为攻关的方法。

不过这里忽略了一个很重要的问题,如果这个项目足够复杂,需要协作的人一个 “小黑屋” 放不下;又或是更重要的一点:如果最适合做此项目,或者最有兴趣做此项目的人,并不愿意呆在同一个城市,或者他有其他更让自己舒服的效率更高的工作方式——这些问题都会导致 “小黑屋” 模式会失效。

这些问题正是 PingCAP 所在意的问题。在过去超过 5 年的摸索中,我们也得出出了一些比较高效的项目远程分布式协作方法以及经验。如果大家有更多的兴趣的话,欢迎加入我们。

更多的等着你来感受

当然 PingCAP 的工程师文化远不止这些,也许下面的一些例子可以给大家更多的直观感受:

  • 我们没有上下班的时间限制,“Get Things Done” 是唯一的要求;

  • 每周五下午的 TGIF(Thank God It’s Friday),大家可以在申请面向全公司展示一些最近学习、工作的有意思的成果;

  • 不定期举行的 All hands 会议,会上由公司创始人向大家同步各种公司信息,以及自由提问环节(可以问任何问题);

  • 我们内部经常举行的业界前沿、经典 Paper 分享会等等。

说了这么多,不如亲身体验来得真切,如果你对“工程师文化”有所向往,想要与我们并肩、挑战技术难题,让世界变得更加美好一点,那么就请加入我们吧!

加入我们吧!

我们认为优秀的工程师或多或少有以下共同特质:

· A Quick Learner
· A- n Earnest Curiosity
· Faith in Open Source
· Self-driven
· Get Things Done

如果你符合以上特质,欢迎进入招聘页面查看目前开放的工作机会。

简历投递通道:[email protected]

实习生:公司的各项福利和学习资源对实习生全面开放,更重要的是实习生还未毕业就有机会接触工业级项目,而且实习期间表现优异者将有机会获得校招绿色通道特权。针对实习时间并不充裕的小伙伴,你可以先通过 Talent Plan 丰富基础知识(https://university.pingcap.com/talent-plan/),也可以通过参与 TiDB 开源社区获得更多实践机会!

伯乐推荐:如果你身边有符合以上要求的小伙伴,也可以找我们聊一聊,推荐成功就有机会获得伯乐推荐奖励。伯乐推荐邮件格式:[伯乐推荐] 候选人姓名-职位名称-推荐人姓名-推荐人手机号。

延展阅读

是的,我们在招人!PingCAP 2020 招聘季正式开启

TiDB Architecture Team:挑战数据库的本质难题

揭秘 PingCAP 年轻前沿的团队:用户生态

TiDB SQL Infra Team:一起打造从计算层到存储层的完美桥梁

写给 TiDB 原厂 DBA 的一封信:连接技术和价值的“最后一米”

TiDB SQL Engine Team:纯手工打磨前沿的优化器和执行引擎

E.T. 团队:TiDB 开源生态宇宙构造者

猜你喜欢

转载自blog.csdn.net/TiDB_PingCAP/article/details/105586213