任何一个领域都遵循从新人到熟手,从熟手到专家的路径。在成长过程中,DevOps人经常会陷入没人带,没人管,找不到职业方向的迷茫。

DevOps是在商业演进与企业协作的进化过程中诞生的一个全新职业,被很多人看成是一个“全栈”岗位,是能开发、会运维的复合型人才,但想要从事DevOps工作要从哪学起?如何入门?又该如何精进?

我们对101名DevOps专家进行调研,问题只有一个:从入门到熟手,再从熟手到专家的成长路径中都看了哪些书?最终选出了39本推荐度最高的书籍,分成基础敏捷实战、敏捷测试、精益系列、技术工程、DevOps、教练、引导、大规模敏捷这8大部分,建议每一个DevOps从业者收藏阅读。

基础敏捷实战

《Scrum要素》

本书以一种轻松易懂、简洁精练的方式,介绍了Scrum 方法的核心要素。Scrum 入门级读物,内容精练,轻松易读,是帮助软件开发人员认识、初步了解Scrum 方法的佳作。通过阅读本书,可以厘清Scrum的相关知识和概念,为采用和实践Scrum 方法做好充分准备。

《敏捷革命:提升个人创造力与企业效率的全新协作模式》

本书由Scrum创始人写就,以讲故事的方式,讲述Scrum的由来,并逐步推进的过程。同样是入门级读物。

《Scrum精髓:敏捷转型指南》

如果想用Scrum来开发足以引爆流行的产品和服务,本书就是你梦寐以求的完全参考。

作为业内领先的敏捷教练和培训师,Kenneth Rubin用通俗易懂的语言和丰富的实例分享他十多年的实践经验,诠释Scrum的价值观、原则和实践,描述一些灵活、可行的方法帮助我们用好Scrum。

《看板方法:科技企业渐进变革成功之道》

看板方法脱胎于丰田生产方式和约束理论,是精益方法的进一步延伸。它通过限制在制品的数量等一系列简单可行的技巧,发现和缓解软件开发过程中的压力和瓶颈,提高生产效率。本书重点在于澄清看板方法,并提出在企业实施看板的解决方案。

“看完本书最受启发的是,制度和方法论对效率的影响程度,是远超想象的。另外对于「浪费性」活动的总结也很到位:事物成本、协调成本、破坏负载。看板最重要的精髓,就是公开透明、锻造团队、提升可预测性。”

《看板实战》

“看板的使用已经成为了大家公认的方案,如何有效使用看板,看这本书就够了。”

《敏捷软件开发:原则、模式与实践》

在本书中,享誉全球的软件开发专家和软件工程大师Robert C.Martin将展示如何解决软件开发人员、项目经理及软件项目领导们所面临的最棘手的问题。

这是一本综合性、实用性的敏捷开发和极限编程方面的指南,把软件工程,设计模式及面向对象的开发思想很好地融合到实践中去,对每一个观点,都有手把手的展开例子,不止是教怎么做,更多的篇幅是在介绍为什么要这么做,这么做解决了哪些问题,以及可能会引入什么新的问题。

《用户故事地图》

对于软件开发而言,用户故事地图是一个很有价值的工具,但前提是你必须明白它的用途和正确用法。用户故事地图很容易被误解和误用,因此,本书深入解释了如何用它来帮助团队始终聚焦于用户及其需求,而不是热衷并痴迷于单个炫酷的产品特性而迷失方向。

本书以用户故事地图为主题,强调以合作沟通的方式来全面理解用户需求,涉及的主题包括怎么以故事地图的方式来讲用户需求,如何分解和优化需求,如果通过团队协同工作的方式来积极吸取经验教训,从中洞察用户的需求,开发真正有价值的、小而美的产品和服务。

《用户故事与敏捷方法》

本书详细介绍了用户故事与敏捷开发方法的结合,诠释了用户故事的重要价值,用户故事的实践过程,良好用户故事编写准则,如何搜集和整理用户故事,如何排列用户故事的优先级,进而澄清真正适合用户需求的、有价值的功能需求。对于软件开发人员、测试人员、需求分析师和管理者,具有实际的指导意义和重要的参考价值。

《实例化需求:团队如何交付正确的软件》

本书是在世界各地调查了多个团队软件交付过程后的经验总结,介绍了这些团队如何在很短的周期内说明需求、开发软件,并交付正确的、无缺陷的产品;为团队在实施实例化需求说明时使用的模式、想法和工件创建了一致的语言;展示了案例中的团队用来实现实例化需求说明原则的关键性实践;并在案例分析部分展示了一些团队实施实例化需求说明的历程。

这是一本真正关心软件如何解决“业务问题”的书,适合与项目管理、开发、测试、交付有关的人员阅读。

《大产品小团队》

讲述携程敏捷转型的《大产品小团队》,介绍了很多实际的案例。由于是携程不同团队共同著作,能看出来文字风格的不同,但内容很实际,带给读者很多启发。

《京东敏捷实践指南》

本书以京东敏捷组织转型核心实践为主线,系统介绍了敏捷转型的必要性、关键收益及转型关键举措;对在京东采用的主要敏捷方法,譬如Scrum、Kanban、XP(极限编程),规模化敏捷LeSS、SAFe等框架的关键要点进行了阐述;萃取了京东手机购物APP、物流青龙系统、京东Me内部协同APP、新零售7Fresh等多个不同案例,展示了不同团队的转型历程;从产品开发的角度,提炼出了端到端的落地实践,针对每个实践都有对应的京东案例;对于采用的工具与流程规范、敏捷成熟度评估等,也有示例介绍。

不仅仅可以让读者了解京东的敏捷转型实践,更可以帮助读者打开一扇思维的窗户,思考适合自己组织的转型路线及实践,适合业务人员、产品经理、项目经理、研发主管、开发人员、测试人员等任何对京东敏捷转型感兴趣的人。

敏捷测试

《深入敏捷测试:整个敏捷团队的学习之旅》

本书的见解极其深刻,列举大量来自真实团队的新实例,详细描述如何根据自身环境调整敏捷测试策略,如何从经验中学习并持续改善测试流程,如何将敏捷测试扩展到多个团队以及克服自动化测试的弊端。

通过本书,你将发现敏捷测试已涵盖以下新领域:企业、分布式团队、移动/嵌入式系统、受管制环境、数据仓库/BI系统和DevOps实践。

《Google软件测试之道:像google一样进行软件测试》

本书从内部视角告诉你这个世界上知名的互联网公司是如何应对21世纪软件测试的独特挑战的,抓住了google做测试的本质,抓住了google测试这个时代最复杂软件的精华,讲述了测试解决方案,揭示了测试架构是如何设计、实现和运行的,介绍了软件测试工程师的角色;讲解了技术测试人员应该具有的技术技能;阐述了测试工程师在产品生命周期中的职责,对那些试图建立类似google的测试流程或团队的人受益很大。

《探索吧!深入理解探索式软件测试》

探索式测试是敏捷团队中不断升温的一个热门话题,本书对此话题进行了全面而详细的阐述,并指出从典型GUI场景到软件需求的一切皆可探索。适合于所有真心关注软件质量问题的敏捷团队成员,特别是敏捷团队的测试工作者。

“Elisabeth开创了将探索式测试应用于敏捷开发的先河,并推动它不断演进,使其成为了一种主流实践。”

“优良的测试设计源自优良的测试思路 ,这本书里满是各种优秀的测试思路,辅以故事情节烘托,涎玉沫珠。”

精益

《精益产品开发(原则方法与实施》

何勉大师的集大成之作,国内第一本阐述精益软件开发的书,以通俗易懂的语言从源头上解释了产品开发中精益,敏捷和devops的各层关系,精益的核心和实践方法,学习精益软件开发的人一定要读而且是精读。

《精益创业:新创企业的成长思维》

埃里克将精益创业提炼为一个反馈循环:想法—开发—测量—认知—新的想法。

“它为那些没有天赋、不依靠灵感、没有敏锐洞察力且不占据优势资源的创业者(碰巧这种创业者占99%以上)提供了减少浪费、大幅提高新创项目成功率的系统性的方法论。”

《精益创业实战》

本书融合了精益创业法、客户开发、商业模式画布和敏捷/持续集成的精华,讲解精益创业实战法。

作者以自己的创业项目为主线,结合大量真实案例,并融入一些伟大创业者的智慧,从打造一款产品的想法到最后做出一个产品,要做的步骤详细而又逻辑得写得非常清楚。

那些想要验证自己的创意、解决实际问题和渴望拥有成功事业的人,可以把本书当成一套明确的实践计划、一幅清晰的创业路线图、一本实践指南,或者一套反复实践的方法论,是构建你的产品思维和逻辑的一部非常好的书籍。当然,指望着一个方法论就能让自己迈向成功必然是痴心妄想,但是这本书至少可以让你注意到不少创业过程中的陷阱,值得一读。

《精益数据分析》

本书展示了如何验证自己的设想、找到真正的客户、打造能赚钱的产品,以及提升企业知名度。30多个案例分析,全球100多位知名企业家的真知灼见,带领读者深入理解精益创业、数据分析基础,和数据驱动的思维模式,在大企业中应用精益分析,打造新产品。

技术工程

《浮现式设计:专业软件开发的演进本质》

本书主要面向软件开发者群体,尤其是对敏捷开发感兴趣的程序设计人员。浮现式设计是一种敏捷技术,强调在开发过程中不断演进。

本书的讨论围绕着专业软件开发方法的演进主题展开,强调了让软件成为一个真正专业的重要性,以及以演进方式开发软件的重大意义。书中谈到了如何在演进过程中综合运用设计模式、重构、单元测试和测试驱动开发等实践,以及何时制定耦合、内聚和封装等关键决策,而且通过准确生动的示例说明了如何开发出真正有用的软件。

《领域驱动设计:软件核心复杂性应对之道》

要通过创建领域模型来加速复杂的软件开发,就需要利用大量实践和标准模式在开发团队中形成统一的交流语言;不但要重构代码,而且要重构代码底层的模型;同时采取反复迭代的敏捷开发方法,深入理解领域特点,促进领域专家与程序员的良好沟通。

针对这些内容,本书结合真实项目,系统地介绍了领域驱动开发的目标、意义和方法,充分讨论了复杂系统的建模与设计问题。

《微服务设计》

一本比较全面介绍微服务架构的书,从微服务的优势,讲到转型过程中可能遇到的挑战。有组织结构上的也有技术层面的,譬如在测试,集成,发布,运维,安全等等。

还列举了一些常见问题中的解决方案,也解释了其中的一些trade off, 然后无论是组织结构还是系统架构,不同的阶段总会遇到不同的挑战,改变总是在所难免的,没有什么所谓的最佳解决方案,只有按照自身的情况权衡后总结出的适合自身的方案才是最好的方案。

《重构:改善既有代码的设计》

书中清晰揭示了重构的过程,解释了重构的原理和实践方式,并给出了何时以及何地应该开始挖掘代码以求改善。书中给出了60多个可行的重构,每个重构都介绍了一种经过验证的代码变换手法的动机和技术。

本书已经成为全球有经验的程序员手中的利器,既可用来改善既有代码的设计、提升软件的可维护性,又可用于使既有代码更易理解、焕发出新的活力。

《代码整洁之道》

本书提出一种观念:代码质量与其整洁度成正比。干净的代码,既在质量上较为可靠,也为后期维护、升级奠定了良好基础。作为编程领域的佼佼者,本书作者给出了一系列行之有效的整洁代码操作实践,这些实践在本书中体现为一条条规则(或称“启示”),并辅以来自现实项目的正、反两面的范例。只要遵循这些规则,就能编写出干净的代码,从而有效提升代码质量。

《解析极限编程:拥抱变化》

Beck介绍了12种极限手段和关系后,更多的是谈问题和解决问题的哲学思想。还谈到了怎么做计划、怎么用成本角度看待变更、看待决策,这些内容其实和编程没有很直接的联系,但是把这些思路从传统的管理者角度移入到程序员头脑中,算是一种不小的颠覆,这对程序员在做技术决策的时候会更为明智。

书中还总结了在哪种类型项目下不适合用xp,也指出用xp实施起来困难的原因,这对于实践有很好的借鉴意义。

DevOps

《凤凰项目:一个IT运维的传奇故事》

Gene Kim的成名作,小说体的形式,阐述TPS、约束理论,以及三步工作法。极好的入门书籍,尤其适合对DevOps不太了解的人看,观察自己团队是不是也有同样的问题和痛点,配合凤凰项目沙盘演练,疗效更佳。

《DevOps实践指南》

写得非常完整、具体,集合了敏捷、精益、持续集成、持续构建、软件工程等一系列方法,包括小粒度Pull Request方法、如何将安全和合规融入DevOps流程等,读完本书会对DevOps的重点有更深的认识。

《持续交付:发布可靠软件的系统方法》

Jez Humble的成名作,从提出持续交付概念,到发布这本书,奠定了Jez Humble在DevOps第一颜值担当的地位,Jez的方法论体系在本书就已经成型。

本书主要讲的是道,方法论,也就是做事的方法,不会太深入技术细节,因为每家公司的业务不同,技术栈不同,研发团队的组成也不尽相同,在实践过程中建立一套成体系的规范的流程非常重要。

《持续交付2.0:业务引领的DevOps精要》

一本融合了精益、敏捷研发,业务探索的集大成的DevOps丛书,重新定义了“持续交付”,增补了组织管理和系统架构两个维度,并辅助以真实案例,对诸多持续交付原则与实践加以解读,并对持续交付过程中的实践取舍之道加以论述,同时给出了提升价值探索环以及快速验证环运转速度的多种可行方法。

《敏捷无敌之DevOps时代》

刷屏有理:笑傲江湖数十载,阿捷与赵敏,从神交、相识到神仙姐姐终于说出Yes,I Do!侠义柔情,从此刀剑联盟,琴瑟相和,走向星辰大海。三个作者一台好戏,总龄年方2 的7的智慧,弦歌十载,厚积薄发,以新版IT侠义轻小说的方式描绘出情感与认知交融,扣人心弦但又三不五时让你提振精气神的《兵书》,窥尽从精益敏捷到DevOps乌卡时代的修炼全景图。

教练

《高绩效教练》

本书以GROW教练模型 [ 目标(goal), 现状(reality), 选择(option), 意愿(will)] 为教练逻辑,引用职场及运动场上的例子,清晰阐述了教练的理念和技巧。

对于促进企业界开始运用的“教练型领导”,本书将是最佳的范例,甚至对于学校的教师和孩子的家长而言都十分有益。

《潜力量:GROW教练模型帮你激发潜能》

作者艾伦范恩在书中提供了帮助企业员工提升表现的教练方法——GROW模型,这个模型在任何场景都可以运用,帮助读者制作了一个框架。

对于初级者,只需要把每个步骤里的因素填写进去就好,然后根据每一步指示就行操作就可以了;如果能够熟练的运用grow模型,就会事半功倍;如果在这个基础上能够提炼出自己的一套说辞和逻辑,使之成为自己“万能公式”,信手拈来,就算是出师了。

《敏捷教练:如何打造优秀的敏捷团队》

本书取材于国际知名敏捷教练的真实经历,展示了他们在辅导团队进行敏捷实践过程中所积累的辅导技巧,凝聚着他们在对敏捷辅导的真知灼见,每章还针对特定主题总结了在转型过程中教练和团队可能面对的障碍及其应对方案。具有较强的实用性和指导性,适合项目经理、技术总监和敏捷团队的所有成员阅读。

《管理3.0:培养和提升敏捷领导力》

本书以科学为基础,结合复杂性系统理论,通过轻松诙谐的写作风格和诸多解释与隐喻,将敏捷管理的要义娓娓道来。针对管理3.0的六个视角,作者以理论结合实践的方式,逐一进行阐述和讨论。书中介绍了如何保持员工的活力、创造力和积极性,如何进行自组织,如何保护人力资源以及如何共享资源,如何提高员工技能和提高竞争力,如何实现组织的成长,如何进行全面改进。

适合敏捷开发人员、敏捷从业者、教练和项目经理阅读,对团队领导和开发经理尤其有用。

引导

《引导:团队群策群力的实践指南》

本书提供了团队引导的核心技能和过程工具,包括问题清单、评估要素、决策方法等,它们均来自于近二十年间各种场合被验证过的有效的实践经验,适用于组织内外部的引导者在工作场所、团队会议、甚至任何需要调动大家群策群力的场合。

《共创式领导力|五维领导:每个人都能成为高效的团队领导者》

本书中,凯伦和亨利提供了一种模式-共创式领导力,这是一种深层次协作的领导力方式,以及共同创造更美好的世界所需的框架和工具。他们再次对症下药:我们一贯复杂的世界需要新的多维领导方式,从而在我们创造丰富多彩的未来时能够更加具有责任心和目的性。

《共创式教练:转变思维,蜕变人生》

被全球销量过百万的畅销书《高效能人士的七个习惯》的作者史蒂芬.柯维誉为“教练技术指导的圣经”,被《纽约时报》畅销书作者马歇尔.戈德史密斯誉为“每位渴望成功的经理和员工的必读物”。

书中包含了大量新鲜的教练指导案例、前沿的教练术语,以及一个拓展的、网络版的“教练工具包”,这其中包括35个练习、问卷调查、核对表和可重复利用的表格,可直接拿来使用。

《赋能:打造应对不确定性的敏捷团队》

在敏捷转型期间,需要扎实的理论基础引导团队,但最难做好的一件事就是人的管理,因为各种理论都需要人去实践证实,《赋能》这本书通过各种实际案例阐述了如何打造应对不确定性的敏捷团队,值得一看。

大规模敏捷

《SAFe 4.0参考指南:精益软件与系统工程的规模化敏捷框架》

规模化敏捷的先行者,软件工程领域的一大进步。本书涵盖了关于众多角色、职责、活动和工件的参考指南,同时阐述了价值观,精益-敏捷理念、原则和各种实践等基础元素,可以帮助大家理解和应用SAFe,并终完成构建更好的系统的使命。

敏捷研发给人以小而美、灵活的感觉,本书将之改进推行到大规模的研发企业研发,从价值观原则、方法、实践、工具等多方面详尽的提出了一整套方法论,非常适用于大规模的敏捷研发企业。

《大规模Scrum:大规模敏捷组织的设计》

在本书中,克雷格·拉尔曼(CraigLarman)和巴斯·沃代(BasVodde)浓缩了他们十多年大规模LeSS采用所累积的经验,其精髓是打造简单高效的组织,提供更低的复杂度、更大的灵活性,交付更少的浪费、更多的价值,实现更简的规则、更高的目标。

DevOps书单:调研了101名专家,推荐这39本必读书籍的更多相关文章

  1. 敏捷开发、DevOps相关书籍——书单

    自己瞎整理的一些书单,都是豆瓣评分比较高的书,可以作为选择的一个参考. 书名 豆瓣链接 持续交付:发布可靠软件的系统方法 https://book.douban.com/subject/6862062 ...

  2. 一个很不错的适合PHPER们书单,推荐给大家【转】

    来我博客的访客们中,有一些是PHP的初学者,是不是很迷茫PHP应该怎么学?应该买什么样的书?到处问人,到处求助?这下好了. 正好看到黑夜路人在博客上推荐了一个书单,看上去都非常不错,很多我也没有读过, ...

  3. Java工程师书单(初级、中级、高级)

    简介 怎样学习才能从一名Java初级程序员成长为一名合格的架构师,或者说一名合格的架构师应该有怎样的技术知识体系,这是不仅一个刚刚踏入职场的初级程序员也是工作一两年之后开始迷茫的程序员经常会问到的问题 ...

  4. 最强 Java 书单推荐,附学习方法

    技术大佬用1w+字来告诉你该读什么书,循序渐进,并提供百度云盘下载地址.重要的是还有学习方法. 请肆无忌惮地点赞吧,微信搜索[沉默王二]关注这个在九朝古都洛阳苟且偷生的程序员.本文 GitHub gi ...

  5. java提升路线书单(原文自知乎刘欣)

    复制黏贴自知乎刘欣大神,作为个人的书单与指导路线 原文链接:https://www.zhihu.com/question/19848946/answer/92536822   刘欣 追寻内心的真正兴趣 ...

  6. A Year Of Books - 2016 Javaer书单

    A Year Of Books - 2016 Javaer书单 (PS:欢迎留言推荐,很多来自白衣大哥的推荐) 1. OS & Networking <编码 : 隐匿在计算机软硬件背后的 ...

  7. 我的GTD中收集的书单

    在几年的GTD过程中,收集了一些想读的书目,没有系统地整理,每当读完一本之后,就翻翻书单,寻找下一本感兴趣的书,书是不可能读完的,只能找有兴趣的.符合自己目标方向的.有些书记录了豆瓣上的评分,虽然不是 ...

  8. C语言和数据结构的书单-再次推荐

    一.推荐专业书单: 1)         C语言方面: n  明解C语言——适合初学者 豆瓣链接:https://book.douban.com/subject/23779374/ 推荐理由:< ...

  9. 架构师书单 2nd Edition--转载

    作者:江南白衣,原文出处: http://blog.csdn.net/calvinxiu/archive/2007/03/06/1522032.aspx,转载请保留. 为了2007年的目标,列了下面待 ...

随机推荐

  1. linux 系统环境变量配置

    使用Ubuntu 进行开发绕不开的就是环境变量的配置,由于Linux系统严格的权限管理,造成Ubuntu系统有多个环境变量配置文件,如果不了解其调用顺序,很有可能遇到配置了环境变量,而没有其作用的问题 ...

  2. 数据结构和算法(Java版)快速学习(线性表)

    线性表的基本特征: 第一个数据元素没有前驱元素: 最后一个数据元素没有后继元素: 其余每个数据元素只有一个前驱元素和一个后继元素. 线性表按物理存储结构的不同可分为顺序表(顺序存储)和链表(链式存储) ...

  3. PC、APP、H5三端测试的相同与不同

    随着手机应用的不断状态,同一款产品的移动端应用市场占相较PC端也越来越大,那么app与PC端针对这些产品的测试有什么相同与不同之处呢?笔者总结如下: 首先谈一谈相同之处... 一,针对同一个系统功能的 ...

  4. svn访问版本库时一直提示: please wait while the repository browser is initializing

    最近不知道做了什么操作,原来正常的SVN Check In/Out都无法正常操作. 正常Check In的动作,几秒钟就会操作完成,但是我却等了好久好久,然后提示Connection timed ou ...

  5. Python学习之==>第三方模块的安装、模块导入

    一.模块&包 1.模块 模块实质上就是一个Python文件,它是用来组织代码的.意思就是把Python代码写在里面,文件名就是模块的名称.例如:random.py,random就是模块的名称. ...

  6. DELPHI中函数、过程变量的声明与应用

    Procedure型变量: 在DELPHI中,函数.过程的地址可以赋给一个特殊类型的变量,变量可用如下方式声明: var p : procedure(num:integer); //过程 或: var ...

  7. SQLSERVER 和 ORACLE 查询数据库文件大小

    SQLSERVER: SQLSERVER一个库的文件分为数据文件(行数据)和日志文件两个文件,详情可以在数据库的属性->文件中查看. 在资源管理器中打开文件所在路径可以直接看到这两个文件 但是, ...

  8. Java GC日志

    JVM 命令:-Xms5m -Xmx20m -XX:+PrintGCDetails -XX:+PrintCommandLineFlags -XX:+UseSerialGC [GC (Allocatio ...

  9. arm初识

    一.CPU从指令集角度分类 1.1. CISC  (X86) 1.1. 1. CISC CPU 指complex instruction set computer复杂指令集CPU 1.1.2. CIS ...

  10. selenium 教程

    selenium 本身是一套web自动化测试工具,但其经常被用于爬虫,解决一些复杂爬虫的问题. selenium 用于爬虫时,相当于模拟人操作浏览器. 浏览器驱动 使用 selenium 需要先安装 ...