焦点
站点可靠性工程师(SRE)、发布工程师、自动化工程师、持续集成/持续部署(CI/CD)工程师、基础设施工程师、构建与发布工程师、系统工程师(DevOps)、平台工程师、云工程师(DevOps)、部署工程师
Testhouse 将 DevOps 概括为“人员、流程和产品”之间的关系。从某种意义上说,开发运维工程师这一职位的出现,正是源于对过往失误的总结。 过去,软件通常由一个团队开发,再由另一个团队进行修改,这往往导致冲突和混乱。随后,一种名为敏捷开发(Agile Development)的概念应运而生,为人们提供了一种更具协作性的变更方式。DevOps 为相关开发和运维团队提供了一种参与更高效演进过程的途径。其结果是:标准化程度更高、可控性更强、可预测性更强……而破坏性的内讧则更少。
DevOps工程师就像调解员。他们在过程中介入,确保每个人都保持目标一致,并保证在进行更新时,目标得以明确并实现。他们必须对整个项目保持全局视野,同时又能聚焦于较小的功能模块,观察它们如何影响整体。当评估变更并提出提高效率和效果的建议时,人们依赖于他们的判断。其他职位名称可能包括开发运维经理、集成专家、发布经理或自动化工程师。
主动型人工智能工具能够自动化持续集成/持续交付(CI/CD)管道,并实时监控系统。如今,DevOps 专业人员将更多精力投入到可靠性策略、事件响应以及协调基于人工智能的工作流上。人为监督和系统思维依然至关重要。
- 从全局角度把握项目
- 在团队之间充当中介
- 以平稳、高效且有效的方式管理变革
- 践行良好的领导力和管理技能
工作时间表
- DevOps工程师在Glassdoor的“2020年美国最佳职业”榜单中位列第五。由于市场需求旺盛,从业者至少能获得全职工作机会。该领域高素质工程师的供给仍无法满足需求。在转型时期,企业高度依赖这些从业者所具备的独特技能。当项目进度滞后或出现意外问题时,可能需要加班。
主要职责
- DevOps 工程师确保用户能够获得组织希望他们获得的内容,即使平台正在进行变更,也不会造成中断或降低质量。
- 基础设施管理是一项关键职责,包括应用程序的开发和部署
- 应用敏捷方法论的原则
- 构建持续集成与交付管道
- 将技术目标与业务需求相结合
- 与不同团队保持联系
- 有效管理安全并查找漏洞
- 使用自动化工具将代码部署到各种环境中
- 规划申请与基础设施;测试与开发
- 了解 IT 运维和系统管理员的职责;制定集成与部署策略
- 使用开源工具和可扩展数据库
- 其他职责
- “随叫随到”的事件响应与管理
- 确保遵守组织规程
- 优化流程、人员和工具
软技能
- 促进协作的能力
- 变革管理技能
- 灵活性
- 注重细节
- 客户服务
- 果断
- 条理清晰;时间管理能力强
- 高度的安全意识
- 领导力和管理能力
- 耐心与分析性问题解决能力
- 出色的沟通能力
- 注重团队合作,以目标为导向
技术技能
- 持续集成
- 熟悉基础设施自动化
- 掌握编程语言,例如 Python、JavaScript、Ruby、Perl、C/C++、Go 和 Java
- 了解容器(软件的标准化单元)
- 计算机系统设计公司
- 企业/公司
- 政府/军事机构
- 医疗保健
- 高等教育机构
- 媒体与娱乐
- 自雇人士
企业对经验丰富的DevOps专家的软技能的依赖,几乎与对其技术能力的依赖程度相当。开发运维工程师被寄予厚望,需成为推动无缝变革的卓越推动者。他们肩负着重大责任,必须确保团队能够齐心协力,实现那些看似并不总是一致的目标。
当需要快速部署变更时,时间就是生命。但在编写软件时,仓促行事会导致无法承受的错误。这正是 DevOps 工程师冷静的头脑和分析能力大显身手之处。有时他们会陷入进退两难的境地,但必须依靠他们来寻找方法克服所有障碍、协调问题,并确保一次到位。
自动化是王道。自动化应用得越成功,人为失误的可能性就越小。DevOps 工程师需要具备分析所在组织工作实践的能力,从而找出可实现自动化的领域,或发现现有自动化流程中可改进之处。另一大趋势是从单体应用转向小型、可扩展的微服务,这类微服务在管理上更为简单。谷歌广受欢迎的 Kubernetes 容器管理工具也在助力众多 DevOps 团队,并在未来几年将继续发挥这一作用。
与 IT 领域的任何角色一样,人工智能/机器学习的持续渗透将继续影响 DevOps,并带来处理海量数据集所固有的挑战。如果使用得当,人工智能可以减轻负担并消除瓶颈。DevOps 领域的其他最新发展包括向无服务器架构的迁移以及对安全性的日益重视。
与其他IT专业人士一样,DevOps工程师每天大部分时间都在室内度过,伏案工作,盯着屏幕。他们中的大多数人从小就是狂热的技术爱好者,乐于在电脑键盘前消磨数小时,探索软件和编程语言的奥秘。然而,开发运维工作需要强大的沟通能力,这意味着从业者并非整天独自待在房间里。
恰恰相反,他们更可能与同事进行协作,无论是面对面还是在线上。这一职业领域所需的技能,除了客观的思维方式外,还要求具备出色的社交能力。对DevOps感兴趣的从业者,很可能在年少时就因其公正、理性,以及在调解纠纷和促成共识方面的天赋而备受尊重。他们可能擅长辩论,同时在英语、市场营销和艺术方面也颇有造诣。
- DevOps 工程师通常需要拥有学士学位,最好是计算机科学或相关专业的学位。有时,相关认证和丰富的工作经验就已足够,但若想在求职中更具竞争力,拥有学位总是加分项。
- 建议选修数据中心迁移课程
- 市面上有大量课程和认证可供选择,助您在求职市场中实现专业化或提升竞争力。可选项目包括:
- DevOps敏捷技能协会(DASA)提供三个级别的认证:
- 领导力——DASA DevOps 产品负责人、领导者或教练
- 专业级 - DASA DevOps 启用与扩展、定义与验证,或创建与交付
- 基础课程 - DASA DevOps 基础
- 亚马逊网络服务(AWS)的课程(注意:请留意工作经验要求):
- AWS 认证云从业者
- AWS 认证 SysOps 管理员 – 基础级
- AWS DevOps 工程师 – 专业级
- 认证 Jenkins 工程师
- 思科 DevNet
- 微软认证:Azure 管理员助理
- Puppet 认证专家
- 红帽 Ansible 自动化认证专家
- 其他所需经验可包括:Java、Python 和 Groovy;Microsoft Server、Linux、Apache、Bash;IP 网络
- 您可以通过以下方式进行自学:
- CompTIA Linux+
- Coursera 的 DevOps 课程
- edX DevOps 课程
- LinkedIn Learning 的 DevOps 课程
- Pluralsight 的《DevOps:全局视野》
- Udacity 的《DevOps 入门》及其他课程
- Udemy DevOps 课程
- 别忘了参加那些旨在培养英语、写作、口语、团队合作和领导力等软技能的课程!
- 要掌握 DevOps,需要学习许多工具和技能。并非每个培训项目都涵盖所有内容,但建议选择那些包含尽可能多相关课程的项目
- 该院系是否有知名教授?该项目的设施如何?他们的研究领域有哪些?资金来源是怎样的?优秀的项目都会详细介绍这些内容!
- 如果学校公布了该专业的毕业就业率,请仔细查看。通常来说,如果学校有值得夸耀的地方,他们就会公布这些数据
- 他们提供哪些免费的职业服务或其他求职帮助?
- 请确保该机构已获得全面认证
- 在线课程既有优点(比如方便易学),也有缺点(缺乏面对面的同伴互动),但你能从中获得的价值取决于你付出的努力!
《美国新闻与世界报道》2020年“最佳计算机科学项目”榜单是一个不错的起点。请记住,该榜单每年都会更新。了解其评估方法很有必要,因为对他们而言重要的排名标准,对你来说未必重要。
请记住,虽然学位对DevOps职业发展很重要,但雇主更看重具体的知识、技能以及相关经验。 不要以为仅仅毕业于一所名校就足以让你获得工作。对于某些雇主而言,上述证书和培训同样重要。这完全取决于他们的需求,而需求可能会发生变化。
作为一名DevOps工程师,成功的关键在于保持灵活、紧跟时代,并根据目标雇主的具体需求调整你的学术方向。 主动查找你心仪公司中现任 DevOps 工程师的联系方式,直接询问他们的毕业院校、专业方向、推荐的选修课,以及建议考取的额外证书和工作经验。你也可以利用讨论帖或 Quora 等问答网站发布问题(但要注意查看回答的发布日期)。
- 在开始求职之前,先浏览一下招聘信息。仔细阅读你心仪的公司所发布的职位中列出的任职要求。
- 多加练习各种技能,越早越好!(关于可以在业余时间参加的课程和认证,请参阅上文“教育与培训”部分)
- 请记住,DevOps 处于整个流程的核心位置,因此要保持培训的平衡
- 寻找机会锻炼必要的软技能,例如在学校委员会中担任需要领导力和管理能力的职位。不要甘于居于次要地位
- 当你掌握了一些有市场价值的技能后,不妨在Upwork等自由职业平台上尝试运用这些技能,从而获得实践性的有偿工作经验
- 在招聘网站上寻找 DevOps 实习机会,或向所在院校寻求帮助
- 积极参与吧!加入IT相关的社团,拓展人脉,结识志同道合的朋友
- 找一位资深的DevOps高手,愿意收你为徒并指导你
- 成为沟通与调解高手
- 阅读文章并参与 Quora、Reddit、Dev.to 及其他平台上的讨论
- 参加TripleByte 的 DevOps 筛选测试。如果通过测试,您将有机会与他们合作网络中的雇主进行面试。
- 仔细搜索Indeed、Monster、USAJobs、ZipRecruiter、LinkedIn、Velvet Jobs和Glassdoor等招聘网站
- 像招聘人员一样思考!阅读 ZDNet 的《招聘 DevOps 工程师的八大最佳实践》
- 告诉你的社交圈你正在求职。请他们如果有好的职位线索,务必与你联系
- 请向所在学院的系办公室或职业发展中心咨询有关招聘会、招聘活动、实习机会以及简历撰写和面试练习等其他协助的信息
- 请仔细阅读招聘启事中列出的所需经验和技能
- 竞争非常激烈,因此请将精力集中在您条件最符合的职位上,并针对申请的每个具体职位量身定制简历
- 查看 Indeed 的 DevOps 简历范例
- 切勿抱着“临场发挥”的心态去参加面试。请阅读Simplilearn的《DevOps面试必备86问》,做好充分准备,给面试官留下深刻印象!
- 有趣的是,该领域的从业者往往否认“DevOps工程师”是一个真正的职位名称。因此,在这样的环境中摸索职业晋升之路是一项挑战
- 在DevOps之后,你可以选择担任技术负责人、架构师或首席工程师等职位。发展路径多种多样,很大程度上取决于你所在组织的规模(以及你是否愿意跳槽到其他地方工作)
- 在时机成熟时,不妨坦诚地向你的直属上司和管理层表达你希望晋升的意愿。更好的做法是,主动询问你能做些什么来让“时机”早日到来!
- 不要操之过急,也不要给人一种你只是在寻找更优厚待遇的印象。要展现出忠诚,并致力于通过努力工作来争取晋升机会。
- 攻读硕士学位或许是个明智的选择,但请注意,有些公司会将其证书课程冠以“硕士证书”或“硕士课程”的名称
- 紧跟变化和趋势至关重要。与时俱进,否则就会被时代抛在后面!
- 通过教导他人,将你所学传授给别人。这可以通过面对面授课、在线教学、撰写文章、发帖、制作视频等方式实现……
- 如果你真的热衷于社交营销,不妨打造个人品牌,并通过内容浏览量、联盟营销博客、Google Ads 或销售自己的课程来创收
DevOps 是一个充满活力的领域,在软件开发的核心环节中发挥着关键作用。然而,有些从业者更倾向于专注于开发或运维的某一方。与此同时,也有人希望在软件开发以外的领域深耕。
值得考虑的几种替代职业包括:
- 前端开发工程师
- 后端开发工程师
- 全栈开发工程师
- 计算机与信息系统经理
- 计算机程序员
- 计算机支持专员
- 计算机系统分析师
- 数据库管理员
- 信息安全分析师
新闻动态
精选职位
在线课程与工具
预期年薪
新员工的起薪约为8万美元。年薪中位数为10.1万美元。经验丰富的员工年薪可达13.2万美元左右。
预期年薪
新员工的起薪约为10.8万美元。年薪中位数为16.4万美元。经验丰富的员工年薪可达21.1万美元左右。
预期年薪
新员工的起薪约为8.5万美元。年薪中位数为11.1万美元。经验丰富的员工年薪可达14.6万美元左右。
预期年薪
新员工的起薪约为8.2万美元。年薪中位数为11.1万美元。经验丰富的员工年薪可达14.3万美元左右。
预期年薪
新员工的起薪约为7.5万美元。年薪中位数为9.8万美元。经验丰富的员工年薪可达13.3万美元左右。