Linux人材は売り手市場
平氏のLinux歴は長い。「今年で20年目」というのだから驚きである。1997年にあるパソコン雑誌に掲載されていた「OSをLinuxにすればパソコンは安定する」という記事を目にし、付録のCD-ROMを使ってLinuxのインストールに挑戦したのが始まりだそうだ。当時はまだ学生だったが、それからLinuxの知識、技術、経験を積み重ね、現在では、世界で大きなシェアをもつLinuxディストリビュータ[1]であるRed Hat社の日本法人(レッドハット株式会社)でエバンジェリストを務めている。
Linuxが世界に初めて登場したのは1991年のこと。1990年代後半から人気に火が付き、それから長い時間が経過しているが、まだ一般には馴染みが薄いかもしれない。しかし、社会基盤や企業の情報システムで、Linuxは今や欠かせない存在だ。調査会社のIDC Japanの発表よると、国内企業でのLinuxの利用率は67.3%に上るという。サーバーのOSとして使われるケースが主だが、ほかにも家電、ATMなど多様な機器で広く用いられている。身近なところではAndroidスマートフォン。Android OSはLinuxをベースに作られている。今後はIoT[2]向けのセンサーデバイスでも利用が増えると予想されている。
一方で、課題とされているのがLinux人材の不足である。Linuxを利用したサーバーや機器が増えるのは確実だが、Linux技術者の人数がそれに追いつかないのだ。つまり、Linuxのスキルがエンジニアとしてのキャリアに有利に働くのは間違いない。平氏は「いまLinux人材は売り手市場です。弊社でも定常的に採用枠がありますが、なかなか埋まらないくらいです」と話す。
注
[1]: Linuxを製品化して提供する企業のこと。
[2]: Internet of Thingsの略。「モノのインターネット」といわれ、電子機器やセンサーなどをインターネットに接続し、それらからデータを集めて活用する。生活空間から産業まで大きく変革することが期待されている。
Linux+1が好待遇の条件
一口にLinux人材といっても、Linuxに関わる業務は無数にある。運用ならサーバーOSを導入し、稼働状況を管理するのが役目だ。この場合、単にLinuxだけではなくインフラの知識が必要となるだろう。開発なら一般的なシステム開発のほか、ATM、通信機器、工場で使う機械制御など組み込み系の開発もある。
ただし、どの業務でも「Linuxを扱えます」というだけでは厳しいと、平氏は言う。「Linux人材として強みを出すなら、基礎の上に何か1つ得意分野を作る必要があります。例えば、カーネル[3]の内部構造を理解しているとか、Apache Hadoop[4]やDockerコンテナ[5]など、実務に直結する技術を使いこなせるなど。基礎スキルが一定以上あり、何らかの得意分野があるエンジニアは業界で活躍しています。待遇もかなりいいです」(平氏)
ちなみに、Linux界隈で今話題のOpenStack[6]はどうだろうか。「OpenStackはいわばトライアスロンです。扱うには仮想化技術、ネットワーク、ストレージなど、現在のサーバー管理に関するほぼ全ての分野のスキルが必要です」(平氏)。初級者が取り組めるようなレベルではないし、OpenStackだけを表面的に知ったところで活躍はできないのだ。
さらに、大事な点について平氏は念を押す。「新しいテクノロジーもさることながら、まずはコンピュータの基礎知識をおろそかにしないことが大切です」。基礎知識とはコンピュータの内部には演算処理をするCPUがあり、処理するデータを置くメモリがあり、データを保存するディスクやストレージがあるなど、コンピュータがどのようなものから構成されて、どのように動いているかという基本的な知識だ。一般にコンピュータサイエンスと呼ばれる分野である。「こういう基本的なことを知らないと、Linuxの利用中に問題が起きたとき、対処できなくなります」(平氏)
OpenStackを正しく使用するのに必要な仮想化技術、ネットワーク、ストレージなどのスキルは、こうした基礎知識の上に築かれる。遠回りをするようだが、コンピュータという機械を深く理解することが、Linuxの最新テクノロジーを扱えるエンジニアになる王道なのである。
注
[3]: LinuxのOSとしての基本機能を実装したソフトウェア。市場に提供されているLinuxはカーネルだけでなく、Linux上で動作するアプリケーションなども含んでいるが、そうした状態のものは正確には「Linuxディストリビューション」という。本来、Linuxといえばカーネルだけを指す。
[4]: 多数のコンピュータに処理を任せることで、大量の計算などを短時間で行うためのソフトウェアの1つ。
[5]: Linux上で動作するソフトウェアの1つで、ある作業を行うために動かす必要のある複数のソフトウェアを1つにまとめたもの(Dockerイメージという)を作っておき、それを実行できる。Dockerイメージがあれば、面倒なセットアップなどを行うことなく、他のコンピュータ上でも同じ作業を行わせることができる。
[6]: クラウド環境を構成するためのオープンソースソフトウェア群。オープンソースソフトウェアだけでクラウド環境を構築できる。仮想マシンの「Nova」とオブジェクトストレージの「Swift」から始まり、今では多様なソフトウェア(コンポーネント)が加わり広がりを見せている。
Linuxエンジニアの価値についてもっと知りたい方は
レッドハットが提供するトレーニングや認定資格のWebサイト「RED HATトレーニング」では、Linuxエンジニアの強み・価値や、レッドハットのLinuxトレーニング・認定資格について語られたセミナーレポート「Red Hat Certified Professional Day 2016」を公開中。Linuxを始めとするオープンソースソフトウェアの現状から事例、取得者の声までをご覧いただけます。