写点什么

网易杭研的中台往事

  • 2019-08-30
  • 本文字数:4751 字

    阅读完需:约 16 分钟

网易杭研的中台往事

本文是中台系列的第三篇,第一篇《所有的中台都是业务中台》厘清中台概念,第二篇《如何建设中台?中台建设的组织、支撑技术和方法论》介绍了建设中台的方法,这篇将介绍网易杭研在中台道路上十多年的探索和经验教训,并补充在中台组织管理方面的方法。以下为原文(有少量改动):



我们面临的是一个 VUCA(Volatility, Uncertainty, Complexity, Ambiguity)的时代,控制论告诉我们及时反馈、调整才能到达目标,越来越多的市场变化因素使得顶层设计和长期预测变得几乎不可能。建设好中台,以便组织能更快速的响应变化,是对的方向。

缘起

今天的网易已经到了大学毕业的年龄,游戏、零售、音乐、教育、门户、邮箱、网易云等业务板块都有了明确的形状。时间倒流回到 14 年前,那时的网易 8 岁,才上小学二年级。当时的网易,已经有最大的中文邮箱和广大的邮箱用户,三大之一的门户,还有开创了风气之先的现金流业务 — 游戏。就像一个二年级小学生算是会读书识字了,但还有很多的知识要学,充满利国利民的抱负,网聚人的力量,做美好生活的缔造者。


05 年,机缘巧合下,我们团队成了网易杭州最初的团队(更精确的说,游戏技术大神云风比我们更早就在杭州建了一个小的游戏工作室)。当时的网易已经在互联网技术上碰到了瓶颈,游戏的点卡 Oracle 数据库已经不堪重负,相册的数据库堆在一个 700G 的 MySQL 里眼看要玩不转了,相册十亿级的文件用 NFS 搭出来的分布式存储集群问题频发。


但公司意气风发,MSN Space 引领的 UGC 和 Web 2.0 风起云涌,网易相册非常成功已经是第一大中文在线相册,岂能受限于技术?当时的网易,在北京布局了有道做搜索,在杭州布局了杭研做互联网创新业务。当年第一次在北京见到丁老板的时候,老板鼓励我们在杭州任何与互联网相关的业务都可以试,印象最深的例子是自行车联网,当然这个事情我们后来没做。


虽然技术是很大的瓶颈,但当时老板就认为技术研究和业务不能分开。当时主要是看到 Google 没有专职的研究部门,技术高手和业务是在一起的。所以,研究院就同时背上了业务创新和技术研究双重职责。环顾四周,网易杭研似乎真可能是中国互联网第一个企业研究院,而且是业务实干型的研究院。十多年来,杭研培育了无数业务,比较成功的有考拉、严选、音乐、云课堂、Lofter、云阅读等,早期的博客和相册也不错,只是早就过时了。自然不成功的也不少,比方印象派、梦幻人生(SNS)、网易手机邮(不是手机号码邮箱,是一个比微信更早的类似微信的产品)、网易 Popo、易信等,因为互联网是一个 VUCA 的时代。


研究院的骨干几乎统统来自浙大计算机学院,都是 06 年刚毕业第一份工作就到杭研。说实话,杭研当时搞技术不输国内任何团队,但业务 sense 是一般般的,一群工科男嘛。即便在十多年后的今天,要说业务敏感度、运营能力,仍然压力很大。


但工科直男有工科直男的思维,那就是追求体系化,极度讨厌重复建设。因为 06 年杭研刚正式成立就有好几个业务要并行做(博客、相册、POPO),而哪个能成哪个不能成,也说不准。所以我觉得杭研得是铁打的营盘,业务很可能是流水的兵。我们得考虑把这个营盘打造的好一点,让来的兵成长的更快一些,各方面的战斗力更强一些。这样,打胜仗的概率肯定就会上升。


基于这样的思路,第一年我们专心解决海量数据管理的核心技术难题。06 年 9 月 1 日,随着网易博客的正式发布而上线的 DDB、DFS 分别解决了分布式数据库和分布式文件存储的问题,当时在国内是最早的。当时做博客差不多 20 个人,做 DDB 等平台也有 15 个人,在基础技术上的投入按比例看可谓巨大。07 年我们又投入做了 MapReduce 系统 NEMR、融合多维查询系统等。这几个系统在当时的环境下,基本上就把主要的技术挑战解决了。


既然技术上可以通过专职的团队做的很好,那么其他方面也应该可以。这样,杭研就走上了一条不断建立共享能力团队的发展之路,我们希望这些共享能力综合起来,能够形成一个强大的创新中台(当然之前没有中台这词,叫平台),提高创新的速度和效率,提高成功率。

演化

2007 到 2008 年最早成立的非技术类共享能力团队是用户体验和软件质量,因为我们希望每一个杭研的产品的交互体验和质量都能过关。当然这很大程度上来自于老板的压力,这方面的问题一出很快就会被老板看到,被老板 K 的滋味当然是很难受的了。用户体验和软件质量团队一直延续到今天。


2009 到 2010 年主要建的是数据挖掘、内容安全、移动研发。因为内容安全大量用到数据挖掘的算法,所以数据挖掘和内容安全这两个团队一开始是在一起的。内容安全这两年主要拼死啃一个硬骨头:邮箱反垃圾。后来通过机器学习算法比较好的解决了,直到今天邮箱反垃圾的核心算法还是杭研的团队在做。内容安全后来发展成了全集团的信息安全部,负责网络安全、内容安全、业务安全、系统安全等主要的安全工作。其中内容安全方向除了邮箱,还服务了音乐、新闻、Lofter 等几乎所有互联网产品,不但提供算法和系统,还负责安全策略的运营和人工审核。数据挖掘方面则是在博客里面做了很多个性化推荐、标签推荐等尝试。后来这个团队逐步逐步做成了数据挖掘部,业务范围最广的时候负责了新闻、音乐、考拉、云课堂、Lofter、网易花田等绝大多数互联网产品的推荐和搜索,为业务指标负责。移动研发部则阶段性负责了杭研所有移动互联网新业务,如网易云阅读、网易手机邮等。


2011 到 2014 年又建了项目管理、商业智能、运维部等,从原来偏技术开始走向管理和运营。项目管理部是 PMO 的概念,一方面培养并派出专业的项目经理到各个业务负责项目管理工作,确保研发项目的交付,另一方面这两年也开始主导研发效能工具的开发。商业智能部曾经负责了音乐、易信、教育等所有杭研体系业务的数字化运营分析工作。运维部负责了考拉、音乐、金融、新闻等业务的运维保障,包括了 SA、DBA、PE 和运维平台研发、运维体系建设等职能。


2015 年开始投入建设集团级的用户中心。以统一的账号体系为基础,整合多业务的数据,实现用户标识的统一,并建立起规模较大、覆盖较全、准确率较高的用户标签体系。


我们称这些部门为专业服务部门或专业能力部门,目的是专注的培养某一方面的能力支持业务发展,同时提升人均效能,降低成本。这些部门根据中台是支撑多个前台业务的共性能力组织的定义,很多都具备一些中台的属性,特别是用户中心、数据挖掘、商业智能、移动研发、内容安全这几个。在长期的摸索中,每个中台除了形成了不少的技术和方法论(一般都要求每个部门出一本白皮书)沉淀外,也积累了一些组织方面的经验。

方法论的形成

组织方面最基本的一点是“专人就位”。所谓“专人”,指的是支撑每个前台业务的一定有一个专职的团队,即便只有一个人。所谓“就位”,指的是支撑前台业务的专职人员一定要坐到业务团队中间去。第二点是考核要实现某种程度的挂钩,至少要给予前台业务打分的权利,有时候甚至会直接跟前台业务的某些 KPI 挂钩。


但是如果只是把某一个方向专业的人集中在一个部门,那这个部门只能说是一个职能部门,甚至大家觉得你就是做人力外包的,要么不创造多少价值,要么觉得你培养的人挺好,挖过去。这自然跟中台的概念相去甚远,这样的部门也就不会有长久的生命力。


如同 A 公司的共享业务中心在初期地位低、压力山大一样,每一个专业能力部门的建立已经不易,但发展挑战更大,因为这些部门都不直接创造价值(中台都不直接创造价值)。所以每个部门都在拼命的思考怎么沉淀核心能力,而不只是一些某方面专家的集合。


经过多年的分分合合、起起落落,就大致摸索出了一套建设中台组织层面的方法论,今年云创峰会上大致有过介绍。在我看来,一个标准的中台组织必须有一系列的可以共享的能力沉淀,这些能力沉淀要通过团队、技术和方法论三种方式。团队方面,就是一系列的能力组,比如对数据挖掘中台专业的 NLP、视觉算法和标准化的内容加工团队就是能力组,再比如对质量中台专业的性能测试、移动端兼容性测试等团队就是能力组。技术方面就是要尽可能的将能力和知识软件化、产品化,如项目管理部要主导研发效能工具等。方法论方面就是要形成流程、规范、check list、最佳实践等各种方法论。


一个团队共享能力建设的越好,价值就越大,也就越像中台;共享能力建设的不好,价值就越低,也就越像职能或后台部门。


虽然中台概念上只应该包含共享的能力,但这样“标准”的中台部门也经常会遇到与前台业务结合不够深,合作不够顺畅的问题。这时我们经常采取阶段性的把相关前台的部分团队也整合到专业能力部门的做法,这样在中台部门就有了一个个定向支持对应前台业务的定向组。这就形成了我所称的“胖中台组织”。阶段性的让中台组织长的过胖一些,让中台和前台的边界在一个组织内磨合,过两年再看哪些是属于中台的骨骼,哪些是属于前台的肉,搞清楚了再把肉重新分到前台去。这样,胖中台组织瘦下来,又变成一个标准的中台组织。

挑战及应对

不过即便有了这些方法,我们觉得中台的建设仍然是非常难的一件事。特别是集团和杭研业务的多元化使得要建设业务属性非常好的中台往往没有条件,所以,在很多时候,我们会选择尽量的将专业能力部门的能力下沉到工具和方法论,而将之外的团队重新分流到各前台中去。我觉得这样的管理也应该是合理的,并非说一个中台组织建立之后就必须长期存在。建中台组织是为了做好某方面的能力,如果这方面的能力大部分都可以软件化、方法论化,那么为什么还要维持一个中台组织呢?这时可以把中台退化成为平台组织。


这是杭研在中台建设的一方面,另一方面,考虑到业务多元化的现实,不如选择和各个业务合作,更好的支持各业务建他们的中台。这方面严选的数据中台走在集团前列、考拉的业务中台走在集团前列,都是杭研的老师。杭研则专心做好中台的技术支撑,让考拉、严选、音乐等的中台建的更顺、更好、更快。这次云创峰会推出的网易猛犸 6.0 和新版网易轻舟微服务,就是在这样的背景下打磨出来的数据中台和业务中台的支撑技术。


这也是我对中台建设层次的观点,企业级或者事业部级都可以建中台。杭研建的那些中台可以说是企业级的,但杭研支持考拉等业务建的中台都是事业部级的。一般而言,事业部的业务发展到一定阶段,都可以建中台,也相对比较好建;企业级的中台就要看公司的战略和业务的状况,建设难度也更大。


中台是一个新的名词,但并不是一种新的实践。杭研迫于要并行发展多条业务线的压力,加上理工科厌恶重复建设的思维,不断的建设各种专业能力组织,从而走上了一条摸索建设中台的道路,再到后来一些业务发展大了,又支撑着各业务建他们的中台。这里面经验有一些,教训也很多。很容易失败!


我始终认为,要把营盘打造的好一点,把能力打造的好一点,以便组织能更快速的响应变化,是对的方向。我们面临的是一个 VUCA 的时代,控制论告诉我们及时反馈、调整才能到达目标,越来越多的市场变化因素使得顶层设计和长期预测变得不可能。更进一步的看,能力建设本身也要灵活,因为建设能力也需要投入和成本。技术上,绝不要重复造轮子;组织上,要根据情况在胖中台组织、标准中台组织、平台组织之间灵活切换,不要担心组织调整影响到了某些人,调整带来的重新分配对大多数人来说都是更好的去处。


作者介绍:


本文转载自微信公众号网易云(公众号 ID:Netease_Cloud),作者汪源,网易副总裁,网易杭州研究院执行院长,文章同时发布在其个人公众号冷技术热思考(ID:TechThoughts)。2006 年,汪源获浙江大学计算机专业博士学位,之后加入网易公司。现作为网易杭州研究院执行院长,全面负责网易集团公共技术支撑工作与云计算、大数据业务,主要包括云计算与服务端架构、前端技术、大数据挖掘分析、信息安全、多媒体、运维、质量保障等方向。


相关文章:


《所有的中台都是业务中台》


《如何建设中台?》


原文链接:


《网易杭研的中台往事。网易杭研,中台的长期实践者!》


2019-08-30 11:0421080

评论 2 条评论

发布
用户头像
m
2019-12-16 10:49
回复
用户头像
MMP...
2019-08-30 14:07
回复
没有更多了
发现更多内容

APP为什么用JSON协议与服务端交互:序列化相关知识

程序员啊叶

Java 编程 程序员 架构 java面试

深圳见!云原生加速应用构建专场:来看云原生 FinOps、SRE、高性能计算场景最佳实践

阿里巴巴云原生

阿里云 云原生 峰会

从通信延伸到全行业,亚信科技AntDB 7.0蓄势待发

亚信AntDB数据库

AntDB 国产数据库 aisware antdb

Jenkins 如何玩转接口自动化测试?

Liam

测试 jenkins 自动化测试 API 测试框架

官宣,又一上市公司杀入数据库市场

亚信AntDB数据库

AntDB 国产数据库 aisware antdb

金九银十喜提offer!秋招蚂蚁金服Java研发岗四面

程序员啊叶

Java 编程 程序员 架构 java面试

上海移动基于亚信科技AntDB完成核心账务数据库的国产化替换

亚信AntDB数据库

AntDB 国产数据库 aisware antdb

专访亚信科技张桦:AntDB面向企业核心业务支撑的数据库产品

亚信AntDB数据库

AntDB 国产数据库 aisware antdb

微信公众号借助小程序云函数实现支付功能

Geek_24ed5f

签约计划第三季

如何写好设计文档

观测云

不会多线程还想进BAT?精选19道多线程面试题,有答案边看边学

程序知音

Java 多线程 面试题 后端技术 BAT面试题

突破性能天花板!亚信数据库支撑 10 多亿用户,峰值每秒百万交易

亚信AntDB数据库

AntDB 国产数据库 aisware antdb

一文读懂Elephant Swap,为何为ePLATO带来如此高的溢价?

西柚子

SQL 开始日期、结束日期查询

孙永潮

大模型轻量化实践路径

澜舟孟子开源社区

人工智能 自然语言处理 神经网络 深度学习 预训练模型

文档贡献与写作必读-OpenHarmony开发者文档风格指南

OpenHarmony开发者

Open Harmony

数据中台建设(四):企业构建数据中台评估

Lansonli

大数据 数据中台 7月月更

手摸手实现Canal如何接入MySQL实现数据写操作监听

知识浅谈

MySQ 7月月更

今天拿SpringAOP和自定义注解的通用性开🔪

知识浅谈

切面编程 7月月更

顶礼膜拜!阿里内部出品,全网首发Spring Security项目实战搭建

冉然学Java

编程 spring security springboot Spring 框架漏洞

重磅来袭!豆瓣评分9.9,万人血书的多线程与高并发v2.0版本

冉然学Java

编程 源码 高并发 线程池 多线程并发

你真的了解Redis的持久化机制吗?

C++后台开发

数据库 redis 后端开发 C/C++后台开发 C/C++开发

这88道阿里高级岗面试题,刷掉了80%以上的Java程序员

程序员啊叶

Java 编程 程序员 架构 java面试

面试官:小伙子你来说说MySQL底层架构设计

程序员小毕

Java MySQL 数据库 程序员 面试

面试官:MySQL如何根据执行计划调优SQL语句?

程序员小毕

Java MySQL 数据库 程序员 面试

【7.22-7.29】写作社区精彩技术博文回顾

InfoQ写作社区官方

优质创作周报

Rust P2P网络应用实战-1 P2P网络核心概念及Ping程序

李明

rust 网络 Libp2p

在 Spring Boot 中使用 Dataway 配置数据查询接口

程序员啊叶

Java 编程 程序员 架构 java面试

即时通讯-改变社交与工作状态的新型软件

WorkPlus

面试被问到 HashMap 底层原理?我有点慌.

程序员啊叶

Java 编程 程序员 架构 java面试

闭关三月:整理出了这份对标阿里p7的java秋招面试必备指南。

程序员啊叶

Java 编程 程序员 架构 java面试

网易杭研的中台往事_文化 & 方法_汪源_InfoQ精选文章