查看原文
其他

OpenStack职业道路:老板想要什么

2017-10-23 Karen Lee 开源云中文社区


导读

    

       你喜欢用OpenStack吗?想让它成为你的职业吗?不管你是新手还是老将,都有合适的路径让你的梦想与OpenStack结合。一起来看看雇主想要什么。


现在,对有OpenStack经验的人来说,工作岗位多多。好消息是,截至2017年10月,以OpenStack作为头衔或要求,LinkedIn列出了近6000个工作岗位,Glassdoor 列出了2600个职位。据Glassdoor透露,OpenStack相关工作的平均年薪约为9万美元。

在高需求的OpenStack职位中,打出广告的是哪些?我们以头衔、责任和要求分解了四个最需要的职位。


OpenStack开发人员(OpenStack工程师)

过去,这个头衔一直意味着要负责OpenStack部署(工程、运营、基础设施、板载等)各个方面。这个职位的人将接触生产云的几乎各个方面——从规划、部署甚至运营公司的生产和开发云。然而,由于生产OpenStack云已经扩展到大型企业,雇主已经开始创建更多的专业职位,并将OpenStack工程师的职责降至原有范围的一小部分。

今天,OpenStack工程师的一些常见广告职责包括:


——负责内部的、扩展或定制OpenStack代码以满足业务需求的OpenStack项目。
——与QA和支持团队紧密合作,进行bug分类,修复创建和解决上游问题。
——与上游OpenStack项目一起将bug和新代码提供给OpenStack基金会。

雇主通常希望聘请详细了解OpenStack核心项目的人员,包括代码级别以及创建、修改和上游bug修复和增强的能力。一些需求示例(除了以前的OpenStack经验)包括:

——软件设计、问题解决和面向对象编程的技能;熟悉OpenStack核心项目和OpenStack Foundation CI系统。
——编程优势(首选Python),数据结构,算法和性能、可扩展性、可用性和安全性设计。
——一种或多种静态和动态语言方面的经验,如Java、Scala和/或C++ / Python、Ruby或Node.js。

基于上述要求,这种类型的职位很适合在一个或多个OpenStack项目上有工作经验的人以及熟悉OpenStack开发和bug修复的人。对于具有DevOps背景的经验丰富的Python程序员来说,这也是一个很好的选择。


OpenStack运维员(OpenStack运维管理员、OpenStack技术支持等)

OpenStack云的运维角色与传统基础设施厂商中的运维支持角色非常相似,只是增加了专门的OpenStack技能(用于运维和解决软件故障)。

这些专业技能包括:

——为使用OpenStack云的客户所报告的软件问题进行技术故障排除。
——帮助客户使用Horizon界面,运维云管理平台和Heat模板。
——识别基础OpenStack组件中的bug,并与工程人员进行协作以隔离根本原因分析。

这种类型的职位对应多种技能水平。在高层次上,该职位可能包括以下额外责任:

——在实验室环境中重现客户报告的错误,并使用JIRA、Confluence和ServiceNow等协作和报告工具来管理和报告。
——通过报告错误、发布补丁协助工程人员,并与开发团队合作协调上游补丁和bug管理。
——通过解释OpenStack项目中的日志文件和python错误,为客户提供后台支持。

为了履行这些职能,应聘者需要以下技能:

——高级别的Linux操作系统熟练度,了解RHEL / Centos、Ubuntu和SUSE。
——专家级的通过Horizon和/或CLI操作OpenStack云的熟练度。Certified OpenStack Administrator(COA)是一个很棒的认证,是这个职业生涯的出发点。

——了解一些脚本语言,具有阅读Python日志的能力和出色的沟通能力(因为需要与客户打交道)。
——对于对高级别运营职位感兴趣的人可能需要熟悉OpenStack的CI工具。

其他一些条件是对网络和分布式计算以及路由、交换和防火墙等基本网络概念的深入了解。Bash / Ansible / Puppet / Chef脚本对于任何对运维职位感兴趣的人来说都是一个加分项,因为它让你自动化所有的事情。


OpenStack现场可靠性工程师(基础设施架构师/管理员、配置管理员等)

现场可靠性工程师的职位出现于2003年,当时谷歌聘请了一个由七位 49 31106 49 15287 0 0 1829 0 0:00:17 0:00:08 0:00:09 3227件工程师组成的团队来运营生产环境,但这个职位对于OpenStack领域来说是一个新的职业道路。这个职位50%的内容是传统的,例如事故、随叫随到和干预措施。在其余的时间,现场可靠性工程师的任务是创建可扩展和高度可靠的软件系统。因此,任何考虑这个OpenStack职位的人将花费大约一半的时间来测试新的OpenStack功能,扩展OpenStack并确保环境在大规模时是高度可靠的。

一些常见责任可能是:

——使用DevOps流程,创建和自动化扩展数据中心内和跨数据中心的OpenStack计算、控制和存储的方法。

——自动化企业OpenStack环境的备份、失效备援和灾难恢复过程。
——开发、自动化和管理底层操作系统、工具和OpenStack组件的打补丁过程。

正如你所看到的,这个职位的责任很广,从基础架构管理到测试新的OpenStack功能和项目。因此,所需的技能涵盖了一大批领域。SRE通常拥有软件开发或系统管理背景,具有非常强大的配置语言和自动化技能。在高可用性、灾难恢复、备份和扩展等任务上有高性能的运维背景也是非常受欢迎的。

一些常见的技能要求包括:

——专家级Linux操作系统故障排除能力,在调查事故或测试新功能和项目时,能够解决OpenStack基础组件的问题。
——高级或专家级编程能力。具有使用配置语言(如Puppet、Chef、Ansible、Salt、Bash)来创建自动化和管理系统的能力。
——高级OpenStack经验。必须了解架构、运营,并能够排除OpenStack中的错误以实现根本原因分析。

OpenStack架构师(云架构师、云基础设施架构师、OpenStack解决方案架构师等)

到目前为止,已经列出了可以部署、扩展、运维和管理OpenStack云的职位。如果雇主想要开始OpenStack旅程或者想要有机地拓展云端呢?如果他们需要有人基于云的技术解决方案结合业务战略挑战怎么办?可以聘请什么样的人来设计和构建这些全面的云解决方案?这就是OpenStack / Cloud Architect的角色所在。

云架构师通常负责以下内容:

——主导云采用、云应用设计(OpenStack /多云/混合)、管理和运维战略。
——使用已建立的和新的架构,使用传统和新兴的计算、网络和存储选项为云部署创建战术计划。
——使用最低成本、最低风险和最有效的解决方案设计和规划云架构,并有能力与执行管理沟通。

除了在OpenStack中具有显著的云经验之外,一个或多个其他云平台的经验也很有帮助。这通常是一个高级职位,因为经验是雇主正在寻找的主要因素之一。

这类职位还有一些雇主正在寻找的其他技能:

——专家级OpenStack /云架构技能。不仅了解云的技术挑战,而且能够回答某些云功能如何解决业务挑战。
——显示出云知识的与时俱进。架构师不仅需要了解云平台,还必须了解云中最新技术的特性、功能和成熟度。这方面的经验非常重要。

——忍者级的沟通技巧。很多时候,OpenStack和云架构师必须在执行层面上提出想法、设计和解决方案。有时甚至可能需要让客户从云技术一开始就加速。这有时候就像跟海豚说火星语,但架构师的工作就是翻译和让别人理解。

其他相关岗位 :DevOps工程师、CI / CD工程师、云软件架构师

雇主提供的一些职位可能不涉及OpenStack本身的工作,但是需要知道如何使用OpenStack作为基础设施即代码的工具。如果你目前的工作需要在Java、Node.js、Python、Go或者云中使用的任何其他应用程序编程语言中开发应用程序代码,那么你很有必要学习如何与基础架构API互动。

随着PaaS的发展和容器变得越来越受欢迎,分布式基础设施的开发人员将不得不在如何部署代码方面有更多知识和更灵活。这些知识中的一些涉及DevOps及其无数工具。这些工具如何与OpenStack和其他云平台交互是非常宝贵,并且将越来越有价值。

此外,容器技术(Docker、Kubernetes等)出现了上述所有工作类别的一些要求中,因此建议所有求职者学习容器和容器管理平台的基本原理。

更多了解雇主在寻找什么,将有助于你评估自己,以确保你已经为OpenStack职业生涯装备了适当的技能。

现在出发,找到梦想的OpenStack工作!



阅读推荐:

VMware与OpenStack的斗争转向了混合云

这可能是Docker宣布拥抱Kubernetes的真实原因


投稿邮箱:openstackcn@sina.cn

您可能也对以下帖子感兴趣

文章有问题?点此查看未经处理的缓存