本文要点
《独角兽项目》是一个虚构的故事,讲的是一次与凤凰项目同时进行的 DevOps 转型。在这本小说中,Gene Kim提出了五大理念:局部性和简单性;专注(Focus)、流(Flow)和乐趣(Joy);改善日常工作;心理安全;最后是客户至上。
这本书证明了 DevOps 运动的重要性,因为它是一种更好的工作方式,可以更快、更安全、更快乐地提供更多的价值。本书描绘了在扩展 DevOps 并提升开发人员工作效率时,所需的不可见结构和架构。
五大理念共同创造了引发业务创新的合适环境。它使组织能够保留维持盈利业务所需的结构,同时改进和打破阻碍增长和创新的结构。
这五大理念可以用作Geoffrey Moore所提出的三大层面商业模式的蓝图。第一层面是核心业务,稳定、可预测且官僚化。第二层面是规模较小的业务,它们会带来新的客户、新的功能和新的市场。第三层面中的业务是高度创新的组织,致力于探索全新的、破坏性的和高风险的想法。
《独角兽项目》是一个虚构的故事,讲述了一次与凤凰项目同时进行的 DevOps 转型。在这本小说中,Gene Kim 介绍了五大理念:局部性和简单性;专注(Focus)、流(Flow)和乐趣(Joy);改善日常工作;心理安全;最后是客户至上。
小说中的关键人物 Maxine 是一位才华横溢的首席开发人员和架构师,她被当作是一次宕机事故的责任人,并被凤凰项目踢出了团队。在接下来的故事中,她与公司内的一些异见者组成了一支团队,共同面对他们过去积累的问题和抵触变化的流程,并运用五大理念来打造出积极且持久的业务、技术和文化变革。
这个故事对于在大企业工作的人们来说并不陌生。对于许多试图转型为数字化精英企业的组织来说,这些挑战是很常见的。五大理念中所描述的文化和组织原则是实现可持续业务产出的基础,并且已经被社区提炼和采纳为 DevOps 的核心价值观和原则。
在DOES 2019上,阿迪达斯的平台工程高级总监Fernando Cornago提到了这本书对许多开发人员以及业务和 IT 领导者的影响:"《独角兽项目》写得太棒了……。它让我回想起了在阿迪达斯过去 4 年来走过的漫漫长路。"这本书和五大理念无疑将促进对 DevOps 的理解和应用,并指导领导者调整其组织结构以实现绩效目标。
《独角兽项目》将于 11 月 26 日面市,InfoQ 读者可以下载该书的摘录。
InfoQ:祝贺 Gene 的《独角兽项目》出版!谢谢你接受 InfoQ 的采访。你想与我们的读者分享哪些重大收获?
Gene Kim:我想提到的要点是”五大理念”。在凤凰项目中,我使用了三种方式和四种工作类型来描述重要的概念。同样,在独角兽项目中,我定义了一系列价值观和原则,称之为”五大理念”,以应对影响当今工程和业务的最重要的 IT 挑战:
第一个理念是局部性和简单性;
第二个理念是专注、心流和乐趣;
第三个理念是改善日常工作;
第四个理念是心理安全;
第五个理念是客户至上。
我的主要目标是证明 DevOps 运动的重要性,因为它是一种更好的工作方式,可以更快、更安全、更快乐地提供更多的价值。为此,我着眼于解决所谓不可见结构(即架构)的问题,这种结构可以提高开发人员的工作效率并在大型组织中扩展 DevOps。
InfoQ:能详细说明一下五大理念吗?我们又该如何在组织中利用它们?
Gene Kim:第一个理念是局部性和简单性。局部性指的是开发团队能在多大程度上在一个位置(而不是许多地方)进行本地代码更改,而不会影响其他团队和位置。如果一个团队需要安排部署计划,并且需要其他 40 至 50 支团队与他们一起制定计划,那么最后什么都做不成。此外,如果负责交付单一功能的团队必须与其他两支或许多开发团队协调,那么这只会给所有这些团队带来延迟和挑战。这就是局部性的概念。
局部性需要简单性:所谓简单性是指,我们可以在多大程度上真正使应用程序彼此解耦,并完全分开它们。第一个理念适用于架构模式,并且与”改善日常工作”的第三个理念相关,因为要实现第一个理念,我们需要腾出空间进行日常改进,并优先考虑减少技术债务。
第二个理念是专注、心流和乐趣。当开发人员能够专注于以最小的依赖关系、延迟和障碍来编写代码时,这就会创造价值流,从而带来乐趣。当他们全神贯注工作时会真正体会到乐趣,忘记时间,甚至达到忘我的境界。我认为这就是开发人员的工作对我的意义所在。
第三个理念是改善日常工作,从而解决技术债务和架构问题。FANG,包括 Facebook、Amazon、Netflix、Google、eBay、LinkedIn 和 Microsoft 等精英组织之所以会成功,是因为他们都有意识地决定还清技术债务。他们全都竭尽所能,以确保开发人员的日常工作能够顺利完成,并尽可能减少干扰和阻碍。有趣的是,所有这些公司的首席执行官都是技术领导者。
另一方面,有一些公司(比如诺基亚就是一个很好的例子)没有优先解决其技术债务,或推动其技术和架构的现代化。
当我与Nicole Forsgren博士和Jez Humble共同为Accelerate和DevOps现状报告做出贡献时,我们认定架构是性能的最佳预测指标。
架构使团队能够独立开发、测试和向客户部署价值,而无需与其他 20、30 甚至 40 支团队耦合。这个发现使我产生了兴趣,开始探索开发人员编写可以与他人解耦的代码的重要性。
在今年的DOES Vegas大会上,我请CSG的高级副总裁兼首席架构师Scott Prugh介绍了他们的技术和架构转型。我认为重要的是让技术领导者意识到,技术债务和遗留体系会拖累有价值的开发工作。如果开发人员需要访问四个不同的系统,并花更多时间与不关心它们的人谈判沟通,或者不得不干等几个月的时间,那么这些障碍对于他们的整体体验和企业绩效目标将带来毁灭性影响。
第四个理念是心理安全。我们从《DevOps 现状报告》以及谷歌的多份重要研究中可以得知,心理安全是团队绩效的最高预测指标之一。谷歌确立了一套规则,告诉团队成员在多大程度上可以安全地讨论问题、说出自己的想法而不必担心受到谴责或被嘲笑、指责。
在《独角兽项目》的开场中,独角兽项目的主要负责人 Maxine 被当成了一次薪水断付的责任人,而有些人被解雇,有些人担心失业。
最后,第五个理念是关注客户。这是一个非常有趣的探索,Compuware 首席执行官Chris O’Malley和微软技术研究员Jeffrey Snover引起了我的注意。客户关注与Geoffrey Moore定义的"核心和环境"之间的差异有关。核心创造持久的业务优势,而环境则是其他一切。核心是客户愿意支付的费用,他们不关心环境。例如,我们喜欢人力资源系统、工资单和支持员工的系统,但是客户不愿意为世界一流的工资单系统付费。这些系统是关键任务,但不能创造竞争优势。在我们为核心功能和应用程序提供资金时,我们需要确保环境不会杀死核心。
Maxine 是一位非常有才华的架构师,知道五大理念的模式。在重建声誉和职业信誉时,她观察到了反模式。每当她环顾四周时,她都会看到第一个理念的反模式、第二个理念的反模式,依此类推。
InfoQ:在 Maxine 经历的这段故事中,你探索了多种业务模型,以及组织如何创建合适的结构和环境来创新,并不断响应市场变化。能否多讲一讲业务创新模型的话题?
Gene Kim:这个故事确实围绕着客户关注这个主题,这也是点燃硝烟的战场。五大理念共同为业务创新创造了合适的环境。Maxine 切身体会到,她的组织要实现这一目标有多么困难,因为他们需要退役许多遗留的后台办公系统、旧产品和服务以及过多的架构债务。所有这些都得到了坚实的政策和流程支持。
这五大理念使组织能够保留维持盈利业务所需的结构,同时改进和打破阻碍增长和创新的结构。五大理念可以用作由 Geoffrey Moore 在他的著作《跨越鸿沟》和《获胜地区》中所讨论的三大层面商业模式的蓝图,这种模式已经在麦肯锡的推广下广为人知。
第一层面是核心业务,每年可产生数十亿美元的收入,而第三层面是新兴项目,可能会保持公司的未来优势。第一层面是可预见的、缓慢的,并且其文化是官僚主义和风险规避的乐园。老式组织通常会与第三层面展开战斗,以保护第一层面的现状。
第二层面是规模较小的业务,通常能产生 1 亿美元左右的收入,并且正在成长为第一层面的业务。这些机会产生了新的客户、新的能力和新的市场。他们在探索新的支持流程以提高效率。
接下来是第三层面的业务,也就是长期、面向未来和高度创新的实验。人们在这里探索新的想法、不同的市场和不同的商业模式。几乎所有初创企业都在第三层面。这些业务具有很高的适应性,因为它们欢迎风险。他们在实验中学习。
第二层面的业务和营收来自第三层面,第一层面则来自第二层面。处于第二层面的公司看起来像是没有资金问题的初创公司,因为它们像初创公司一样运作,并且不断地努力找出能够吸引关注的事物。
第二层面和第三层面的主要特征是它们的学习文化,而第一层面通常被视为顺从文化的代表,各个层面之间存在很大差异。
InfoQ:业务创新和价值流是这个故事的中心,然而”客户至上”是第五个也是最后一个理念。你是否打算将开发人员的工作经验、架构和安全性的重要性置于客户价值之上?
Gene Kim:这是一个很好的问题。我之所以是按这个顺序阐述这五大理念,是因为这样更符合故事的叙述和流程要求。这就像马斯洛的金字塔:如果我们都知道最重要的是什么,但我们做不到它,甚至不能在自己的笔记本电脑上构建出来,我们就无法真正为客户提供价值。我想首先关注的是建立开发人员的支持系统,让他们感到高兴,给他们自主权,从而专注于交付工作。接下来,我们可以解决一些影响解决方案的根本问题,然后创造一个安全的,讨论这些问题的环境。最后一个理念是公司的最高层级,那就是:我们是否真的清楚哪些是核心,哪些是环境。这也是开发人员的控制力和影响程度最低的地方。
InfoQ:《凤凰项目》(Phoenix Project)于 2013 年问世。自那以来出现了哪些重要事件或人物,影响了你和《独角兽项目》的故事?
Gene Kim:有两大事件促成了这本书,并影响了其中的故事。首先是在 2014 年开始举办的DevOps企业峰会,其最终成为全球最大、最令人赞叹的 DevOps 企业社区之一。我目睹了所有这些英雄式的转变,并有机会与这些非常勇敢的人互动交流;他们经常为组织中的新工作方式铺平道路,经常像 Maxine 一样制造叛乱,试图推翻强大而古老的旧秩序。《独角兽项目》的目标之一就是向一直以来激发我灵感的令人赞叹的 DevOps 企业社区致敬。这些社区和工程师们正在改进各个团队的技术实践,正在帮助组织生存并在市场中取胜,而且这样做经常会冒着极大的个人风险,就像 Maxine 那样,因为许多人和领导者不想继续转型之路。要带领整个组织转变,需要非常特殊的领导才能。
还有一件事也改变了我的观点并促使我写了这本书。大约三年前,当时我开始学习一种新的编程语言Clojure。Clojure 不仅将编码的乐趣带回到了我的生活中,而且向我展示了一整套隐形结构,这是提升开发人员生产力和推动创新所必需的。这种无形结构属于架构的范畴,我将其定义为技术债务的对立面。大型复杂组织与 FANG 精英企业(Facebook、Amazon、Netflix、Google 和 Microsoft 等)的关键区别在于,前者有着 40 至 50 年的累积技术债务,而年轻的公司则没有。FANG 和科技行业独角兽企业都处在其发展历史中的一个阶段,它们不仅意识到了解决其技术债务和现代化其基础架构的重要性,而且还做出了冻结一些功能的业务决策;他们宣布技术债务破产,并同意投入适当的资源,重新构建其架构,并创造条件让工程师提升编程速度,从而确保胜利。
大多数大型复杂组织尚未做出的这样的决定和转变。他们还在使用运行了 20 年的 SAP 实例,运行着四个或更多不同的仓库管理系统,依此类推。这就是我们希望本书中的英雄身份是开发人员的原因之一:Maxine 是一位非常有才华的开发人员,她看到了所有这些问题,并在其合伙人 Kurt 的帮助下推动了正确的变革。
InfoQ:考虑到《独角兽项目》的故事和视野,它与《凤凰项目》的目标受众是否有所不同?
Gene Kim:是的,受众是不一样的。这是一个艰难的决定,直到出版截止日前夕我还在不断审视这个决定。《凤凰项目》的受众主要是领导层。主角 Bill 是运营副总裁,他的老板是 CIO。那本书的真正目标是针对技术领导者及其业务领域的同行。
《独角兽项目》的受众是不一样的。我针对的是开发者社区。我很想让技术领导者阅读这本书,但是如果必须在技术领导者和开发人员之间进行选择,我希望这本书可以被后者看到。希望它能激发他们参与领导,并告诉他们为什么技术债务正在杀死他们。我希望它能帮助开发人员与领导层交流,共同理解数字革命的紧迫性,并作为一个案例,证明他们在日常工作中需要获得所需的资源和数据,才能更好地交付业务价值。
我希望技术领导者也能读读这本书,进而消除他们面临的技术障碍,以支持想要改善其工程文化的企业革命者。
InfoQ:书中有一句引用引人共鸣:”这不是一个小鱼吃大鱼的故事;这是快速击败缓慢的故事。”如今,每个组织都渴望比竞争对手更快地进入市场,而独角兽项目为所有传统和大型组织带来了希望和蓝图。你能否详细说明这意味着什么,以及我们如何才能实现这一目标?
Gene Kim:这是从 Chris O’Malley 那里借来的话,他在去年的 DOES小组讨论中提到了这一点。这样发展下去,结果会是大而快的组织击败大而慢的组织,并碾压小而慢的对手。在我看来这是很明显的:DevOps 未来能创造的大多数经济价值将来自各个行业的最大品牌,因为这些大公司拥有客户群、渠道、市场专业知识,并且他们还拥有工程师,成千上万名工程师。这些大型组织对 DevOps 进行大规模投资,并致力于降低复杂性,以实现工作流和价值流的循环,他们当然有权取胜。
InfoQ:你在书中写道:”技术需要嵌入业务中,不能只停留在外部或只是与业务保持一致。” 在故事中,重点强调了产品价值流中涉及的所有角色之间协作的重要性,而跨技术和业务角色(例如架构师、开发人员、测试人员、设计师、供应商和领导者等)之间的协作非常重要。因为我的工作就是消除业务和技术之间的障碍,所以我对此感触颇深。你如何看待业务团队与工程团队之间的关系发展?
Gene Kim:我想探讨的是,当每个人都肩负起和产品相关的责任,当安全性成为每个人的职责,等等,这样的场景是什么样的。本书的一个重要主题和目标是要证明,当团队中的每个人,从产品到开发人员,都拥有相同的愿景,了解他们所服务客户的愿望,共同为客户创造价值时,他们就会更好地合作,创造出最好的产品。
相反,DevOps 团队必须等待产品负责人向他们提供用户案例。这样是不够的。实际上,书中我最喜欢的一段是当有人说到:”我们必须去问业务”,而开发人员则回答:”我们就是业务,我就是业务,他们不是我们的客户,他们是我们的同事!”
我认为我们需要改变技术和业务的组织方式。我想展示我们过去是如何对待开发团队的,一直以来我们都将业务视为外部事物。但是,企业和工程部门比以往任何时候都需要共同努力,以为其最终用户提供价值。
团队必须参与到一些业务和产品管理活动中,因为如果他们不了解上下文或对产品路线图没有任何认知,只是不断地收到产品积压,那么他们就很难重构出真正符合客户需求的产品。与客户互动并听取他们的意见后,就为开发人员提供了他们创新所需的环境。
InfoQ:关于这本书本身,以及它为数据驱动和基于数据的数字化转型所展示的重要地位,已经有了很多很棒的反馈。
Gene Kim:是的,这是很棒的观察结果!《凤凰项目》讲的是关于 DevOps 和帮助企业获胜的故事。《独角兽项目》则是一本关于开发人员、数字化变革以及数据时代盛景的小说,而这实际上就是本书的副标题。这对我来说非常重要,因为这不仅谈的是获取数据,还涉及让开发人员学习本能地生成可放入代码中的数据,以便他们为下一个项目提供帮助。我们需要更好地了解客户的需求,并去理解该如何满足他们的需求。此外,我们还要为组织中的其他所有人提供更好的信息。我很喜欢 Steven Spear 博士的话:”通过这种方式,我们可以结合许多人的努力为所有人创造持久业务优势”。我认为这是一个关于数据的故事,我们正在学习如何将代码生成为数据,并且数据使将来的一切努力都能获得更好的业务成果。
作者介绍:
Gene Kim 是屡获殊荣的 CTO、研究人员和作家,自 1999 年以来一直在研究高水平技术组织。他是 Tripwire 的创始人,担任其 CTO 已有 13 年了。他撰写了六本书,包括《独角兽项目》(2019),《凤凰项目》(2013),《 DevOps 手册》(2016),荣获 Shingo 出版大奖的《加速》(2018)以及《可见运营手册》(2004-2006)。自 2014 年以来,他一直是 DevOps 企业峰会的创始人和组织者,研究大型,复杂组织的技术转型。2007 年,ComputerWorld 将 Gene 列入”40 岁以下值得关注的 40 位创新 IT 人士”名单,并因在该领域的成就和领导地位而被普渡大学评为计算机科学杰出校友。
原文链接:The Unicorn Project and the Five Ideals: Interview with Gene Kim
评论