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を始めとするオープンソースソフトウェアの現状から事例、取得者の声までをご覧いただけます。
Linuxを学び始めるならクラウドがおすすめ
コンピュータの構成や動作といった基礎知識を理解する重要性は分かったとして、それらの知識がないとLinuxを全く扱えないわけではない。とにかくLinuxを学び始めてみるにはどうするとよいのだろうか。
数年前まで、Linuxを体験するには「中古のパソコンにLinuxをインストールし操作してみる」のが定番だった。しかし、平氏はこの方法は勧められないという。「中古パソコンにLinuxをインストールするにしても、インストールが成功しないと使えません。本当の初心者はインストールで挫折して、その先に進めない可能性もあります。インストール方法を学ぶことがLinux学習の本質ではないはずです。また、古いパソコンでは、何らかの機能が使えないなど細かな制限が生じる懸念もあります」(平氏)
今はもっといい方法があるという。クラウドサービスを使うのだ。「クラウドサービスなら契約すればすぐに使えるし、無料期間や無料枠があるAWS(Amazon Web Services)などのクラウドプロバイダを選べば、学習用なら無料枠の範囲で収まる」(平氏)からだ。クラウドプロバイダにより利用できる製品や価格に差があるものの、Linuxを試すなら大きくコストはかからない。課金が生じたとしても、中古パソコンを買うよりずっと安く済む。さらに、手っ取り早く実習に取りかかれるというメリットもある。
「使える」環境を手にしたら、参考書を片手にLinuxを操作してみるのもいいだろう。平氏の著書『できるPRO Red Hat Enterprise Linux 7』は実習にオススメだそうだ。
実践力をアップできる資格やトレーニングを利用しよう
Linuxを学習する上での大事なポイントについて、平氏は「コマンドやコマンドのオプションを暗記することよりも、それらを調べる方法を身につけること」だと強調する。コマンドやコマンドのオプションは製品やバージョンにより違う場合があるため、必死に暗記してもあまり意味がないからだという。それよりも「データをバックアップするための設定や、システム障害の原因探索など、業務でなすべきことを達成するためのプロセスを経験し、身につけるほうがよいです」(平氏)。つまり、実務で本当に役立つ力、実践力だ。
ただし、日頃そうした業務に就いていなければ、それらを経験するのは難しいだろう。そうした場合に利用できるのが、資格やトレーニングコースだ。レッドハットも技術者認定資格とトレーニングを提供している。
レッドハットの技術者認定資格は、実践力重視となっているのが特徴だ。最も初級の資格である「Red Hat認定システム管理者(RHCSA)」でも、試験は実技である。障害を起こしているRed Hat Enterprise Linuxシステムを直していくというシナリオの中で、CPUやメモリに負荷をかけているプロセスを特定したり、ディスクのパーティションを操作したりといった技術が問われる。また、こうした課題に取り組むときには、先述したようなコンピュータの基礎知識は不可欠になる。平氏は、上位の資格「Red Hat認定エンジニア(RHCE)」の試験に、異なるバージョンで3回合格しているそうだ。
技術者認定試験に対応したトレーニングも当然ながら実践重視だ。ここでコンピュータの基礎知識を深めつつ、実践力を培うことができるという。例えば、初心者やWindows管理経験者向けコース「Red Hatシステム管理I」は、主要なコマンドラインの概念や企業の情報システムで使われるツールについて学習し、Linuxシステム管理者の実務がこなせるレベルになることを目標としている。実践を重視しているのは、エンジニアの視点から見て「知っている」と「経験している」には大きな違いがあるからだ。平氏も「どちらも同じく『できる』かもしれませんが、手を動かして目的を達成することを経験していると、現場で作業するときの自信が違います」という。
最後に平氏は、これからLinuxスペシャリストを目指す人へこんなメッセージを寄せてくれた。
「技術書や参考書を読む前に、まずはLinuxに触れる時間を増やすことからスタートしましょう。パブリッククラウドサービスを利用するもよし、Raspberry PiでセカンドマシンをLinuxにするのもよし。とにかく、Linuxと常にふれあうことで理解度が高まってきます。包丁を普段触らない料理人のフルコースを食べたいですか? ゴルフの正しいグリップ方法やスイング方向を頭で理解していたとしても、腕が正しく動いてくれるかは別です。基礎知識の上に実践を重ねることで、実際の現場で力を発揮できるようになります。Linuxスキルがあればキャリアに有利に働くことでしょう。ぜひLinuxを学んでみてください」(平氏)
Linuxエンジニアの価値についてもっと知りたい方は
レッドハットが提供するトレーニングや認定資格のWebサイト「RED HATトレーニング」では、Linuxエンジニアの強み・価値や、レッドハットのLinuxトレーニング・認定資格について語られたセミナーレポート「Red Hat Certified Professional Day 2016」を公開中。Linuxを始めとするオープンソースソフトウェアの現状から事例、取得者の声までをご覧いただけます。