云工程师会编写代码吗?

2025-06-09

云工程师会编写代码吗?

DevOps、平台工程师、云工程师。这么多术语和角色!但它们似乎都指同一个意思。那么,说到云工程师这个新术语,云工程师每天都在做什么?云工程师会写代码吗?

云供应商徽标

关于云工程师是否编写代码,简短的回答是:是的。但是,云工程师不会编写任何旧代码,他们编写的是特定类型的代码。

阅读完本文后,您将了解什么是云工程师以及他们是否会编写代码(剧透警告:他们会)。

随着云技术整体的普及,云工程师的角色也越来越重要。如果我们查看一下谷歌趋势,就会发现搜索词的增长在 2013 年左右开始爆发式增长……

“云工程师”的 Google 趋势搜索结果

“云工程师”的 Google 趋势搜索结果

无论您是想成为一名云工程师,还是想聘请云工程师,又或者只是好奇云工程师是什么,来到这里,我们最合理的出发点就是先对云工程师进行定义。那就让我们开始吧。

什么是云工程师?

云工程师是一种特殊的软件工程师。云工程师通常因其在设置和维护云服务方面的技能而受聘。云工程师通常对云平台(例如:Amazon Web ServicesGoogle CloudAzure)有深入的了解。

云工程师需要对这些云平台了如指掌,以便为其业务提供宝贵的见解。云工程师需要为各种云主题提供建议和实施,例如:

  • 构建云组织的架构和安全。
  • 应采用哪些服务以及应避免哪些服务(以及原因)。
  • 云策略,例如云原生或云不可知策略。
  • 云端软件工程的最佳实践。

云工程师的编码类型

尽管我们对云工程师的工作有了更好的理解,但我们仍然没有接近回答我们最初的问题:云工程师会编码吗?

如果您还记得,在文章开头我们说过,云工程师确实会编写代码,但他们是在特定领域编写代码。

让我们快速概述一下云工程师可能编码的领域:

  • 基础设施即代码——编写创建、更新或删除云基础设施的代码。
  • 无服务器功能——编写可用于执行备份或日志传送等任务的小型实用方法。
  • 构建/部署工具——编写用于打包和部署应用程序的代码。
  • 监控——对应用程序进行检测,以便它们发出可用于远程调试应用程序的必要信息。

这是对云工程师编码的一些领域的相当高级的描述。让我们分解这些领域以更多地了解它们。

基础设施即代码

基础设施即代码

基础设施即代码:Terraform 中的 S3 资源

基础设施即代码 (Infrastructure As Code) 是一种以代码形式编写和存储基础设施创建/更新/删除指令的实践。以代码形式编写的基础设施的使用方式与其他应用程序代码类似:使用构建工具验证代码的正确性,并遵循代码审查等行业惯例。

编写“基础设施即代码”是云工程师的主要职责之一。云工程师可以为其他团队编写基础设施代码,也可以为他们提供关于整个业务的“基础设施即代码”结构的建议,甚至可以构建一个平台即服务,让工程师无需自己实现基础设施即可部署代码。

基础设施即代码 (IaaS) 可以用两种风格编写:声明式或命令式。声明式风格是指云工程师编写配置类型代码,例如 JSON 或 YAML 文件;而命令式风格是指云工程师编写的代码看起来更像典型的过程式应用程序代码。

如果您想了解有关基础设施即代码的更多信息,请查看文章:基础设施即代码:快速而简单的解释。

编写无服务器函数

AWS Lambda

AWS Lambda

无服务器函数允许软件工程师编写小型计算代码,而无需担心基础设施的配置。AWS Lambda 和 Google Cloud Functions 就是此类基础设施的典型代表。

无服务器函数经常被云工程师采用,因为它们就像粘合剂一样,将不同的云服务连接在一起。事实上,这也是函数最初被发明的原因之一。

云工程师经常使用云功能来执行诸如扫描漏洞或配置错误的基础设施、备份应用程序以及存储或修改日志文件或备份等任务。

编写云函数与编写典型的应用程序代码非常相似。函数需要进行有效的测试,需要合理的软件流水线,还需要监控潜在的宕机时间,以保证服务高效运行。

要了解有关云功能和无服务器的更多信息,请查看无服务器终极指南:无服务器:终极指南

构建脚本和工具

构建服务器徽标

构建服务器徽标

云工程师可能参与编写代码的另一个领域是构建和发布脚本及工具。构建工具是指执行内部任务的计算能力(通常是服务器),这些任务有助于软件的自动化、打包和部署。

构建工具通常会启动软件的测试运行,并将其部署到远程环境。云工程师可能正在编写代码来辅助这些脚本的运行。这些代码通常是 Bash 脚本,或者编写配置文件,例如 YAML 或 JSON。

与无服务器编程不同,构建系统的编码更多地是设置配置文件,而不是解决逻辑或程序问题。然而,某些构建工具可能需要执行更复杂的任务,这需要真正的编码。

仪器监控

CloudWatch 仪表板

CloudWatch 仪表板

云工程师通常要编写代码的最后一个领域是支持应用程序警报和监控。

监控工具可帮助软件工程师了解其应用程序的远程运行情况。监控工具可以告诉软件工程师他们的服务器是否正常运行;如果服务器出现问题,监控工具会指出问题所在。

为了实现监控,应用程序需要进行仪表化。仪表化软件通常意味着仔细检查应用程序,了解需要哪些数据才能从外部视角理解和观察系统,并在正确的时间发出数据。

因此,云工程师需要提供支持和/或亲自实施服务所需的检测,以便其能够发出必要的数据。检测通常采取以下形式:添加日志条目、发出指标或跟踪记录,以及/或者配置代理或支持允许服务器报告这些监控数据的基础设施。

云工程师会写代码吗?是的。

今天的文章就到这里。今天我们深入探讨了云工程师这个神秘的角色。希望你对云工程师的角色以及他们日常的工作内容有了更清晰的认识。

我们发现,云工程师确实会写代码!但正如我们所见,他们并非只做任何类型的代码,他们通常需要完成特定类型的代码,而不仅仅是日常的应用程序开发。

我希望我能帮助您更多地了解云工程师的角色,以便您可以聘请一位,甚至成为一名云工程师。

快来和 Cloud Native 朋友交流吧!


云工程师会编写代码吗?这篇文章最先出现在The Dev Coach上。

Lou 是《云原生软件工程通讯》的编辑,该通讯致力于使云软件工程更易于访问和理解,每两周您将在收件箱中收到一份针对云原生软件工程师的最佳内容摘要。

鏂囩珷鏉ユ簮锛�https://dev.to/loujaybee/do-cloud-engineers-code-4f8g
PREV
使用后台任务实现 API:一种实用的方法
NEXT
AWS 网络基础知识:软件工程师的简单指南。