DevOps不再只是大肆宣传的产物,已经真正成为企业IT的主要任务。
根据RightScale的2016 State of the Cloud调查显示,1060名IT专业人士中约74%回应说,他们已经在企业内实施了DevOps,较2015年的66%有所上升。
根据由Appvance委托Vanson Bourne完成的State of Software Release Efficiency调查,200名决策者中的73%则回应,已经实施了一些DevOps流程。
DevOps专业人士身价不菲:Puppet的“2016 DevOps Salary Report”发现,58%的受访者年收入超过100000美元,较前一年的47%有所提高,43%的经理年收入超过150000美元,相较2015年的26%,大幅增加。
招聘人员和IT领导人认为,随着企业IT部门迁移到DevOps环境的增加,也相应提高了对DevOps工程师的需求,也包括这一领域中其他的技术人员。
但IT招聘专家、分析师和经验丰富的IT领导人认为,急于招聘DevOps专家有一些误导。CIO们要构建DevOps环境,只招聘人才是不够的。另一方面,他们不能只是重新划分现有员工的职能,并期望他们能够无缝实施DevOps实践。这不是一个招聘或培养场景;相反,这是一个招聘和培养场景。
“只是想要有经验的DevOps人员,这个方向错了。他们需要的是运营或开发人员,并且有意愿互相学习,”非营利的贸易协会CompTIA的产品高级主管James Stanger解释说。
招聘,为了构建DevOps环境
Stanger的评估说出了DevOps的本质,这个诞生了十年的概念是让软件开发和运营团队一起合作IT项目,同时构建、测试和更快、更频繁地发布软件。目标——在一个存在网络威胁、竞争特别激烈的业务环境中越发重要——是交付高可用性的产品,同时拥有更高的安全性和更高的质量。DevOps通常被认为是一系列的流程和方法,但它同时也依赖各类技术的支持,包括自动化和云服务。
因此,一个实施DevOps的企业IT部门需要通过可以协作的开发人员和运营人员以及熟悉技术的技术人员来支撑DevOps环境,技术招聘机构Mondo的高级技术招聘人员Connor Leech说。
特别是,迁移到DevOps的公司需要技术专家,他们可以自动化流程,设置系统以自动处理需求波动,并与AWS等云提供商合作,Leech说。
这些任务需要特定领域的技能和特定技术,他说。例如,技术人员需要了解自动化和配置管理工具,比如Puppet或Chef,以及性能管理软件,比如New Relic。他们应该熟悉流行的脚本语言,比如Python、PHP和Ruby。他们也应该了解新技术,比如Docker——一个在软件容器内部自动化Linux应用部署的开源工具。
这些都需要经验,公司通常想要招聘人才,而不是通过培养人才来打造DevOps环境,Leech说。
“完全可以在这些领域培训现有的工程师,但是因为工具的复杂,CIO们想要有经验的人员,而不是去培训人员,”他解释道,“这是招聘经理的一个常见想法:他们想要的人员不仅有经验,还要在大型生产环境中使用过这些工具。”
Leech认为,明智的CIO们应该招聘拥有这些技能的员工,然后让这些员工来培训现有的员工。
“通常的做法,是以合同工的形式招聘DevOps工程师。合同期限为6个月,他们加入你的公司,帮助自动化,让每个员工走上轨道,然后他们离开,去完成下一个合同期。这些人员通常都很昂贵,但是他们非常有价值,”他说,“他们可以把公司现有的工程师变成DevOps工程师。”
DevOps候选人:正确的心态
但是,要组建DevOps团队不仅仅是拥有正确的脚本语言或云经验,专家说。除了那些技术技能,公司需要那些能够在DevOps环境中互相协作的人员,因为在开发和运营之间没有真正的划分。
因此,Stanger说公司需要了解两方面工作的IT人员:运营和开发(即使每个员工有所侧重)。这些员工也需要了解项目管理,能够跟踪迭代,并且他们应该能够在DevOps环境中常见的敏捷和Scrum开发框架中工作。
尽管这些都是在DevOps团队中非常重要的技能,Stanger认为,CIO们通常认为他们不需要在市场中寻找这些人才。他说,许多IT专业人员都熟悉IT内的各种职能,所以运营人员了解一些开发的知识,反之亦然,即使他们在分工明细的企业内担任传统的职位。如果他们愿意深入学习其他职能的职责并分担这些任务,那么CIO们就拥有几乎现成的DevOps候选人。
“许多人在编程方面工作多年,如果他们有正确的心态,早已经成为DevOps人员,”Stanger指出许多人在项目管理上,已经有一些培训或经验。
他补充说:“任何人都可以很容易地成为DevOps人员。大多数人有DevOps的基础,只是还没有进行培养。”
CIO们需要理解并推广DevOps概念
Jay Lyman是451 Research的DevOps&IT Ops开发部门的首席分析师,他也有类似的观点,并指出迁移到DevOps的公司既需要拥有新技能的新人,也需要重新培训现有的员工,因为他们比外来者更了解企业。
鉴于DevOps的增长,Lyman说很多IT员工都渴望获得这一领域的培训和经验。(他指出,IT员工都清楚,如果简历上有DevOps经验,会让他们更有价值,这也让IT领导在实施DevOps时获得更多的投入。)
不过,他和其他人也承认,并不是所有企业的技术人员都热衷于DevOps工作环境;CIO们和其他管理团队本身必须理解DevOps流程和心态,然后向他们的员工和企业推广它的好处。
如果他们遇到不想参与的员工?仍存在更适合瀑布式开发的项目,专家说,因此这些员工在企业中仍然有用武之地。
但是,话又说回来,也许不是,他们警告说。CIO们也许需要招聘新的人才来取代抵制的员工,随着他们的团队进一步使用DevOps方法,来获得IT部门所需要的速度和效率,以保持公司现在和将来的竞争力。