3月18日,腾讯正式对外发布2020年度《腾讯研发大数据报告》,该报告由腾讯技术委员会出品,披露了2020年腾讯在研发投入、研发效能及开源协同等方面的重要数据。
研发人员占比68%,新增代码20亿行
腾讯在研发投入上持续加码。报告显示,2020年腾讯研发人员占公司总人数的68%,同比去年增长16%,在科技企业中位居前列。
在开源协同、自研上云两大技术战略的推动下,腾讯研发效能进一步提升,2020年腾讯新增研发项目超4000个,同比增长22%;新增代码超过20亿行,同比增长67%。研发人员日均完成5242个需求,有30%的需求能够在1天之内得到响应,平均需求响应时长缩短8.66小时,有46%的需求能够在3天内开发完成,单个Bug的平均解决时长较去年缩短了15%,研发更敏捷。
代码质量也是研发人员关注的重点。腾讯倡导“小批量、多批次”的代码提交策略。2020年,代码评审覆盖率达7成,平均每位评审人参评90次,平均每次评审293行代码。
在研发持续交付方面,腾讯平均每周构建次数达170万次,项目年均产物大小1TB,年均交付次数5万次,全年共推动修复代码Bug和安全漏洞131万个,编译加速累计节省编译耗时5.8万个小时。
DevOps工具协同集成,研发效能持续提升
在长期的研发实践中,腾讯推动了代码管理平台工蜂、敏捷研发协作平台 TAPD、智能化持续集成平台腾讯 CI(蓝盾)、集成化研效门户智研、企业级研发云平台等多个工具平台协同集成,共同组成了贯穿上下游的研效工具链体系。这一体系的标准化落地,进一步降低了开发成本、增强了研发人员的使用体验。TAPD、腾讯工蜂、蓝盾三大腾讯主流研发工具的日均API请求量达到四千万次。
2020年,腾讯通过信通院《研发运营一体化( DevOps )能力成熟度模型》系统和工具部分首批评估,获评为卓越级。这意味着腾讯形成了业内领先的研发体系,研发效能工具得到了国家级的权威认可。
C++蝉联腾讯最受欢迎的编程语言。随着云计算和微服务相关技术的进一步发展,Go语言使用次数增速第一,并超越JavaScript成为腾讯第二受欢迎的编程语言。同时,TypeScript以其优秀的架构设计和高兼容性,成为了2020年增速第二的语言,也是最具潜力的前端语言。
技术管理人员继续保持在研发方面的高参与度。腾讯70%的技术Leader持续输出代码。2020年全年,平均每人输出3.2万行,并且参与142次代码评审。54%的12级及以上技术专家潜心编码,人均输出代码3万余行,参与98次代码评审。
开源协同深入人心,开源贡献度居全球科技企业头部
2018年技术委员会成立以来,开源协同已成为腾讯在技术发展层面的一个关键词,开放的技术氛围和开放的代码文化逐渐深入人心。腾讯内部开源代码库新增超过57000个,比2019年增长了29%,有超过17000名研发人员参与贡献内部开源项目。
上线两年时间的腾讯内部技术交流社区“码客”,成为了腾讯研发人员精进技术、交流心得的“根据地”。2020年,码客上有200+个技术圈子助力研发人员学习成长。其中,55%的技术问题能够在提出后的1小时内得到响应,84%的技术问题可以在1天内得到解决。医疗AI、黑灰产人机对抗、Rust语言等新技术话题的关注度不断提升。
除社区分享交流之外,内部竞赛比拼也是腾讯研发人员自我提升的重点方向,2020年腾讯内部技术赛事吸引了近万名研发人员参与,赛事代码总提交次数达316万次。
开源向内提升了公司的研发效率,向外则是连接全球开发者共享知识、共建技术的桥梁。2020年是腾讯开源十周年,十年来,腾讯开源项目在Github上的全球Star数每年都有30%的增长,已经成为全球开源贡献最大的科技公司之一。
腾讯深度参与了数十个国际知名开源项目的贡献,在OpenJDK、KVM等多个顶级开源社区贡献榜中,腾讯均在国内排行第一,作为主要贡献者主导了7个国际知名开源项目的版本发布。腾讯向多个国际顶级开源基金会捐赠了6个开源项目,两大开源项目TencentOS Tiny、TKEstack入选国内首个开源基金会首批捐献项目。
今年抗疫期间,腾讯第一时间参与到Linux基金会全新的公共卫生计划LFPH中,作为中国唯一的创始成员单位,为全球合作抗击疫情做出了贡献。
用技术连接公益
“技术助力公益”则是腾讯技术文化的温暖一面。2020年,腾讯共有1132名研发人员参与了技术公益志愿者活动,总服务时长超过725个工作日,其中最多的一名同事共参与12个志愿项目。
腾讯即视团队积极探索AI安全技术在智慧养老领域的落地,打造智能视频分析解决方案,推出了“智能跌倒监测系统”,当系统发现老人跌倒时,会自动识别老人姿态,并自动报警,让老人得到及时救治,使养老更加智能、高效和安全。
在新冠肺炎疫情爆发的初期,在全国各地的腾讯人快速响应战疫需求,远程协作交付需求9万个,需求交付效率提升17%,交付了许多助疫新项目。通过各类疫情服务小程序,帮助民众更便捷地获取疫情信息和服务;通过腾讯会议、企业微信、腾讯文档等产品,帮助企业远程协作;通过在线教育的综合解决方案,服务全国超 1亿的师生授课、学习;为科研机构提供人工智能和算力支持,加速
医药研究。