こんにちは、入社おめでとうございます。
入社したてでいろんな人に出会い、楽しい人もいればつまらない、しんどい人もいるでしょう。その感覚を忘れず、この春を楽しんでください。あなたの資産になります。
さて表題の通り、この度資格の取得の個人的な到達点に達しそうなので胸中も含めて書きます。強気なタイトル釣りをして申し訳ございません。いち個人として考えであり、いろんな立場に立って書くので要旨が伝わらないかもしれません。また今までこういった情報に触れず、暴走列車のように勉強してきました。なので他の方と内容が重複していたら申し訳ありません。
そして見ていただいたらわかるように今回はインフラ系の方に対してがメインです。
前提
今までとった資格(ほぼ時系列順)
1. Oracle Java SE Bronze
2. Cisco Certified Network Associate (CCNA)
3. LPIC (101-303)
4. AWS Certified Solutions Architect - Associate (AWS SAA)
5. Bronze DBA Oracle Database Fundamentals
6. CKA, CKAD
7. Microsoft Certified: Azure AI Fundamentals
8. AWS Certified Solutions Architect - Professional (AWS SAP)
9. NVIDIA-Certified Associate: Generative AI LLMs
10. HashiCorp Certified: Terraform Associate
11. (To Be Updated)
計算しましたが、勉強代も含めて50万円も払っていないというレベルでした。
キャンペーンで減った金額や還元されたお金も含まれてそれです。
どうでしょう。その私が言うのである程度の信憑性があるのではないでしょうか?
忙しい人向け
結論
資格は不要。(特に30代を超えるともうそういうものが通用しないのではと思う)
そうでなくても与えられたことをちゃんとやれば全然生きていけるし、わからないことはその都度勉強すれば良い。
資格のデメリット
1. お金がかかる
2. 評価されることに縛られる
3. いろいろ手を出すと遊び方を忘れる
4. つまらないことも含めて自分の満足を超えるレベルで勉強しないといけない
総括
資格は業務上不要です。
大体はジョインした先で新しい技術を使っている場合、勉強する時間をくれますし、場合によっては資材もくれます。安心して業務をやりましょう。ご覧いただき、ありがとうございました。
:
:
:
さて、ここまで読んでいただければ否定論者の方ではないと思います。大人の強い信仰は変えられません。ここから私の考えをピュアに書いていきます。
本編
導入
結論
要か不要かと聞かれれば私は不要と答えます。それは変わりません。
その理由は業務に不必要だからです。日本では特に「誰かがハンコを押せば安定した状態になり、あとは働いて飯を食う」というのが一般的なサラリーマンエンジニアです。このプロセスの中に資格はありません。必要なのははじめに認められること、アサインとサーバやツールの利用権限です。また資格試験の特徴でもある「正解する」ということも業務上不要です。わからなければ調べる。このAI時代にはそれで大概うまくいくと思います。
しかしいいこともたくさんあるのでそれを下で話します。
著者の昔の話
ちょっとだけ自分語りを。コーヒーブレイクです。
私にはコンピュータサイエンスの学位がありません。機械工学専攻で大学ではC言語かなにかの授業がつまらなくて挫折。それでも「コードが書ける人ってかっこいいな」とは頭の片隅で思っていました。
社会人になってからはコロナ禍でIT業界が特に注目を浴びた時代。
私は総合職として会社に入社しました。しかし「世の中にこれだけ多くの人がいて、みんなガンガン使っているのに、なんでインターネットはあれだけの情報量を素早く正確に届けられるのか」や「なんでコンピュータという鉄の塊が自律的に動いて高速に計算できるのか」ととにかく魅せられてしまったのです。
飛脚や交換手、そろばんの時代からは想像もつかないような神秘を感じていて、社会人になりたてで暇な”原理厨”の私にとっては魅了される事柄でした。
またそれとは別にコーディング研修の楽しさ(主にワイワイした楽しさ)や初期配属も相まって、導かれるように勉強にのめり込んでいきました。会社にはなんの作為もなかったと思いますが、偶然でも本当に感謝しています。
なぜ資格を勉強するようになったのか
私は初期配属でビジネスサイドとして海外のエンジニアとやり取りする仕事をしていました。その中で何か後回しにされている感覚を覚えたのです。私も仕事をしなければならないので依頼や質問をするのですが、どうも舐められている感じがする…
自分はビジネスサイドとして技術に責任を持っていたし仲間と思って欲しかったため、興味もあるし勉強してみよう!と一念発起しました。しかしビジネス職が勉強したといっても「だから何?」となるのがオチです。そこで 資格をとって目に見える形で持っておけばその問題はある程度解決するのでないか と思ったのです。
(また最初のチームにはAvengersみたいな個性があり、営業からバックオフィスまで頭のキレる同期がたくさんいました。彼らと同じく、自分のフィールドで存在感を得たいと思ったのも大きな動機です。)
当時担当していたコア技術はネットワークだったため、Googleで何をとれば良さそうかを調べ、CCNAに決めました。CCNAは全くの素人には難しく、AIがなかった時代、1週間くらいARPに悩んだりしたこともありました。結果取得に9ヶ月くらいかかりました。
しかし取得してからは業務のキャッチアップや仕様書が必要なレベルで理解できるようになっていたし、エンジニアとも会話もできるようになっていました。それからチームの信頼を得られて、次の仕事やなかなかできない経験につながるという循環・成功体験を作れたのです。
そして軌道に乗ってしまった
ネットワークを勉強すれば、それが動いている仕組みが気になり、何やらOSというものがあるんだなと繋がりました。そこからLinuxやもっと低レイヤ・アルゴリズムを勉強したり、クラウドネイティブを学習。Googleで検索するごとにリコメンドとしてさまざまな情報が流れ込んできて、知らないコンプレックスや知っている誇りとせめぎ合ってここまできました。
そのように興味ドリブンでコーディング研修や初期配属で自分のアイデンティティを確認したこと、出歩き飽きてやることがなくなった東京、そういったものが重なって勉強を続けるようになりました。地獄のような間を端折りますが、その結果異例だった同社内でのエンジニア転向の機会をいただき、今に至るという感じです。
冒頭への補足
上で散々貶してきた資格に対して補足します。
個人的に「面白い」が何よりもありますが、一般的なものは下記になります。
資格のメリット
1. 知識をみんなが認める形で表明できる
聞かれたことに答えて証明することと聞かれなくても証明できるというのは、意思決定者に対して大きな価値を提供します。ある仕事を誰かにアサインしたい時、わざわざヒアリングしたいと思うでしょうか。すでに表明されているものがあれば、まずそれを参照して比較するはずです。圧倒的な職歴や経験・または強い興味があり、どこかのタイミングで話していれば別ですが、若手のうちはそういった資格で履ける下駄もある と思います。
2. 必要な知識がすぐ出るし、パッと言われて見える世界が広がる
働くとわかりますが、調べてからでは遅いことや出戻りを喰らう局面が度々あります。
会議の場で何を話しているのかがわからない人と、基礎的なことについてはなんとなくわかっている人とでは質問の切れ味も業務のスムーズさもかなり違います。頭にIndexが張られているのです。キャッチアップすべきことが基礎的なことからSpecificな知識の人と後者だけの人とではストレスもスピードも 大体5倍くらい違う 体感です。オンボーディングもそれだけ速くなります。時間が経つと細かいことは忘れてしまいますが、自分が好きで勉強していればコンテキストそのものは簡単に忘れません。
3. 手軽に達成感が得られる
大人になると部活もほとんどなくなれば、誰かと戦う機会も少なくなります。社会は協力の場だからです。しかし資格試験は絶対評価なので、達成さえすればお墨付きをいただけます。問題を解いて点数を取り、”You passed the exam!”という画面表示を見たり、”Congratulations!”というメールを見つけた時の喜びに満ちた開放感や成長感はたまりません。
もし勉強するならここだけは心がけよう
社会は「実務ファースト」
巷には資格を持っているだけで大きい顔をする人もいますが、そのスタンスだと「どうせ実務は経験ないんでしょ?」と思われてしまいます。だから持っている側も吹聴せず、「聞かれたら多くは語らず謙虚に答える」というのが鉄則です。資格は究極自己満足ですし、対策をすれば誰でも取れます 。
やはり 社会人として最も重要なのは【結果】や【実際にもたらしたもの】だと思います 。何を作ったか、何を効率化したか、どれくらいインパクトを残したかです。国家資格でもそうですが、世の中では知識を応用して何かをもたらす人が偉いとされるべきです。
周りに敬意を払う
エンジニアにはいろいろ種類がいて、エンジニア不足が叫ばれる昨今でも体感としてはかなり人数がいます(大企業は特に)。
定常作業のみをやる人からガンガンツールを作ったり、趣味でオープンソースへコミットしたり「絶対この人には勝てない」と思わせられるフリーク。皆さんもいずれ見えてきます。彼・彼女らがスペクトラム上に幅広く並んでおり、それら有象無象を社会は「エンジニア」とひとまとめに呼んでいるわけです。
だからと言って良し悪しはなく、みんな間違いなく必要な存在です 。
その中で結果の他に資格があれば個性になりえます。 ですが言ってしまえば、たかが資格です 。そして資格をとっていてもその道のプロには知識量として敵わないことが多々あります。いつも自分がやらないことをしてくださっている周りに感謝し、教えてくれる先輩方やマネージャに対して謙虚になりましょう。
資格はCSの代用にならない
これは私のようにバックボーンがない人に対してですが、 資格は基礎的な知識や経験値を補えるものではありません 。特にニッチになればなるほど資格は「ツールの使い方や思想を習熟したか」を証明するものだと思います。資格を取ればCS経験のなさを挽回できると思っていましたが、それは誤解でした。エンジニアになりたければ別途地道な勉強が必要になります。
私にとって"資格"とはなんだったのか
学びたいことを綿密にしてくれるもの
上でつまらないことも勉強しなければならないと言いました。ただ自分の知りたいことを勉強するだけではなく、ベンダーがここまで知ってるといいよということを学ぶことで、自分では踏み込めなかったところまで踏み込めます。それは単にコンフィグや挙動などの些細なものではなく、原理や設計思想など個人的に一番面白いと思うところもです。
知識の偏りを慣らすもの
業務ではほんの一部しか触らないこともしばしばあります。AWSを例にとると、S3しか使ってない、バッチはGCPやオンプレを使うなど、さまざまな構成があり、一般的な内容は業務からでは身につきません。そういったものに興味があれば資格を勉強してみてもいいと思います。これを「体系的な学習」と呼んだりします。
インフラの全体像を理解させてくれたもの
インフラのエコシステムというのは限られています。大まかそのものと自動化などの周辺です。したがって押さえやすく、体系的に学ぶことで地図として頭に入れることができました。これらの資格を通じて解像度はさておき、少なくとも全体像は見えるようになってきました。
謙虚にしてくれるもの
最近になってわからないことをわからないと言えるようになってきました。ベースに「舐められるわけがない」という自信があるからだと思います。最初は知らないことを知らないというのが恥ずかしくて、一度理解したふりをして後で辻褄を合わせるように勉強していました。しかし今では自信があるが故にその場で質問ができるようになりました。それに自身が謙虚であればコレクタと馬鹿されることもありませんし、中途半端でなければ誰も悪く言えないのです。
まとめ
冒頭述べた通り、不要です。しかしそれはどちらかを選べと言われたとき、 ”食い繋いで行くためだけなら”という文脈で不要 ということです。
大きい会社であればのらりくらりやっていけますし、小さい会社ではそんな勉強する暇もなく仕事に必要なところだけをさっとやることが求められていると思います。
しかしより正確には 「必須ではないが、使い方次第で強い武器になる」 だと思います。
もし あなたが職場内外でなんらかのチャンスを掴みたい時、資格は有効に働くこと「も」あります。有象無象の中でなんらかの判断材料が必要な時、ネットにかかったボールがどちらに落ちるのかは資格という”僅差”によって決まることが結構あるのです。
逆に言えば資格はそれだけのものなので、やらないというのも一つでしょう。そしてアプリの方はポートフォリオを作った方がいいように、より効果的にその僅差を作れるものがあればそれをやりましょう。
たしかにお金はかかりますが、ちゃんと業務や転職で活かすことができればすぐ回収できる はずです。また労力もかかりますが、楽しいし、安すぎる投資です。何かを通じて自己実現をしたり、ちょっとした楽しみを見つけたいということであれば資格という機会を使って遊んでみてもいいと思っています。
私自身、勉強は本当に楽しいなと社会人になってからわかりました。そして資格勉強は人生を豊かにする習慣を作り、勉強が生活の土壌になりました。なので資格は極論趣味くらいに思っておくのがいいのかもしれません。自己犠牲だと「報われる」と思い込んでしまう可能性があるので。
なんだかどっちつかずの意見になってしまいましたね。イメージがつかず難しかったかもしれませんが、この微妙なニュアンスを少しでも掴んでいただけると嬉しいです。また私は資格を取ってきた側なのでバイアスがかかっていたかもしれません。それぞれ興味のある資格に対して、必要性は皆さんで考えてみてください。
これから
私はもうキャリアアップのために資格を取らなくてもいいと思っています。
そしてビジネスサイドの時に抱えていたコンプレックスもなくなり、資格やコミュニケーションを元手に経験も積めたと思います。これは本当に気持ちの良いことだし、やってきて間違ってなかったと思います。
これからは技術にどっぷりではなく、それを使って誰かの生活や仕事を快適にする職種へ行ったり、勉強したり何かを作って遊んだりする側にシフトしていきます。
この記事が誰か一人でも、また些細な役にでも立てば幸いです。
コラム
やや抽象的ですが下に付録として僕がおすすめのTipsを書いておきます。
1. 本質を押さえる(ビジネスも含めてみんな勉強しても良い)
⚪︎ 端的に言えば何をするための技術か
⚪︎ なぜそれを使うのか
→ 「これVMでもいいんじゃない?」など
⚪︎ 他の技術との本質的な違いは何か
→ 「AnsibleとChefって一体何がちがうの?」「MACアドレスってIPがあるのになぜ必要?」など
⚪︎ なぜそのようなアーキテクチャ・仕組みになっているのか
→ 「その仕組みを使わなければ何が起こるのか」など
2. 挙動を知る(実務)
⚪︎ 処理の順序・コールフロー
→ どのような順番で処理されていくのか
⚪︎ デフォルト
→ 何も指定しなければどういう挙動になるか
⚪︎ オプション
→ 他にどのようなことができるのか
3. 心持ち
⚪︎ 業務に活かそうとするならどうすればいいか
→ 「システムややり方をこう変えればもっと効果的だな」や「なぜこうできないんだろう」など
⚪︎ めんどくさくて認知負荷の高いことを後回しにしない
→ グーっとストレスがかかりますが「これは歯ごたえがあるな!」と面白がってみましょう。思考を広げるチャンスです。
⚪︎ AIとの壁打ち
→ 自分の理解やネットにはないことを理解できるまで聞く