读书笔记:独角兽项目

《独角兽项目》是《凤凰项目》的续篇,和第一本书一样,这也是一本小说,从主人公玛克辛的视角,讲述了凤凰项目的起起伏伏。

这几年帮助很多企业做敏捷转型,也和一群朋友们一起用心地深耕于数字化研发的道(理论)与术(实践),帮助我们的客户推进数字化转型。有意思的是,两年前,我曾经一度认为软件这个行业已经发展得如火如荼,云计算、大数据、AI这些先进的技术已经极大的改变了各行各业。说技术推进商业变革,丝毫不为过。

然而,软件这个行业远没有我们想象的那么成熟。且不论一些传统行业的信息化成熟度仍然很低,即便一些处在风口浪尖企业的数字化能力也是参差不齐。

这本书之所以吸引人,是因为小说中的很多情景是现实的缩影。它能够和许多读者产生共鸣。

先看看书中的几个场景:

故事一:凤凰项目将于明天5点正式上线

玛克辛向她旁边的一个人大声问道:“凤凰项目以前在生产环境中部署过吗?!”

“没有。”他大声回答。

“我们有发布团队吗?”玛克辛问道。

“没有。今天组织了一个正式的发布团队,但我不知道是谁来负责。”他回应着,并模仿出紧张和恐惧时咬指甲的工作。

玛克辛看着他,无言以对。

故事二:凤凰项目的构建

这里有Java的JAR文件、.NET的二进制文件、Python脚本和Ruby脚本,还有许许多多bash脚本。玛克辛对凤凰项目构建越来越大的规模和多样化感到既敬畏又担心。“这也太疯狂了。”她想,“怎么会有这么多团队在凤凰项目中工作呢?”

她怀疑任何人都无法理解整个系统,尤其是当系统由这么多不同的技术栈组合而成的时候。

故事三:自动化测试

在过去的一个月里,他们已经为凤凰项目构建了大量自动化测试,以便进行更好、更安全的变更。这一努力取得了巨大的成功。然而,由于测试越来越多,现在完整执行一遍需要几小时。这导致开发人员开始避免提交变更,因为他们不想等待漫长的测试时间,

更糟糕的是,一些自动化测试间歇性地失败。例如就在上周,玛克辛看到一名开发人员运行自动化测试失败了。然后他又运行了一次,结果再次失败。他接着第三次运行,简直像在赌场里玩老虎机。但这次测试居然通过了!

玛克辛尴尬又厌恶地想:“这根本不该是开发团队的工作方式。”

故事四:系统真实用户的声音

找到正确的零部件与很多因素有关。通常情况下,客户是不知道的。当这种情况发生时,你们也要走道他们的汽车前,帮助他们找到所需的信息。最快的办法就是把所有信息就记录在这张小表格上。

"没办法用计算机查到这些信息吗?"玛克辛提问。

“相信我,用纸和笔容易得多,展示完如何在纸上记录之后,我们会使用计算机系统,你会明白为什么我们建议每个人都用手来做。”

“这太尴尬了。”玛克辛想,“我们辛辛苦苦开发了这些系统为员工服务,但是质量差得逼他们还在使用早已过时的纸和笔。”

在许多咨询顾问眼里,每日构建、自动化测试、持续集成、以用户为中心,这些都已经耳熟能详,而且很多管理实践和工程实践早已深入人心。

遗憾的是,事实并非完全如此。所幸,书中,玛克辛和她的伙伴们组织了“反抗军”,并取得了胜利,继而在企业内部建立了一种卓越的工程师文化——“杰出工程师”:

通过指导、扶持和正式培训计划来培养下一代技术领导者;

建立并参与跨团队协会,专注于安全、性能、站点可靠性等技术领域;

指导创建治理和架构评审职能,该职能可以不断演进,以满足公司在未来几年业务发展的需求;

担任面向技术群体的公司代言人角色,以提升公司品牌、协助招聘、与顶尖技术公司争夺人才。

写在后面

类似“凤凰项目”这样的困局在面对大量遗留系统的时候仍然可能是常态。如果要取得“反抗军”的成绩,就必然需要持续试验和学习的迭代,并且由于每家组织的情况不同,也不会有教科书式的标准流程。

作为团队和组织的管理者,对于技术的持续发展和应用必须心存敬畏,迈步走向技术创新实践的星辰大海,未来的无限可能性必会令人心潮澎湃。

你可能感兴趣的:(读书笔记:独角兽项目)