「ちゃんと仕事のできるインフラエンジニア」を目指せ:ゼロから始める「インフラエンジニア養成所」(1)(1/2 ページ)
Webがインフラとなりつつあり、クラウドコンピューティングが普及し始めている現在、「ちゃんと仕事のできるインフラエンジニア」は圧倒的に不足している。インフラを基礎から学び直し、市場価値のある優れたインフラエンジニアを目指そう。
今回から、「Linuxサーバを対象とした業務をちゃんとしたレベルで行えるようになりたい」という人を対象とした、「ゼロから始める『インフラエンジニア養成所』」を連載することになりました。よろしくお願いします。
第1回は、この連載の概要について書いてみたいと思います。ちょっと堅苦しくて、盛り上がりに欠けるかもしれませんが、少しだけ我慢してお付き合いください。
「ちゃんと仕事のできるインフラエンジニア」が足りない!
筆者はゼロスタートコミュニケーションズというベンチャー企業を創業し、代表取締役を務めています。ゼロスタートでは4月から「tech camp」という、インフラエンジニアに特化したITスクールを開設しました。
なぜ「tech camp」を開設したのか? それは、
「日本にはインフラエンジニアが絶対的に不足している」
からです。
「そんなことないよ」「たくさんいるよ」「むしろ余ってるよ!」という人がいるかもしれません。でも、ここでいっているのは「ちゃんと仕事のできるインフラエンジニア」のことなのです。
defaultでOSを入れました、不要なサービスがたくさん動いてます、yumで必要なアプリを入れます、設定ファイルもdefaultです……では駄目なのです。
今後、Webが社会インフラとなっていくためには、さまざまなサービスを安定して稼働させるため、優れたインフラエンジニアをどんどん育てていく必要があります。
しかしながら、いくつかの理由により、インフラエンジニアはなかなか育ちづらい状況にあります。この理由については後ほど述べたいと思います。
「tech camp」のカリキュラム
この連載では、「tech camp」のカリキュラムと連動する形で、インフラエンジニアはどうやってスキルを身に付けていけばいいかについて、筆者の経験を基に解説する予定です。
「tech camp」のカリキュラムは主に、実際に作業しながら学ぶ「トレーニング」と呼ばれるコースと、いわゆる座学である「レクチャー」に分かれています。「tech camp」では「現場で役立つスキル」を身に付けることを目標としているため、特に「トレーニング」を重視しています。
トレーニングの構成は、現状では下記のとおりです。
- Linux管理
- ハードウェア
- ネットワーク基礎知識
- Shell
- Webサーバ
- メールサーバ
- ネームサーバ
- データベース
- SQL言語
- Apache
- MySQL
- サービス冗長化
- スケーラビリティ
- セキュリティ
- パフォーマンス測定・改善
- トラブル対応
- プログラミング言語
- バージョン管理
- Webアプリケーションフレームワーク
- クラウド概要
- Amazon EC2
- Google App Engine
- mixiアプリ
- Facebookアプリ
この連載では、トレーニングの内容をピックアップしながら進めていく予定です。
ただし、トレーニングカリキュラムの順番どおりだと、ちょっと「堅い」感じなので、この連載では順番を入れ替えていく予定です。
インフラエンジニアを取り巻く悪循環
ここで、なぜ筆者が「インフラエンジニア」にこだわっているのかについて、意見を述べたいと思います。
まず、この連載において「インフラエンジニア」という言葉が何を指すのか、はっきりさせておきましょう。
一般的にインフラエンジニアというと、人によっては「ネットワークエンジニア」を思い浮かべるかもしれませんし、「サーバエンジニア」を思い浮かべる人もいるでしょう。両方を思い浮かべる人もいると思います。もしかすると、「ファシリティエンジニア」を思い浮かべる人もいるかもしれません。
この連載においては、「インフラエンジニア」とは、ほぼ「サーバエンジニア」を指します。
さて、繰り返しになりますが、インフラエンジニアはインフラエンジニアでも、「ちゃんと仕事のできるインフラエンジニア」は絶対数が非常に少ないと思います。
なぜ「ちゃんと仕事のできるインフラエンジニア」は少ないのでしょうか。それは、
- そもそもインフラエンジニアになりたいと思う人が少ない
- 「ちゃんと仕事のできるインフラエンジニア」になるための道が整備されていない
という2つの理由があると筆者は考えています。
プログラマの方が、華やかなイメージがあったり、書籍がたくさん出版されていたり、Web上で情報が充実していたり、手元にPCが1台あれば取りあえず始められたり、などの理由で、インフラエンジニアよりハードルが低いという点は否めないでしょう。
それに対して、サーバを管理するインフラエンジニアというのは、地道で、地味で、なんだか縁の下の力持ちっぽくて、泥臭そう……というイメージがあるのではないでしょうか。トラブル対応、24時間シフトなどのイメージもあり、ちょっとガテン系でダサい、などと思われているような気もします。
加えて、インフラエンジニアは、「どうスキルを習得していけばいいのか分からない」という部分があるのも否めません。ちゃんと技術を教えられる人が少ないのも問題です。
こうしたいくつかの要因が、「ちゃんと仕事のできるインフラエンジニア」の不足につながっているのではないでしょうか。
もっとも、インフラというものは正常に稼働して当たり前、問題が起こったときには評価が下がる減点方式の世界なので、なかなか未経験の新人に「じゃあちょっとやってみろ」といえないのも事実。やむを得ない部分もあります。
人が足りない、教える手間も暇もない、そもそもなりたい人も少ない。これでは悪循環です。
Copyright © ITmedia, Inc. All Rights Reserved.