ITインフラエンジニアとは?

いらすとやさんのこの絵、悪意あるよなぁ…。
まあ、このサイトでは「ITインフラエンジニア」について言及しますので、定義についてはっきりしておきたいと思います。
ITインフラエンジニアとは何か
結論から言うと、田中(゜p゜)は「ユーザが業務アプリケーションを利用する「間」の仕組みを構築/運用する人」なのかな、と思ってます。
このサイトにおいては、この概念が最も重要となります。
じゃあ業務アプリって何、それ以外って何、って突っ込まれるとしにます。
ってか企業や業界によっても違うし! 厳密に言ったらキリないので、適当にイメージ化してみますね!

雑ぅ!
ただ、だいたい8割~9割がこの間に収まってますし、あまり厳密に定義しても話が進まないので、こういうことにしておいてください。
技術領域について
人材募集時の職務記述書とかだと、おおむね技術領域によって、以下のように記載されてたりします。※PCエンジニアはあまり聞かないけど、必要な領域だと思います。
- サーバエンジニア
- ネットワークエンジニア
- PC(端末)エンジニア
もちろん大規模なインフラ構築となると、分業が高度化するので、各々の領域も詳細化されていきます。こんな感じで。

場合によると、取り扱う製品ごとにパートナー雇ったりして、さらにカオスが広がることもあります。あまりに煩雑なので、各担当の役割については他のエントリにぶん投げて先送りにします。
こういうエンジニア集団を取りまとめるプロジェクトマネージャ(PM)、プロジェクトリーダー(PL)は、だいたいコミュニケーションコストでひーこら言ってます。
エンジニアはテクニカルトーク大好きで意味わからんし、客とか会社の中の偉い人の相手も必要なので翻訳も必要ですし。
中小規模の構築だと、数名のメンバーで複数の技術領域を手広くやったりもするので、コミュニケーションコストはもう少しマシなのかな、と思いますが。
フェーズについて
現在のところ、田中(゜p゜)の頭の中は比較的レガシーなので、ITインフラのプロジェクトについてPMBOKのウォーターフォールをイメージしてます。
確かにクラウドうまく使えばアジャイル的な開発も可能なのかな、とは思いますが、今のところ案件で出くわしたことはありません。
ウォーターフォールでは、だいたいが以下のようなフェーズに分かれてます。
企画→要求定義→要件定義→設計→構築→テスト→(移行)→(切替)→運用/保守
全くの新規だと移行と切替はなかったりしますが、割合としては少ないです。
このうち、黒字部分はコンサルとか営業の領域で、ITインフラエンジニアの領域は赤字以降です。ちなみにお給料(市場価値)は左に行くほど高い傾向にありますが、これは明確な理由があるので、後続の記事の中で説明します。
赤字のうち、「設計/構築/テスト/移行/切替」を担当するのが「構築エンジニア」、運用保守を担当するのが「運用エンジニア」などとよく言ってます。
構築エンジニアが作ったシステム、ドキュメントを元に運用エンジニアが複数年システムを維持していく、というイメージです。
運用をアウトソースしてない場合は、客がその役割を担うケースもままあります。
このあたりはアプリ開発・運用もあまり変わりないかもしれませんね。
アプリケーションとの境界線
大規模な基幹システムの開発だと、インフラエンジニアがメンバーの一部としてアサインされて、開発に携わることがあります。
アプリケーション開発する人々は、往々にしてインフラの知識は希薄です。なので、性能や、可用性などの非機能要件については、インフラエンジニアがリードするケースがままあります。この辺りも含めてアプリ側と会話した上で設計できると、インフラ寄りのITアーキテクトとして、位が上がります。
結局のところユーザが使いたいのはアプリケーションであって、インフラそのものは後ろに隠れてるわけですから。
まとめ
- ITインフラエンジニアとは、ユーザが業務アプリケーションを利用する「間」の仕組みを構築/運用する
- ITインフラエンジニアは、担当する技術領域、フェーズにより複数に分類され、分類は案件の規模や、所属する組織のカルチャーによって異なる
- ユーザが使いたいのはアプリケーションであって、インフラそのものは後ろに隠れてる