我国最大的IT项目管理门户网站,国内IT项目管理培训与咨询服务提供商

当前位置:首页 > DevOps > 正文

DevOps系列 教练养成记

2018-11-29 来源:新项管思维 良子
       如何认知DevOps全貌及本质,小编本着自我学习的态度,以专辑系列形式,持续整合最新业界动态及案例,方便查阅与运用,感兴趣的朋友,大家根据情况实践起来吧。
       今日系列:DevOps教练是个什么鬼?我如何成长为DevOps教练?
       1. DevOps转型取决于人的能力
       根据Gartner的数据,70%的IT市场现在都集中在DevOps上。
但是另一方面,目前使用DevOps的组织中,至少有50%无法达到原本商业论证中所期待的好处。为什么一方面有些企业DevOps越做越好,而另外一些企业实施DevOps则出现平台期,甚至有退回到原点的情况呢?
       说到底,不管是组织还是个人能力的成长,都有一定之规:
       任何技能的掌握都需要学习了基本技能之后,通过不断练习实践才能“学会”。
       当然具备“会”的能力之后,离真正的高手还是有很大距离。
       组织的DevOps能力发展和以上个人能力的发展路径是类似的:
图1:能力成长的可能路径
       1)我们往往期待的是A路径:从开始采用DevOps到组织具备高绩效的DevOps能力的线性发展的过程。
       2)但很常见的比如B路径:组织尝试引入DevOps实践之后感觉困难太多,领导不支持或者目前的项目人员能力不足等,从而退回到原点。
       3)或者C路径:取得了早期成功,但在继续往更高绩效水平推进的时候由于要偿还的技术、文化债务较多,无法有效地克服此类问题,则会导致退回到原点。
       4)也有D路径的情况:取得一定的成功,并且可以维持在该水平绩效。但一直无法取得下一步突破,也无法真正达到组织和客户所期待的业务价值。
       DevOps说到底是系统性的改变,其中最重要的是人。工具是由人引入、使用的,变革由人来推动,制度流程由人建立并执行,当然识别和解决问题更是要靠人。
图2: 技术采纳生命周期曲线
       2. DevOps教练做什么
       在组织DevOps转型所依赖的人才团队中,DevOps教练是一个极为重要的关键角色。那么,什么是DevOps教练?团队又为什么需要DevOps教练?
       这里可以参考敏捷教练的定义来说明:DevOps教练帮助人们重新思考和改变他们交付软件的方式(关注价值流的方方面面)。
       DevOps教练可以大体分为两类:管理教练和技术教练,本文聚焦于前者。
       根据DevOps教练职责范围,从小到大有三个不同的层级。
       第一级:团队级别教练
       在团队级别上,DevOps教练所做的工作可以对应Scrum团队里的Scrum Master。当然DevOps目前并没有像敏捷中Scrum一样的一套方法。
       下图是参考EXIN DevOps Master课程中对DevOps团队角色定义,其职位名称为流程主管(Process Master)。
图3: DevOps Master课程里定义的DevOps团队各个角色
       EXIN DevOps Master课程体系中对这一角色有明确定义:
       领导并促进团队,这个角色类似于在Scrum中 的Scrum Master。 
       对整个过程实施可视化管控,力求建立单件流作业(one-piece flow)的流水线式的流程。 
       可视化管控意味着“在不需要解释的情况下,通过信息板是否每个人都能很容易的理解当前的情形?”它不并显示状态。但它可以用来表达是否有问题出现。 
       经验需求:Scrum Master,敏捷项目领导(Agile Project Leader)。 
       第二级:多团队级别教练
       在这个层级上,教练的四项核心技能需要充分发展:教授(teaching),辅导(mentoring),协调(facilitating),以及专业教练(professional coaching)。
       下图即为跨多个团队指导的DevOps教练一职。
图4: EXIN DevOps Master课程里定义的跨团队的DevOps教练角色
       第三级:企业级DevOps教练
       这一角色在某些企业中是敏捷/DevOps变革领导小组的关键成员。
下图来自张乐老师的《某大型互联网金融项目百人团队持续交付转型实践》一文。
图5: 某大型互联网项目里专门推进变革的小组
       3. 一个典型的DevOps教练职位描述
       作为DevOps教练具体来讲都需要哪些技能,下面我们通过一个典型的DevOps教练JD(Job Description)来看看。
       个人认为属于DevOps教练的核心能力用蓝色字体标出。
       职位描述 - DevOps 教练:
       一、工作职责(Responsibilities)
       DevOps方法方面专家,能够要求团队成员以规范的方法来推进开发和运维的能力
       通过变革来指导组织,帮助识别和克服限制团队生产力和质量的阻碍
       对构建和部署过程给出建议以确保最佳实践
       指导团队如何更好地使用DevOps工具
       帮助平台团队实现平台自动化
       培养团队精神和遵守规范
       在需要的时候进行一对一的指导,特别是对刚刚接触DevOps思维的成员
       评估团队DevOps成熟度并提供进度反馈
       预测和识别问题,并提供解决障碍和问题改善的建议
       参与或领导复杂问题的解决,以定义问题,评估当前状态的根本原因,设计和测  试解决方案,并实施能产生预期结果的解决方案
       二、成功担任这一职务所需的资质(Qualifications)
       理解精益和敏捷流程背后的原则和价值。有SAFe/Scrum/看板经验者优先
       善于与组织中各种技能和角色的人沟通,包括技术工程师和有成本意识的高管人员
       从运维/客户服务的角度对价值流有很强的理解
       具有使用CI/CD工具(如Jenkins、Deploy、Ansible等)自动化工作流和流程的经验
       能够解释内部和外部业务挑战并实施最佳实践以改进产品、流程或服务
       能够领导复杂的项目并承担风险
       在解决技术、运营和组织方面的挑战时具有判断能力
       具备管理团队的能力,包括识别和招聘人才,管理绩效,以及决定资源分配
       有能力影响他人采用新的角度,能够有技巧地处理人际关系问题。
       三、经验要求(Experience)
       至少6年敏捷环境中工作的经验,最好是开发或IT运维角色 
       至少3年以上指导多支团队的经验
       在开发生命周期中使用DevOps工具的经验(GitHub, GoCD, Jenkins, AWS, Azure, Docker, Splunk) 
       在运维领域有经验,例如变更和发布管理、网络、安全和托管 
       四、能力(Competencies)
       能够使相关方跨职能参与,以减轻团队的障碍 
       较强的沟通能力,能够处理和解释复杂的技术概念,并在决策上协调组织 
协作、高效、创新 
       五、能够指导任何DevOps实践(Practices)培训,包括但不限于:
       XP实践 
       测试驱动的基础设施 
       ATDD / TDD / BDD核心 
       持续集成/交付 
       分布式安全实践 
       静态分析(代码质量检查)
       4. 成长为DevOps教练的建议
       从以上JD可以看到,DevOps教练对能力的要求是非常全面,从技术、管理、流程、业务、组织文化、个人领导力都有要求,而这并非该职位描述的过度要求或不切实际的期望。实际上,由于DevOps的复杂度和系统性,确实要求DevOps教练具备职位描述里提及的各项能力。从另一方面讲,这样的复杂度也会有效地建立起较高职业屏障。其实,通过有效的集中式学习,是可以快速建立起相关能力的。
       根据你自己的工作经验来选择学习成长路径:
       如果你是敏捷/精益教练,因为敏捷/精益和DevOps有很多共通之处,这对成长为DevOps教练很有帮助。而你的沟通和领导能力可能也是强项。你主要需要补全的是:持续交付相关的工程技术实践、IT服务管理等方面的知识。
       如果你是技术专家,你的技术知识可以使你更多的把精力集中在敏捷/精益方面,以及教练/咨询的能力。下图的敏捷教练模型,展示的各个技能项可以作为DevOps教练的参考。
图6: 一个敏捷教练所需要的技能
       针对其它的非技术岗管理者,比如项目经理、PMO、产品经理、质量和过程保证部门人员、也包括一线或中层职能部门经理人,你的长处在于管理和沟通、组织文化、业务以及领导力,你最需要学习的是跟持续交付相关的技术实践,以及敏捷、精益、ITSM这些流程管理实践。
       5. 结语
       就像初学游泳者首先需要有一套"基础技能包“反复练习一样,要从你现在的岗位成长为DevOps教练也有一套初学者必会的技能组合。通过集中的训练,是可以做到在知识和能力上的快速成长,尽快突破第一层的绩效临界线。
 
分享到:

免责声明:
  1、IT项目管理界发布的所有资讯与文章是出于为业界传递更多信息之目的,并不意味着赞同其观点或证实其描述。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请浏览者仅作参考,并请自行核实相关内容。
  2、本站部分内容转载于其他网站和媒体,版权归原作者或原发布媒体所有。如文章涉及版权等问题,请联系本站,我们将在两个工作日内进行删除或修改处理。敬请谅解!

延伸阅读:

more

会议活动

more

公开课

more

PMO

Copyright © 2021 IT项目管理界 版权所有 京ICP备17062359号-4 如转载本站文章,请注明原作者和原发布媒体

本着互联网分享精神,本站部分内容转载于其他网站和媒体,如稿件涉及版权等问题,请联系本站进行删除或修改处理

客服电话:010-89506650 89504891 非工作时间可联系:18701278071(微信) QQ在线:511524637

新闻与原创文章投稿:tougao#cpmta.com 客服邮箱:info#cpmta.com(请将#换成@)

IT项目管理界——我国最大的IT项目管理门户网站,隶属卓橡公司

IT项目管理界官方微信

IT项目管理界官方微信

PMO大会官方微信

PMO大会官方微信