专栏首页Opensource翻译专栏如何做到DevOps工程师的职业转换[DevOps]

如何做到DevOps工程师的职业转换[DevOps]

无论是应届大学毕业生还是经验丰富的IT专业人员,都可以通过这些技巧来帮助被聘为DevOps工程师。

图片来源:Opensource.com

DevOps工程是一项热门职业,有很多报酬。 无论是在毕业后寻找第一份工作,还是在利用既往行业经验的同时寻找重新技能的机会,本指南都会帮助你采取正确的步骤,成为一名DevOps工程师。

沉浸自我

首先学习DevOps的基础知识,实践和方法。 在跳入工具之前,请先了解DevOps背后的“原因”。 DevOps工程师的主要目标是在整个软件开发生命周期(SDLC)中提高速度并保持或提高质量,以提供最大的业务价值。 阅读文章,观看YouTube视频,并参加本地的Meetup小组或会议-成为受欢迎的DevOps社区的一部分,在这里将从前人的错误和成功中学习。

考虑个人背景

如果具有技术开发方面的经验,例如软件开发人员,系统工程师,系统管理员,网络运营工程师或数据库管理员,则对于作为DevOps工程师的未来角色,已经具有广泛的见识和有用的经验。如果刚完成计算机科学或任何其他STEM领域的学位后才开始职业,那么将拥有在此转换中需要的一些基本垫脚石。

DevOps工程师角色涵盖了广泛的职责。以下是企业最有可能使用它们的三种方式:

具有开发偏见的DevOps工程师会在软件开发角色构建应用程序中工作。将持续集成/持续交付(CI / CD),共享存储库,云和容器用作日常工作的一部分,但他们不一定负责构建或实施工具。他们了解基础架构,并且在成熟的环境中将能够将自己的代码推入生产环境。

具有操作偏差的DevOps工程师可以与系统工程师或系统管理员进行比较。了解软件开发,但不花费一天的时间来构建应用程序。相反,他们更有可能为软件开发团队提供支持,以使手动流程自动化并提高整个人和技术系统的效率。这可能意味着要分解旧代码,并使用较少麻烦的自动化脚本来运行相同的命令,或者可能意味着安装,配置或维护基础结构和工具。确保正确的工具已安装并可供需要它们的任何团队使用。还通过教他们如何利用CI / CD和其他DevOps实践来帮助团队。

网站可靠性工程师(SRE)就像软件工程师一样,可以解决运营和基础架构问题。 SRE专注于创建可扩展,高度可用且可靠的软件系统。

在理想的世界中,DevOps工程师将了解所有这些领域;这在成熟的技术公司中很常见。但是,顶级银行和许多财富500强公司的DevOps角色通常偏向于开发人员或运营人员。

学习技术

DevOps工程师需要了解广泛的技术才能有效地完成工作。无论背景是什么,都从需要作为DevOps工程师使用并了解的基本技术入手。

操作系统

操作系统是一切运行的地方,拥有基础知识很重要。尽管有些组织使用Windows,但Linux是最可能每天使用的操作系统。首先,可以在家中安装Linux,在那里可以随意尝试并学习。

脚本编写

接下来,选择一种要学习的语言以用于编写脚本。有很多选择,包括Python,Go,Java,Bash,PowerShell,Ruby和C / C ++。建议从Python开始;由于某种原因,它是最受欢迎的语言之一,因为相对易于学习和解释。 Python的编写通常遵循面向对象编程(OOP)的基础,可用于Web开发,软件开发以及创建桌面GUI和业务应用程序。

在Linux和Python之后,接下来要研究的是云计算。基础架构不再留给“操作人员”使用,因此需要对Amazon Web Services,Azure或Google Cloud Platform等云平台有所了解。将从AWS开始,因为它拥有广泛的免费学习工具集合,可以走过从使用AWS作为开发人员到运营甚至是面向业务的组件的所有过程。实际上,可能对提供的数量不知所措。考虑从EC2,S3和VPC开始,然后查看要从这里去哪。

编程语言

如果对软件开发充满热情地来到DevOps,请继续提高编程技能。 DevOps中的一些常用好语言与脚本编写相同:Python,Go,Java,Bash,PowerShell,Ruby和C / C ++。还应该熟悉Jenkins和Git / GitHub,在CI / CD流程中会经常使用它们。

容器

最后,开始学习使用诸如Docker之类的工具和诸如Kubernetes之类的编排平台进行代码容器化的知识。有大量免费的在线免费学习资源,大多数城市都会有当地的Meetup小组,可以在友好的环境中向有经验的人学习(有比萨和啤酒!)。

还有什么?

如果缺乏开发经验,则仍然可以通过对自动化施加热情,提高效率,与他人合作并改善工作来参与DevOps。仍然建议学习上述工具,但不着重于编码/脚本语言。了解基础架构即服务,平台即服务,云平台和Linux将会很有用。可能会设置工具并学习如何在编写代码时利用它们来构建具有弹性和容错能力的系统。

寻找DevOps工作

求职过程会有所不同,具体取决于是否从事过技术领域的工作并正在进入DevOps或是刚开始职业生涯的应届毕业生。

如果已在从事技术工作

如果正在从一个技术领域过渡到DevOps角色,请先探索当前公司的机会。可以与其他团队合作来重新训练吗?在不离开当前工作的情况下,尝试掩盖其他团队成员,寻求建议并获得新技能。如果无法做到这一点,则可能需要转移到另一家公司。如果可以学习上面列出的一些实践,工具和技术,那么将很容易在面试中展示相关知识。关键是要诚实,不要为失败做好准备。大多数招聘经理都知道您并不知道所有答案。如果可以展示所学的内容并说明愿意学习更多,那么应该有很大的机会获得DevOps职位。

如果正在事业的开端

申请雇用初级DevOps工程师的公司的公开机会。不幸的是,许多公司表示他们正在寻找更多的经验,并建议在获得一些经验后重新申请。这是“我们想要更多的经验”的典型的,令人沮丧的情况,但是似乎没有人愿意给第一个机会。

虽然并不全这么悲观;一些公司专注于直接从大学培训和提高毕业生的技能。例如,我在MThree工作的地方,雇用应届毕业生并培训他们八个星期。当他们完成培训后,参与者将充分接触整个SDLC,并充分了解它在《财富》 500强环境中的应用。毕业生被MThree的客户公司聘为DevOps的初级工程师-MThree在最初的18到24个月内支付全职薪水和福利,然后他们作为直接雇员加入客户。这是缩小大学与技术职业之间差距的好方法。

总结

有很多方法可以转变为DevOps工程师。这是一条非常有意义的职业路线,可能会使你保持参与和挑战度,并增加收入潜力。

原文链接:https://opensource.com/sites/default/files/styles/image-full-size/public/lead-images/hiring_talent_resume_job_career.png?itok=Ci_ulYAH

原文作者:Conor Delanbanque

我来说两句

0 条评论
登录 后参与评论

相关文章

  • DevOps工程师的认证[DevOps]

    DevOps团队非常喜欢使用DevOps流程,尤其是在多云和混合云基础架构中,原因有很多。 一方面,DevOps打破了障碍,实现了agile软件开发和IT运营的...

    yyx
  • 实现DevOps时要避免的10个陷阱[DevOps]

    在各种规模的公司中,由于技术团队定义成功的方式发生了变化,软件正越来越多地提供业务价值。它们比以往任何时候都更取决于其构建的应用程序如何为客户带来价值。门票和稳...

    yyx
  • 无法购买DevOps[DevOps]

    转到DevOps可能是一项艰巨的任务,许多组织都不知道合适的起点。 最近,我参加了一些“ DevOps评估”,以了解他们提供了什么解决方案,从而使我很开心。 有...

    yyx
  • 重磅!国内外第一个 DevOps 标准即将全量发布

    DevOps时代
  • DevOps研发模式下CI/CD实践详解指南

    借着公司今年新组建的中台研发部东风,我作为其中的主要负责人,在研发中心主导推行DevOps研发管理模式转变及质量管理创新建设,本篇文章摘取自今年9月底,笔者在公...

    测试开发技术
  • 将DevOps视为哲学——实施DevOps的绝佳方式

    经过此前的文章介绍,相信大家都对DevOps有了简单的了解。(回顾DevOps是什么、生命周期点这里:《DevOps生命周期,你想知道的全都在这里了!》)Dev...

    陈琦聊测试
  • 优秀的DevOps工程师必须具备的软技能

    年末将至,大批攻城狮与程序猿早已蠢蠢欲动,开始了跳槽涨薪之旅,虽然受社会大形势影响,IT行业虽然无法和前几年的突飞猛进的势头相比,但是对DevOps的热度却只增...

    JFrog杰蛙科技
  • DevOps工程师的认证[DevOps]

    DevOps团队非常喜欢使用DevOps流程,尤其是在多云和混合云基础架构中,原因有很多。 一方面,DevOps打破了障碍,实现了agile软件开发和IT运营的...

    yyx
  • DevOps实施过程中要避免的10个陷阱

    在各种规模的公司当中,由于技术团队定义成功的方式发生了变化,软件正越来越多地提供业务价值。构建的应用程序为客户带来价值。凭空说和稳定已不再是IT的关键价值。现在...

    泽阳
  • 综述 DevOps

    DevOps 常见于各大云计算提供商。DevOpe被用于打破开发者和运维者之间的壁垒,目的是缩短软件开发周期并提供高质量的持续集成。

    宋天伦

扫码关注云+社区

领取腾讯云代金券