本文于2017年9月11日首次出现在甲骨文博客上。
从组织内部成功实现DevOps的技巧
DevOps不仅是软件社区的最新趋势,也不仅仅是最新的流行词。DevOps正在改变公司和团队的沟通方式、协作方式以及将产品和服务推向市场的方式。这应该归功于一个简单的流行语。
然而,有些公司认为DevOps是最新的趋势,我们都知道通过采用最新和最大的趋势来确保快速收益是多么诱人。当公司开始为DevOps角色寻找员工,以采用这个看似简单的原则时,问题就开始了。他们开始寻找“有经验的DevOps”或“高级DevOps”合作伙伴加入他们的团队,希望这将使他们更接近最终目标,采用DevOps。
要是这么简单就好了。你看,DevOps并不像雇佣一个人或一组专家那么简单。拥有这些人并不意味着你已经采用了DevOps。事实上,如果您一开始就使用由DevOps专业人员组成的脱节、孤立的团队,那么您将离采用DevOps更进一步。DevOps本质上是一种管理严重依赖协作、自动化和共享的软件开发过程的跨团队方法——小型初创企业从一开始就具备这种独特的优势。这是一种需要奉献和耐心才能做好的文化。
因为它是一种文化,所以需要由整个组织接受。一旦实施,文化就会消除筒仓,重点关注提供实际值。此实施需要时间,也许更重要的是,它需要犯错误弄清楚如何为您的组织提供权限。
那么,您如何帮助您的团队实现DevOps而不再寻找经验丰富的DevOps角色呢?我在下面列出了一些重点。
不要从DevOps的角色或技术开始
对于我们的那些通过无数小时分析错误,自动化系统,在团队中建立通信基础,以及改变我们接近产品开发,部署和管理方面的方式建立了Devops文化,似乎显而易见,您不能只是雇用Devops专家实施Devops。您必须了解Devops在组织的上下文中如何运作,以便将转移到Devops生产文化,而不是试图填补角色。
期望一个外部的“DevOps专家”来实现你的DevOps环境是行不通的。您必须通过将DevOps实践和理念与组织的价值观和目标保持一致,从内部做出改变。在他们的书中无所畏惧的改变,作者Linda Rising博士和Mary Lynn Manns博士强调了在你的组织中选择一位变革倡导者的重要性。对他们来说,成功地实施改变与他们选择的冠军直接相关。“我认为最重要的因素是一个成功的冠军,他引起了人们对流程变革的兴趣。我们的冠军是一个受人尊敬的团队成员,他以完成工作和真诚地希望帮助领导组织走向实际改进而闻名。”
因此,不要低估你的内部DevOps拥护者的价值,因为这个人将致力于整合组织内长期分离的系统和团队,所以要确保你的拥护者得到公司各级的支持。如果没有管理层的信任和理解,这些必要的目标是不容易实现的。
就像雇佣一个专家不会让你得到DevOps一样,采用DevOps技术也不会有什么效果。持续集成(CI)和持续开发(CD)是一个完整运行的DevOps系统的组成部分;然而,你不能本末倒置。在采用这些技术之前,您的团队必须严格遵守DevOps的实践。否则,在开发人员和操作人员准备好共享和协作整个软件开发管道之前,您将迫使他们一起工作。
培训团队中的DevOps专家来监督采用
正如我上面所说的,雇佣DevOps专家并不能帮助你采用DevOps;但是,您可以培训组织中的个人成为DevOps冠军或专家。DevOps专家需要受到客户和业务目标的激励,并提倡软件——从概念到生产和超越。
选择展示自然和强大的领导技能的冠军。他们应该已经感兴趣或对您的组织采用的Devops采用感兴趣。最重要的是,确保您的Devops专家具有出色的沟通技巧,它们经常使用多个团队。
你知道改变管理失败背后的最大原因吗?它是缺乏频繁或清晰的沟通.为了使团队合作和自动化系统,团队成员需要能够以促进审议,诚实和清晰度的方式进行沟通。
那么,您需要您的DevOps专家做什么呢?首先,他们应该帮助团队理解和实现DevOps的核心价值观:文化、自动化、度量和共享(CAMS).第二,他们必须努力营造一个鼓励人们提问、合作和相互学习的环境。要警惕那些不问问题或看起来不脆弱的团队,因为他们可能正在遭受群体思维.第三,为了节省时间和构建一致性,DevOps专家需要支持对自动化的投资,并提供为什么DevOps实践在每个阶段都相关的清晰图景。最后,他们需要鼓励共享工具,以提高效率,并在员工中创造更高水平的参与度。
考虑组织的规模和结构将如何影响过渡
初创公司采用DevOps的方式通常与拥有各种专门团队的大型组织监督DevOps实现的方式不同。对于前者,从DevOps开始或过渡到DevOps往往更容易,因为需要学习协作的专业团队相对较少。此外,个人通常更自然地成为整个软件开发过程的一部分,并且习惯于在整个过程中相互关联地工作。
当一个组织变得更大、更专业化时,对DevOps冠军的需求就会变得更大。更复杂的项目可能需要更多的专家来领导开发DevOps环境,特别是当您的团队刚刚起步时。随着越来越多的团队成员习惯于在DevOps环境中进行生产,DevOps专家可以转而专注于复杂的技术——例如,自动伸缩、复杂监控和高可用性——而新培训的DevOps专家则会逐步填补之前专家的角色。
在我工作的组织中,我们花了很多时间在团队间明智而一致地采用DevOps,同时注意到我们不需要的实践或技术。然而,我们仍然犯了很多错误,现在我们更愿意说出什么是行不通的,跨团队合作,并向公司其他有专业知识的人学习。最后,花了一段时间;然而,今天当我看到我们办公室的不同团队时,我看到许多DevOps专家以不同的角色工作。
结论
不值得再重复,这就是为什么我要分享我的公司遇到的一些挑战以及如何解决它们的原因:
通过接受您将访问由https://nearshore.perficie.com/外部的第三方提供的服务
注释