慣性聚合 関心のあるブログ、ニュース、テクノロジーを効率的に追跡
原文を読む 慣性聚合で開く

おすすめ購読元

博客园 - 司徒正美
V
V2EX
T
Tailwind CSS Blog
有赞技术团队
有赞技术团队
aimingoo的专栏
aimingoo的专栏
Apple Machine Learning Research
Apple Machine Learning Research
IT之家
IT之家
Blog — PlanetScale
Blog — PlanetScale
A
About on SuperTechFans
月光博客
月光博客
T
The Blog of Author Tim Ferriss
宝玉的分享
宝玉的分享
Martin Fowler
Martin Fowler
博客园 - 聂微东
The GitHub Blog
The GitHub Blog
V
Visual Studio Blog
WordPress大学
WordPress大学
酷 壳 – CoolShell
酷 壳 – CoolShell
Engineering at Meta
Engineering at Meta
GbyAI
GbyAI

阮一峰的网络日志

科技爱好者周刊(第 396 期):互联网通信的替代方案 科技爱好者周刊(第 396 期):互联网通信的替代方案 - 阮一峰的网络日志 科技爱好者周刊(第 395 期):软件开发的第三种方式 科技爱好者周刊(第 395 期):软件开发的第三种方式 - 阮一峰的网络日志 科技爱好者周刊(第 393 期):脑腐状态 科技爱好者周刊(第 392 期):axios 投毒与好莱坞式骗术 科技爱好者周刊(第 391 期):AI 的贫富分化 科技爱好者周刊(第 390 期):没有语料,大模型就是智障 套壳中国大模型撑起500亿美元估值?扒一扒 Cursor 的"套壳"疑云 科技爱好者周刊(第 389 期):未来如何招聘程序员 科技爱好者周刊(第 388 期):测试是新的护城河 零安装的"云养虾":ArkClaw 使用指南 科技爱好者周刊(第 387 期):你是领先的 科技爱好者周刊(第 386 期):当外卖员接入 AI 字节全家桶 Seed 2.0 + TRAE 玩转 Skill 科技爱好者周刊(第 385 期):马斯克害怕中国车企吗? 智谱旗舰 GLM-5 实测:对比 Opus 4.6 和 GPT-5.3-Codex 科技爱好者周刊(第 384 期):为什么软件股下跌 科技爱好者周刊(第 383 期):你是第几级 AI 编程 Kimi 的一体化,Manus 的分层 科技爱好者周刊(第 382 期):独立软件的黄昏 AI native Workspace 也许是智能体的下一阶段 科技爱好者周刊(第 381 期):中国 AI 大模型领导者在想什么 科技爱好者周刊(第 380 期):为什么人们拥抱"不对称收益" 科技爱好者周刊(第 379 期):《硅谷钢铁侠》摘录 我如何用 AI 处理历史遗留代码:MiniMax M2.1 升级体验 科技爱好者周刊(第 378 期):预测是新的互联网热点 科技爱好者周刊(第 377 期):14万美元的贫困线 科技爱好者周刊(第 376 期):太空数据中心的争议 科技爱好者周刊(第 375 期):一扇门的 Bug 终于有人做了 Subagent,TRAE 国内版 SOLO 模式来了 科技爱好者周刊(第 374 期):6GHz 的问题 VS Code 使用国产大模型 MiniMax M2 教程 科技爱好者周刊(第 373 期):数据模型是新产品的核心 国产大模型接入 Claude Code 教程:以 Doubao-Seed-Code 为例 科技爱好者周刊(第 372 期):软件界面如何设计 大模型比拼:MiniMax M2 vs GLM 4.6 vs Claude Sonnet 4.5 科技爱好者周刊(第 371 期):一个乐观主义者的专访 科技爱好者周刊(第 370 期):正确的代码高亮 错误处理:异常好于状态码 科技爱好者周刊(第 369 期):Tim 与罗永浩的对谈 科技爱好者周刊(第 368 期):不要这样管理软件团队 一天之内,智谱和 Anthropic 都发了最强编程模型 科技爱好者周刊(第 367 期):Nano Banana 的几个妙用 科技爱好者周刊(第 366 期):旧金山疯狂的 AI 广告 科技爱好者周刊(第 365 期):流量变现正在崩塌 科技爱好者周刊(第 364 期):最难还原的魔方 科技爱好者周刊(第 363 期):最好懂的神经网络解释 科技爱好者周刊(第 362 期):GitHub 工程师谈系统设计 科技爱好者周刊(第 361 期):暗网 Tor 安全吗?
運用の未来はプラットフォームエンジニアリング
阮一峰 · 2023-03-21 · via 阮一峰的网络日志

インターネット企業には重要な職種が一つあり、「運用」と呼ばれている。

「運用」の英語はOperationsで、Opsと略される。直訳すると「操作」となり、様々なサーバーの操作を指す。

簡単に言えば、運用エンジニアとはサーバーを管理し、コードの実行環境を確保する人である。

これは非常に重要な仕事であり、企業は十分に重視すべきだ。しかし実際にはここ数年、運用職は常に縮小傾向にあり、OpsエンジニアはDevOpsエンジニアへの転換を求められている。私の知る限り、多くの運用エンジニアは実際に悩んでいる。

このような変化をどう見るべきか?運用には将来性があるのか?将来どうなっていくのか?

最近、外国人の記事を読んだ。タイトルは『運用の未来はプラットフォームエンジニアリング』だった。

「Opsの未来はプラットフォームエンジニアリングだ」

著者はこれらの質問に体系的に答え、運用が最終的に消滅し、新しい職種「プラットフォームエンジニアリング(platform engineering)」へと発展すると考えています

彼の記事はとても示唆に富んでおり、私の運用に対する見解が明確になりました。皆さんと共有させていただきます

一、運用の由来

最初の頃、運用は存在せず、プログラマーがソフトウェアの作成と実行の両方を担当していました

しかし、ソフトウェアの作成と実行は実質的に二つの異なるスキルです:前者はコードに精通する必要があり、後者はサーバーに精通する必要があります

インターネットソフトウェアが発展するにつれて、これらの二つのスキルは徐々に分離していきました

開発エンジニアがコードを作成し、運用エンジニアがコードを実行する責任(すなわちサーバー実行環境の確保)を負います

二、運用の衰退

証明されたように、開発と運用の分離は大きな誤りだった。

コードを書く人々がサーバー環境を理解していないし、サーバーを管理する人がコードが何をしているかを理解していない。これでは優れた製品を作り出すことが難しくなり、問題の特定も困難になる。

したがって、一部の会社では開発と運用を再び統合しようとしている:ソフトウェアを書く人々もソフトウェアの運用を担当する。

これが DevOps の由来であり、Dev(開発)+ Ops(運用)の合体である。

一方で、インターネット会社の核心的な資産と競争力は、よりコードの方が運用よりも多い。そのため、会社は開発にさらに力を入れる意向があり、専門的な運用チームを段階的に縮小し、可能な限りインフラを外部委託する。

これらの要因が決定づけたように、運用は独立した職種として徐々に消えていく。

3. DevOps の問題

しかし、DevOps は実際には運用を置き換えることはできません

業務がますます複雑になるにつれ、システムとインフラストラクチャも複雑になり、同時に安定性と信頼性も求められます

通常の開発エンジニアはこれを実現する能力がありません。彼らはすべてのインフラストラクチャを理解しておらず、専門的な運用レベルのシステム管理には至りません

このような状況では、会社は外部委託を選択し、外部のクラウドサービスを購入しインフラストラクチャを専門的なクラウドサービスプロバイダーに委託し自社のコストを最大限に削減します

4. 運用の責任

全体として、運用はサーバーを管理することですが、二つの側面の責任に細分化できます:基盤の構築 + 実行環境の管理

「基盤インフラの構築」はハードウェアの調達、設置、棚卸し、ネットワーク接続といった作業を指します。

「運用環境の管理」は業務ソフトウェアの動作を保障することを指します。

DevOpsが登場した後、「基盤インフラの構築」这一つの責任は次第に消え、クラウドサービスの調達に変わりました。「運用環境の管理」这一つの責任はDevOpsエンジニアに移されました。

そうして、新しい問題が現れました:誰がクラウドサービスの調達と統合を担当するのか?

五、プラットフォームエンジニアリングとは何か

適切なクラウドサービスを調達することは簡単なことではありません。

クラウドサービスは多岐にわたります。さまざまなAPI、SDK、付属ツールが目まぐるしく、経験豊富な運用エンジニアでさえ明確に説明することが難しいです。

そのため、正しい意思決定を行い、必要に応じたクラウドサービスを選択し、さらにすべての調達したクラウドサービスを統合して業務開発に供するための専任のスタッフが必要です。

この役割はプラットフォームエンジニアリングと呼ばれ、様々なクラウドサービスを評価・調達・統合し、それを自身のインフラストラクチャとして利用し、外部のクラウドサービスを基に自身のプラットフォームを構築し、開発エンジニアがそれを通じて自己サービスを提供し、自身のコードを本番投入できるようにします。

上記の定義にはいくつかのポイントがあります。

(1)インフラストラクチャは外部委託されることで、コストと開発期間を最小限に抑える。

(2)プラットフォームエンジニアは外部委託されたインフラストラクチャを統合し、プラットフォームを構築する。

(3)開発エンジニアはこのプラットフォーム上で、自己の環境を構築・管理し、自身のコードを実行する。

六、プラットフォームエンジニアリングと運用の違い

プラットフォームエンジニアリングと運用には、いくつかの顕著な違いがあります。

(1)プラットフォームエンジニアリングはソフトウェアの開発が必要で、テストの作成やコードレビューを含み、チームの運営は開発チームに似ており、プロダクトマネージャー、デザイナー、フロントエンドエンジニアがいる。

運用は通常アプリケーションソフトウェアの開発はしない、最大限に自動化スクリプトを書くだけである。

以前は、あるエンジニアはコードを書き、別のエンジニアはコードを実行していた。今後は、すべてのエンジニアがコードを書き、自分のコードを実行し、開発エンジニア、DevOpsエンジニア、プラットフォームエンジニアであれ、違いは層や機能に基づく責任範囲が異なることである。

(2)プラットフォームエンジニアリングはクラウドネイティブで、すべての作業はクラウド上にある。

運用はクラウドネイティブではない、ハードウェアを自分で管理する必要があり、クラウドをサポートしているだけと言える。

(3)プラットフォームエンジニアリングはクラウドサービスを購入し、運用はハードウェアを購入する。

七、運用エンジニアのキャリアパス

従来の運用役が消滅する中で、現在の運用エンジニアは必然的に転身を迫られる。選択肢は主に三つある。

(1)業務ソフトウェアの開発に興味があるなら、DevOpsエンジニアになることができる。

(2)プラットフォームソフトウェアの開発に興味があるなら、プラットフォームエンジニアとして、インフラストラクチャの統合に専念できる。

(3)ハードウェアや低レベルに興味があるなら、「インフラストラクチャ即サービス」(IaaS)のクラウド企業に加わり、インフラストラクチャの研究に没頭できる。

(完)