「インフラエンジニアをやってみたい人」、「なぜかインフラエンジニアになってしまった人」、「気が付いたら自分がインフラエンジニアだった人」・・・調べている経緯はいろいろあると思いますが、さてインフラエンジニアとは何でしょうか?
対象読者: インフラエンジニアの業務がわからない人、インフラエンジニアの勉強をしたい人
「インフラ」の意味は?
「下支えするもの」、「下部構造」を指す用語です。もともとの用語は「インフラストラクチャー(infrastructure)」という用語で、略して「インフラ」と言います。別の言葉に置き換えると、「インフラ」=「基盤」と考えるとわかりやすいと思います。
一般的には「道路」、「電気」、「ガス」、「水道」など我々の生活に必要なものを「インフラ」と呼ぶことも多いです。
システムに置き換えると、システムを動かすために必要な基盤部分をシステムの「インフラ」となります。
「インフラエンジニア」とは?
アプリケーションが動く「インフラ」となるサーバやOS(オペレーティングシステム)を担当します。サーバ系のエンジニアを「インフラエンジニア」と呼ぶことが多いです。ネットワークスイッチやルータなどネットワーク機器を担当するネットワーク系のエンジニアも含めて「インフラエンジニア」と呼ぶこともありますが、ネットワーク系のエンジニアはそのまま「ネットワークエンジニア」と呼ぶほうが多いでしょう。あと、プロジェクトによってはインフラエンジニアがミドルウェア部分まで担当することも多いですね。例えばOracle、MariaDBといったデータベースとかApache、NginxといったWebサーバなどです。中小規模のプロジェクトほど、インフラエンジニアの役割分担が広く、大規模なプロジェクトほど、インフラエンジニアの役割分担の範囲が狭くなる傾向があります。ほんとに小規模なプロジェクトであれば、アプリケーションエンジニアがインフラ部分まで担当することもあります。
「〇〇エンジニア」の分類方法については、勤めている会社、あるいは参画しているプロジェクトによって若干の違いがありますが、「インフラエンジニア」といえばサーバ、ミドルウェア、ネットワークといったアプリケーションが動く基盤部分を担当すると覚えておけばよいでしょう。
インフラエンジニアのスキル【技術編】
インフラエンジニアといっても幅広い技術が必要です。業務を開始した当初はOSのインストール立ち上げ、ネットワーク設定から始めるケースが多いと思います。ただ、インフラエンジニアに求められる技術はまだまだあります。
インフラエンジニアが担当する領域の例を挙げておきます。プロジェクトや担当領域によって、必要な技術は変わってきますが、概ね以下のような内容が一般的です。
- OS
- ネットワーク
- DNS
- NTP
- メール
- Web技術
- データベース
- 監視、ログ
- バックアップ
- セキュリティ
これらの名称を見て気づくかもしれませんが、インフラエンジニアの担当領域の言葉自体、非常に広い意味で使われている言葉が多いですね。
例えば「セキュリティ」と一口に言っても、ファイアウォール機器で設定するセキュリティなのか、OSのセキュリティの話なのか、Webアプリケーションのセキュリティの話なのか、数多くの意味があります。インフラエンジニアがWebアプリケーション対策としてWAFの実装を担当することもあります。
「自分が担当しているプロジェクトでインフラエンジニアの領域はどこまでなのか?」と意識することが大事です。もし興味があって自分がやりたい領域があった場合、スキルアップのためにチャレンジしてみるのも経験になってよいと思います。
なお、スキルの幅を広げるのは他のエンジニアとのコミュニケーションでも役に立ちます。たとえば、サーバ系エンジニアと、ネットワーク系エンジニアでチームが別々のプロジェクトもよくあります。
そんなときサーバ系エンジニアがネットワークのことも詳しければ、話が通じやすくコミュニケーションがスムーズです。逆にネットワークのことがあまり詳しくないサーバ系エンジニアの場合はどうなるでしょうか? なかなか会話がかみ合わず双方無駄な時間を費やすことが多くなります。
インフラエンジニアが見るべき情報
最初は業務を覚えることでいっぱいいっぱいだと思いますが、少し業務に慣れてきて、情報収集や学習する時間の余裕ができ始めたころに一度目を通しておきましょう。業務一筋だと得られない情報がたくさん得られると思います。「これについては、〇〇に△△と定義されています」と説明できるようになり、エンジニアとして説得力が上がります。
名称 | URL | 備考 |
IPA | https://www.ipa.go.jp | 国家資格である「情報処理技術者試験」で有名ですね。そのほかにもIT関連の情報がわかりやすくまとまっています。特にセキュリティ関連の情報が日本語でまとまっていますので、セキュリティに携わるエンジニアは見ておいて損は無いでしょう。初心者向けにもわかりやすいドキュメントもたくさんあります。 |
RFC | https://www.ietf.org/rfc/ | インフラエンジニアがRFCの仕様を調べることはあまり無いと思いますが、「人によって違うこと言ってること違う」と思ったら、調べてみるのもいいかもしれません。 |
IPA 【システム構築の上流工程強化(非機能要求グレード)】 | https://www.ipa.go.jp/sec/softwareengineering/std/ent03-b.html | またIPAの情報になりますが、上流工程で押さえておくべき非機能要求について体系的にまとまっています。インフラの要件定義、設計に携わる方は見ておきましょう。 |
CIS Benchmark | https://www.cisecurity.org/cis-benchmarks/ | 米国のCIS(Center For Internet Security)という団体が、システムのセキュリティをベストプラクティスとしてまとめたガイドラインです。 LinuxやNginxといった製品ごとに対策が指示されているのでエンジニアとしては理解しやすい内容です。 |
まとめ
インフラエンジニアのイメージはわかりましたでしょうか? インフラエンジニアは業務の幅が広いため勉強すればするほど実力が上がりやりがいがある職種です。またシステム全体のことも把握しやすいため、意思と主体性があればどんどんステップアップも可能です。
参考
インフラエンジニアの本、書籍
一昔前は「インフラエンジニア」に特化した書籍はほぼ皆無でした。最近はいろんな「インフラエンジニア本」があります。ただ「インフラエンジニア」という名称ばかりだと、どの本がいいのか悩んでしまいそうですね。
実際、読んでみた感想を書いていこうと思います。
「サーバ/インフラエンジニアの基本がこれ1冊でしっかり身につく本」(技術評論社)
サーバ/インフラエンジニアの基本が身につく本です。
一見初心者向けに見える本ですが、情報が唐突に出現して詳しい解説もなく終わってしまうため初心者には少し理解するのが難しいかもしれません。クラウドはAWSの話題も出ていますが、これだけでクラウドを理解するのは難しでしょう。
対象の読者としては、一定の経験を積んでから中級レベルに差し掛かる際に、自分に足りない技術は何か?といった感じで技術の幅を広げる目的で読むのがちょうど良さそうと考えています。そこで足りない技術が見つかれば、その技術の専門書を別途読むのが良いでしょう。
- 初心者度: ★★★☆☆
- わかりやすさ: ★★☆☆☆
「図解即戦力 インフラエンジニアの知識と実務がこれ1冊でしっかりわかる教科書」(技術評論社)
シリーズ化されている「しっかりわかる教科書」シリーズのインフラエンジニア本です。カラーで図解が多いのが特徴で、非常に読みやすくまとまっています。
このシリーズの特徴でもありますが、体系的に情報がまとまっています。また、現場レベルの話題も記載されており、まだインフラエンジニアになる前や、これからインフラエンジニアの業務を始めるといった人にも「インフラエンジニアとはどんな業務なのか?」が非常にわかりやすく書かれています。
- 初心者度: ★★★★☆
- わかりやすさ: ★★★★☆
コメント