导航

2017年6月百度谭待分享的《打造非职权技术管理》

Posted on 2021-12-24 11:20  蝈蝈俊  阅读(86)  评论(0编辑  收藏  举报

这篇文章是2017年6月 百度 谭待的分享, 对为什么应该有架构师委员会,以及如何工作讲的非常详细。

谭待 ,百度主任架构师,百度搜索架构整体技术负责人。
主要研究分布式系统和搜索引擎,是百度BVC代理计算和Matrix私有云的主要设计者,两获百度最高奖。
主持设计了百度新一代搜索架构,同时也主导了极速搜索、全站HTTPS等百度搜索的一系列重大革新,也是百度MIP项目整体负责人。

演讲实录

谢谢大家,非常高兴和大家探讨技术领导力的话题。

我简单介绍一下自己。我在百度搜索担当架构师,是一个不折不扣的程序员——这也是我觉得在所有参会嘉宾里非常特别的一点。在我十多年的职业生涯里,我一直保持着纯粹技术的专业序列身份训练,讲人话就是我不带团队。虽然不带人,但很多搜索方面重大的技术革新和产品升级都是我直接负责和领导的。能做到这个事情,不是因为我天赋异禀天赋好,这也是百度搜索团队非常有特色和非常吸引人的地方。他有很独特的技术文化,可以让不具备技术管理职能的工程师,在组织需要时承担起技术管理的职责,并且做出具有独特价值的贡献。这是今天想跟大家分享的内容。

首先说一下什么是非职权的技术管理。这个词是我拼凑出来的。简单翻译一下就是,你负责一件事、领导一项技术、负责一个项目,但是所有的项目成员都不向你汇报。这个听起来特别诡异,因为一般的管理都是与职权挂钩的,否则很多直接有效的调节手段就没法用,比如薪酬绩效,比如需要项目团队加班、996,直接下规定说谁不来就扣钱——我没法没有这样做。我能做的是谈天聊心。

不管我们愿不愿意,一个非常可悲的事实是,非职权的管理方式在技术领域是基本不可避免的。原因很简单,职权一定和组织架构强相关,组织架构是公司和部门为了业务设定和优化的。我们都知道,互联网上唯一不变的就是变化,有新的机遇新的时代到来的时候,一定会跟现有的组织架构产生非常大的冲突。

在座很多人应该都经历过互联网从PC时代向移动时代的迁移过程。公司设立一个部门叫移动产品部,专门负责移动化。但当时公司主要业务肯定是在PC上,主要的技术资产还在PC部门。为了最大限度的用这款资产、让业务快速发展,一定会展开非常多PC部门和移动部门跨团队的技术联合,里面肯定有不少痛苦。后期移动变成主流,进行彻底的架构调整,这就解决问题了。我们现在都说,人工智能时代可能马上到来了,所以这个类似过程还会再经历一遍的。

反过来,我们乐观一点的看,这种非职权的方式对组织和业务来说也是非常重要的。第一个原因,它能很好地突破现在的组织架构限制,解决刚才说的问题。最直接的、一劳永逸的办法是调整架构。然而经历过的人都知道,调整架构是更痛苦的事情,等你调完,人也走的七七八八了。而且这里面有一个度的问题:什么时候开始调整?如果这个事太小,觉得还不足够;往往等到觉得这个事很大的时候,已经错过时机了。如果这个时候,大家都比较习惯在非职权情况下开展工作,那就很容易突破现有组织架构的限制。所以,我说它是一种比较灵活柔和的方式。

第二个原因,它有利于保持技术的先进性。现代社会或者公司都是高度分工的战略组织,如果把大量的时间投入到人的管理上,那在技术领域一定是落后的。所以有时候让处在技术前沿的工程师做这些事情,有利于技术先进性的保持。

最后一个是自主性的价值。你让工程师做管理的事,他会有一种奴隶农民翻身做主人的感觉,“我也能做很多事情”,他们的积极性、满足感和忠诚度都会有很大提升。

既然这种情况是无法避免而又十分重要的,与其被动逃避,不如主动打造这样的机制,让它成为新常态。

要打造这个机制,首先要奠定好一个框架。第一步叫师出有名。前一段时间很火的《人类简史》讲了一件很好玩的事。现代人的祖先只是就是智能人属中的一个人种,还有很多别的人种,这些人跟我们祖先差不多,都能够使用工具,都能够生火,都能够讲话,甚至比我们的祖先还强壮一些。什么原因导致这些人都被干趴了呢?突然有一天,我们的祖先开发出了一个非常有特色的技能叫做八卦,就跟我们现在的八卦差不多。因为有了八卦技能,所以就能发展出更复杂的人际关系。因为共同的喜爱和厌恶,更多人聚在一起,越聚越多,之后就发展出了第二个技能叫做编故事,特别是他们能够去虚构一些在自然世界里并不存在的实体,让所有人认同他、相信他并且传播他。部落就是一个虚构的概念,但是因为假想的共同体,更多人能够聚集在一起,为了共同体而努力。现在我们想打造一个新的机制,创造一个新的制度,首先我们一定要创造假想共同体,通过这个共同体开展事情。这个假想的共同体就是技术委员会。这是第一步。

有了假想共同体,接下来要挑选核心的班底。核心班底非常关键,因为在早期他们会作为主力去实施管理,具有很强的示范作用,所以一定要在人员筛选上注意。有三点非常重要,第一是技术杰出,第二是理解业务,第三足智多谋。前面两点很容易理解,重点说一下足智多谋。你一定要千方百计挖掘能够利用的各种资源,以达到最终目的。这是什么意思呢?因为非职权就是没有职权,但你可能会有其他这些理论资源,你可以说服得到大老板的支持,你也可以制造舆论在内网外网发文章——有些人就能看到这些点看不到有的人看得到都没关系,能把这些资源利用起来,这是一个非常大的差别。

建完核心班底以后,还要干两个事情,第一是授予权力,第二是赋予责任。虽然我们一直在讲非职权,实话实说,如果你真的什么权利都没有,想做技术管理那也是太难了。虽然我们没法在管理上赋予他实际的权利,但可以赋予技术管控权利,比如说对工程师专业晋升的评审权,或者是对重大项目是否上线的Launch Review。一方面这些事情非常适合专业组织来承担,另一方面承担这些事情可以积累足够的权威,开展其他事情时大家都会听他的。这里有一个陷阱:我们一定要分清主次,技术一定是为业务服务的,而为业务真正负责任的其实是管理层、是经理。这个要搞懂,要平衡好,不要对着干。

给予权利之后,就要让TC赋予责任,这样才能运转起来。这也是四步里最关键的一步,而且是常常出问题的环节。一般会有两种问题,第一种是说我们赋予的责任太虚太泛了,比如说你的责任就是把控技术,但做什么是把控技术呢?第二个问题就是轻信工程师可以高度自律,所以不检查结果,最后TC变成纯粹只负责评审项目的临时机构。我的个人经验是,一定要非常清晰明确的定义他要做什么事情,而且定期检查,比如明确定义TC要做的就是阶段性疏理所有技术指标、制定技术规划,而且每半年做一次。做的过程中,发现任何问题,不管是机遇还是挑战,你都要把它变成具体的项目跟进,最后检查你的项目成果。只有通过非常严谨的规定和严格的检查,才能真正把责任落实到行动。

有了这样一套框架,接下来就是反复练习。不论是工程师还是经理都会很不适应,所以我们一定要反复的做、刻意的做,做成一个常态。大家都听过一万小时定律,很多行业达人之所以卓越,不是因为他们是天才,而是因为他们付出了足够多的努力。对组织也是一样的,你想建立新的机制,必须经过反复的练习才能成功——至少你要做一百个项目。很多人成功从被动接受安排变成主动驱动,之前是你告诉他、他去做,后来他发现这个机制很好,就主动去发现问题和解决问题。

举一个例子。这是搜索架构,从流程来看,搜索业务分三步:离线、在线和前端,三者分别配备一位大经理。TC在里面起到非常好的补充作用。从TC角度会这样看待:左边的图是从业务角度看有哪些技术方向,右边红色的是业务指标体系,即从业务角度来看哪些指标是重要的。有了这个图,就可以做几件事情,第一就是合并同类项,比如说在线有存储系统,离线也有存储系统。底层的技术可以合成一个方向集中发展。他们可能重视的关键点不一样,第二个但更重要的是用这种方式驱动业务发展和技术创新。从业务角度看右半部分,现在的指标体系是不是完善?要不要加新的指标?已有的指标哪些需要提升?根据达到指标上的目标以后,再看左边。现有方向设施是否合理?如果不合理,我们就打破这个限制。

其实我们的索引系统是开始一次性建好的,然而组织上分成离线和在线。如果从业务来看,搜索很看重时效性。要提高时效性指标,我们需要把索引系统改了,既包括离线又包括在线,打破原来组织管理的边界。这是没有问题的,因为有机制,直接从技术角度操作。

举两个具体的例子,第一个是搜索安全。很多用户在访问百度搜索时会被劫持,有的会跳到竞品,有的会加很多广告。原先管理划分上并没有直接对应这个问题的组织,所以首先是TC在牵头,进行系统疏理会发现,绝大部分的发生在网络阶段,解决问题最直接的方式就是,怎么把搜索改成HTTPS。这个看起来很简单直接,但其实很复杂。最复杂的一点就是,必须把页面上所有面向所有外面资源全部改成HTTPS。搜索本身作为一个开放的平台,有很多第三方部门,甚至第三方公司在搜索上有资源展示,所以需要拉着所有的其他部门甚至其他公司一起进行改造。这个组织就进一步扩大,把运营人员还有产品都包括进来。花了一年时间,我们终于把这个事做了。对百度来说,还有很多重要的产品,比如贴吧、地图,用户都会遇到这些问题,所以应该是推动这些产品一起进行HTTPS改造。紧接着我们成立了一个全公司范围的推广小组,把这些产品都进行了改造。这时候形势又发生了变化,我们希望互联网上所有的网站都改成HTTPS,实现全网安全。这个过程比较漫长,而且要做的事情比较确定,这个阶段就变成一个实体化的团队在推动。我们回头看整个流程,其实有时候用的是职权管理,有时候用的是非职权管理,非常灵活。核心是,合适的时候用合适的方式。

还有一个类似的案例,就是搜索速度。对所有产品而言,速度都是一个最基本的指标,对搜索,速度也非常关键。以前搜索速度是按照离线、在线、前端进行划分的,离线优化离线速度,在线优化在线检索速度,前端优化前端渲染速度。这里的问题是,尽管大家做了很多事情,但效果都不好。当我们意识到这个问题以后,我们就不是在各自职能范围,而是进行跨越,从全局角度看待这个问题。一旦从全局角度看待这个问题,就可以从全局角度提出解决方案:用户在搜索关健词的时候,预测你就要猜他搜索什么,提前完成搜索结果,比如用户想搜刘德华,他输入刘德的时候我就知道他要搜索刘德华了。这个方案还是比较巧妙的,更重要的是背后管理机制的变化。

案例就介绍到这里。再说点别的。

大家都知道,管理是非常难的,这个非职权技术管理其实更难。我们可以帮助设计交付经理的岗位,让他们进行相应的事情,比如帮助没有太多经验的工程师进行项目的管理、沟通流程、控制推动等等,这样刚开始时工程师没有那么痛苦,而且做的过程中会有非常好的保证。你做事的过程中,学习成长得更快。还有就是能力的培养,管理你毕竟还是需要管理技能的,一般这种培训来说客户的管理都只向管理层开放,不会考虑给工程师公司开放,这也是一个问题。你还是应该提供这样一些机制。

总结一下,这种非职权技术管理看起来怪异,却是我们无法避免的。同时,他对公司运营的发展也比较重要的。如果想打造这样的机制,首先应该定一个框架;有了框架,需要反复练习,使之成为常态,并且提供尽可能多的辅助机制,让他加速。技术总是在短期内被高估,在长期又被低估——世间很多东西都是这样子的。如果你能够保持足够的理性,能保持足够的耐慢性,他一定会在恰当的时候带给你惊喜。

我分享就到这里,谢谢大家。

出处:https://doc.huodongjia.com/detail-3560.html

分享的PPT:打造非职权技术管理