結局、IT資格取得は意味があるのか？

IT業界にはたくさんの資格が存在します。新人・未経験のエンジニアが、初めてITの勉強をするときに目標とすることも多いでしょう。会社として資格の取得を推奨していることもあります。時には昇進の要件になっていることも。

その一方で、こんな声もよく聞こえてきます。
* 「資格なんて意味ない。だって取らなくても実務はできるからね」
* 「資格だけ取っていて実務は出来ない、頭でっかちなエンジニアがたくさんいるんだよね」

資格取得を目標に頑張っているエンジニア達からしたら、「そんなこと言われたらモチベーションが下がっちゃう！」「本当に資格の勉強をする意味はあるのかな？」と思ってしまいますよね。

確かに、資格の勉強量に比例して技術力・実務力が上がる、ということはありません。でも安心してください。私自身、異業種から未経験でITエンジニアとして転職し、約5年間でIPA資格からベンダー資格まで、合計20個程度の資格を取ってきました。この5年を振り返って、**IT資格の勉強が技術力・実務力の向上にしっかりと繋がっていたと自信を持って言えます。**

とはいえ、**必ずしも・どんな状況でも、資格の勉強が「技術力・実務力の向上」にとってベストであるとは思いません。** 目的や状況に応じて、資格取得という手段を取るかどうかを判断する必要があります。

そこで今回は、**「IT資格の勉強は、どのようなときに技術力・実務力の向上に繋がるのか？」** というテーマで語っていきたいと思います。

:::note warn ご注意 
前提として...
* 今回はあくまで「技術力・実務力の向上」を目的とした資格取得の意義にフォーカスして話します。つまり、「名誉・勲章として」あるいは「評価として」の意義には触れません
* 筆者はインフラエンジニアのため、アプリケーションエンジニアにはマッチしない内容かもしれませんのでご了承ください
:::

## 想定読者
こんな方に読んでもらえたら、気づきや面白さを提供できるかもしれません。
* IT業界に入ったばかりで、資格取得を目指すか迷っている方
* 資格試験の勉強中だが、意味があるのか不安になってきた方
* 資格の勉強が技術力・実務力に繋がるかについての持論があり、他の人の考えが気になる方

# 結論
私が思う、「資格の勉強が技術力・実務力の向上に繋がる人」は、以下に該当する人です。
#### ① IT業界歴が短く、IT全般の知識が足りない人
#### ② 初めて勉強する分野をサクッとキャッチアップしたい人
#### ③ 実機を使った勉強は苦手だけど、座学ならできる人

ひとつひとつ解説していきます。

# 詳細
## ① IT業界歴が短く、IT全般の知識が足りない人
資格試験で問われるのは、概念・仕組み・ユースケースといった部分が多く、設計・構築・エラー調査のような、業務で取り組む作業に直結するものを取り扱う割合は少ないです。（もちろん資格試験によって割合は違ってきます。IPA試験、AWS試験は前者の割合が多いものの、Linuc、CCNAといったベンダー試験では後者の割合が多いことも）

そのため、資格はあるけど業務は未経験という方が設計・構築というタスクに取り組むとき、一人では全く太刀打ちできないこともあります。「資格は技術力・実務力に関係ない」派の方の多くは、このことを理由に挙げるのではないかと思います。

### では、資格の勉強は全く意味がないのか？
そうでもありません。なぜか？それは、**資格の勉強によって概念・仕組み・用語を知った状態から実務に入っていくのと、そうでないのとで、同じ仕事をする中での吸収力が全然違ってくるからです**

例えば、IT未経験で入社した新人がAWS案件に配属されたとき、打合せの中で以下のような話が出たとします。
* 「まずはEC2とEBSの詳細設計をやります。フロントにALBを立てるので、EC2はプライベートサブネットに置きますよね。」
* 「名前解決はオンプレミス側のDNSサーバを使うから、EC2の設定を変更しておく必要があるね」

これを、何も前提知識のない新人エンジニアが聞いたらどうなるでしょうか？
* 用語がわからな過ぎて、途中から頭に入ってこなくなった...
* 質問したいことが多すぎて、さすがに全部は聞けない...
* 何やっているかわからないから眠くなってきた( ˘ω˘ )ｸｿﾈﾐ...

って、なりそうですね。

しかし、AWS SAAと基本情報技術者を取得済みの新人エンジニアだったら、出てくる用語の概念が分かるので、「ある程度どういうことを言っているか・やっているかはわかる」という状態になるわけです。こうなると、会話やチャット、メールといった、他の人のコミュニケーションから得られる情報量が大きく増えます。

同じ会話を聞いても、前者の前提知識なしの新人であれば、会話中にわからない用語をメモするので精一杯かもしれません。誰が何をどんなふうに進めているかも把握できずに終わることも珍しくないでしょう。

一方で、後者の資格取得済みの新人であれば、会話を聞く中で要件やシステム構成、他の人がどういうふうに仕事を進めているか、などの多くの情報を吸収できる時間となるでしょう。前提知識なしの新人が用語調べや質問を行っている時間で、具体的な業務の進め方を確認したり、実際に業務に取り掛かったりすることができるのです。中長期的に見ると、成長スピードに大きな差がつきます。

確かに、資格の勉強だけでは実務をできるようにはなりません。でも、資格の勉強を通して概念や用語を体系的に学んでおくと、業務時間内で吸収できる情報量が増えます。ひとつの新しい業務をできるようになるまでの時間が短くなります。

ゆえに、IT業界歴が短く、IT全般の知識が少ない人ほど、資格の勉強というのは技術力・実務力向上に大きく寄与するでしょう。

私はIT企業へ未経験転職した後、最初にオンプレミスネットワーク基盤の保守チームに入りました。この時すでに、応用情報技術者とCCNAを取っていました。おかげでIT用語が飛び交う打合せから、たくさんの情報を吸収できたという実体験があります。

周りを見ていても同様のケースは多いです。短期間で大量の資格を取得したエンジニアは、たとえ学生時代にITを専攻していなくとも、会話についていけるようなるのも、実務ができるようになるのも速いと感じます。

## ② 初めて勉強する分野をサクッとキャッチアップしたい人
では、IT業界歴がそれなりにある人、あるいは広く浅くIT知識を持っている人は、全く資格の勉強は意味がないのか？そうでもありません。その人にとって初めて学ぶ分野であれば、資格の勉強は意味があると思います。

なぜなら、**比較的必要になる可能性が高いものを効率よく学べるからです。**

例えば、ネットワーク・サーバの構築案件をトータル5年ぐらいやりました、という中堅エンジニアがいたとします。次の案件がOracle Databaseの構築案件に決まりました。データベースは案件経験もなければ座学知識もありません。

こういう場合、何から学べばいいかわかりませんよね？こんな時は、とりあえず資格試験から入ってみるのはありだと思います。

というのも、**資格試験というのは「この分野の仕事をするならこの辺りは知っておくべきだよね」というものを、専門家がギュッと詰め込んだものだからです。**

当然、素人が「なにを学ぶか」「何が必要か」をゼロから考えるより、資格試験作問者というプロが考えたロードマップに従うほうが、圧倒的に速くて正確に学習できるでしょう。

こういったケースでは、まず資格試験を通して体系的に学んだ後、案件に特化して必要な知識を補強していく、という流れにすれば効率的です。

## ③ 実機を使った勉強は苦手だけど、座学ならできる人
公式ドキュメントやマニュアル、技術ブログ等で概念や仕組みを学びながら、実機で手を動かすというのは、技術力・実務力をつけるうえで非常に効率の良い手段です。

でも、**正直、歴の浅いITエンジニアにとって「実機で手を動かす」ってハードル高くないですか？** 特にインフラエンジニアはそうだと思います。
* まず環境の準備自体、ハードルが高い（オンプレミスなら機器の購入、クラウドならアカウントの準備）
* それを乗り越えても、「実機操作と言っても、さて何をやろうか？」と途方に暮れる

なんて、あるあるなんじゃないでしょうか。

プログラミングであれば「こういうのを作りたい」というのは比較的思いつきやすいと思います。一方で、インフラはどちらかというと手段であり、単体で作って面白いことをできるものは少ないです。ゆえに、実機で何かを作るモチベーションが沸きにくいという側面があるな、というのが個人的に思うところです。

※あくまで筆者の観測範囲ですが、アプリ系エンジニアに比べて、インフラ系エンジニアのほうが、業務時間外に実機学習をしている人の割合が明らかに低いと感じます。これは上記のことが起因しているのではないかと思っています。

* 勉強をしたいモチベーションはある！でも実機学習は何していいかあまりわからない！
* 教科書や参考書に沿って学習するのは得意だけど、何もないところから作るものや学ぶものを考えるのは苦手！

こういう方こそ、資格試験を通して知識を身に着けていくのはありだと思います。

何より、資格試験を通して「これってどういう仕組みだろう？」「実機だとどうなるのかな？」という興味を抱けば、それが実機学習のきっかけになることもあります。こうして興味を持ってから実機を触るのは非常に学習効率が高いです。

# では、資格の勉強が技術力・実務力の向上に「繋がらない」人とは？
有効な人と逆です。
* ① IT業界歴が長く、IT全般の知識がある程度ある人
* ② その分野ですでに実務経験がある人
* ③ 座学は受け付けないけど、実機を使って学ぶのは得意な人

## ① IT業界歴が長く、IT全般の知識がある程度ある人
IT業界歴が長ければ、自分があまり経験のない技術の案件にアサインされても、基本的な用語は理解できているので、会話の中でわからない単語というのも限られてくるでしょう。別の技術分野と共通部分を見つけて「あ、要はアレと同じね」と高速で理解できることもあります。

こんな方は、わからない単語に絞って調べたり聞いたりするだけで、十分キャッチアップが可能だと思います。

## ② その分野ですでに実務経験がある人
また、すでにその技術領域で数年の実務経験があり、一通り触れた方であれば、資格試験で網羅的に学習するのは効率が悪くなります。資格試験は時に、「こんなんいつ実務で使うねん！」「こんなオプション、都度調べるんだから暗記不要やろ！」というものを覚えることを強要されます。

すでにその分野の大枠をつかんでいる人は、公式ドキュメントを通じてピンポイントで学ぶのが効率的でしょう。

## ③ 座学は受け付けないけど、実機を使って学ぶのは得意な人
また、座学というのは本当に好き嫌いが分かれます。座学よりも実機操作が得意な方は、わざわざ資格試験という手段を選択する必要はありません。「習うより慣れろ！」で手を動かして、必要な時に公式ドキュメントを見ればOKです。


# 主張
長くなってしまいましたが、言いたいことを集約すると、以下の2点です。
#### 1. 資格の勉強は時に有効だが、「今この状況でベストな手段か？」を都度考えることは重要
　本来、資格取得は「技術力・実務力の向上」という目的に対しての手段になるはずです。資格取得そのものに囚われて、効率の悪い学習になっていないか？目的を見失っていないか？というのは、常に見極めが必要だと思います。

#### 2. どうか資格取得そのものを声を大にして否定しないでほしい
　結局、スキルアップのやり方は、人によって向き不向きもあります。技術力・実務力の向上のために、資格の勉強が良い手段となる人も少なからずいます。モチベーションを奪うだけの否定は控えていただけると、みんなハッピーなんじゃないかと思います。
とはいえ、はたから見て、明らかにその人にとってベストな手段が資格の勉強ではなさそうであれば、善意で他の手段を提案するのはありだと思います。

# 最後に
私が考える「結局、IT資格取得は技術力・実務力の向上に繋がるのか？」へのアンサーは以上になります。資格の勉強について考える皆様にとって、少しでも参考になったり、今後の方針選択に役立ったりすればとてもうれしいです。

私自身、まだまだエンジニアとして半人前ではありますが、資格の勉強を通して身に着けた知識やスキルのおかげで実務での成長スピードを上げることが出来た、というのは確信を持って言えます。

資格の勉強を通して技術力・実務力を上げようと思っている方は、これからもぜひ一緒に頑張りましょう！