腾讯程序员开源协同

程序员杨晓峰开始体会到一种前所未有的“快感” 。
他所在的团队向OpenJDK国际开源社区主分支贡献的代码名列国内第一 , 受到了后者的点名致谢 , 腾讯也成为迄今为止这个社区唯一一家因显著贡献被连续点名致谢的中国公司 。
两位团队成员还获得了社区reviewer权限 。迄今为止 , 在国内公司中有这种权限的程序员 , 不超过三人 。
腾讯程序员开源协同
文章图片

文章图片
作为Java(一种计算机编程语言)开发工具JDK(Java开发工具包)的专家 , 杨晓峰的日常工作是普通人不太看得懂的基础软件研发 。
2019年秋 , 杨晓峰冲着“协同”二字入职腾讯 , 牵头JDK开源协同小组 。简单说 , 开源协同就是腾讯内部源代码全部开放 , 不同团队协同开发 , 共建腾讯基础技术平台 。
如今 , 他牵头的团队自主研发的JDK产品 , 不仅被公司内所有事业群使用 , 帮助多项大规模业务实现最高50%的性能提升 , 还被开源社区高度认可 。
更让他开心的是 , JDK基础软件的研发已直接打通到面对客户的产品端 。客户增长量 , 特别是主动寻求合作的客户增长超出了产品端预期 , 甚至一向要求严格的金融大客户 , 近期也开始在相关产品底层全面使用他们团队自主开发的JDK产品 。
而这一切从0到1的变化 , 发生在短短三年时间内 。
“被看见”
2018年之前 , 很少有人意识到 , 腾讯内部的技术问题已经积累到了刻不容缓的程度 。
熟悉腾讯的人知道 , 腾讯在产品上曾推崇“赛马文化” , 服务各产品的技术团队也在自己“造轮子”、“建工厂” , 最终导致内部“烟囱”林立 , 虽然单个产品技术团队闭环效率高 , 但整体难以形成技术合力 。
2018年 , 腾讯运营管理部在一次梳理中发现 , 公司内部重复的技术团队竟有150多个 。在听到这个情况时 , 就连最高决策层总裁办都震惊了 。以至于腾讯高级执行副总裁、技术工程事业群总裁卢山发出感慨:“有一天 , 我们离开腾讯 , 回头看我们留下的东西 , 都是扎了一堆烟囱的残垣断壁 , 我们内心会不会痛啊?”
腾讯决心要蹚出一条自己的路 。
2018年9月30日 , 腾讯宣布新一轮战略升级和组织变革 , 同时发起开源协同 , 通过整合全公司技术能力 , 打破技术壁垒 , 消除重复建设 。
和当时业界流行的技术中台不同 , 腾讯的开源协同是全公司内部源代码全部开放 , 上层设立技术委员会进行指导 , 底层推动各技术团队成立虚拟组织Oteam(开源协同小组) , 协同开发公司级的技术产品——这让在腾讯工作的程序员们一下子有了被全公司“看见”的机会 。
田甜是腾讯互动娱乐事业群(简称IEG)一名做服务网格技术的程序员 。当业务量增大时 , 需要更庞大的服务网格来避免资源重复浪费 , 为了做好服务网格 , 田甜试着发起了服务网格Oteam , 找到公司里的“同行”一起协同 。
“突然发现 , 同一个领域有好多人和自己在做相同的事 , 这种感觉很神奇 。”田甜说 。
在田甜看来 , 程序员大多个性低调 , 闷头做事 , 以前服务好本部门业务就行 , 现在有了Oteam , 程序员也要把目光投向外界 。2019年10月 , 在服务网格Oteam每半年一次的线下沙龙上 , 田甜发现 , 另外一个事业群的同行最关注服务网格的安全性和稳定性 , 而不是IEG业务场景下最关心的技术架构 。“这样的交流 , 拓宽了我们做服务网格技术的眼界和维度 。”
随着公司内技术同行间不断的“网友见面” , 技术交流的氛围逐渐热烈起来 。Oteam的企业微信群里 , 时不时有人抛出技术问题 , 很快就有其它团队的程序员来解答 。不过 , 技术交流比以前多了 , 程序员们也不一定会彼此服气 , 毕竟腾讯程序员基数庞大 , 有不同看法 , 甚至流派之争再正常不过 。