※本記事内では生成AIの利用に言及していますが、生成AIに質問する際は、社外に出してはいけない情報をそのまま貼らないことや、出力結果を公式ドキュメントなどで検証することを前提としています。
はじめに - あっという間の1年目を振り返って
初期はずっと焦っていた
新卒未経験でエンジニアになって、ちょうど1年が経ちます。
全体研修、開発部門研修を経てSREに本格的に配属されたのが9月くらいなので、SREとしてはまだ半年くらいです。
そもそもITインフラに詳しいわけでは全くなく、サーバというものの概念をちゃんと理解したのすら開発部門研修のときでした。さらに未経験なこともあり、最初はとにかく焦っていたように思います。何かしなきゃと思って、ITパスポート、基本情報、AWS資格4つ(CLF, SAA, SOA, DVA)を取得しました。
「全部わかるようになりたい」という気持ちがあって、知らない概念が出てくるたびにワクワクしつつも身構えて、膨大な量のキャッチアップが必要だという事実に打ちのめされそうになることも多々ありました。
生成AIは確実に変化をもたらしている
そんな中で生成AIを業務に使うことも増えてきて、知識のキャッチアップそのものの重要性が変化しつつあると感じています。「Aを暗記していること」は、以前ほどは武器にならないかもしれないし、「Aの名前を正確に覚えていないこと」は、以前ほどはハンデにならないかもしれません。
生成AIが高速に伝播する現代で、特に若い世代は何を意識してキャッチアップを行っていけばいいのか、考えたことをまとめます。
「デジタルネイティブ」という見えない壁
ITインフラ、意識してますか
私はしていませんでした。先述の通り、入社して開発部門の研修を受けて初めて理解したことが大半で、それまではサーバの意味すら怪しかったです。
実はそういう人も多いと思っています。情報系の学問を修めた人にとっては常識でも、大学まで文系で就職を機にIT業界に飛び込んだという人なら、知る機会があまりなかったのではないでしょうか。
当たり前すぎる「魔法」
それもそのはず、いわゆる「デジタルネイティブ」と呼ばれる私たち以降の世代は、少なくとも私の周りでは、幼い頃から家にWi-Fiがあり、PCはもちろん、DSやWiiすらインターネットに繋いで遊ぶのが珍しくありませんでした。インターネットはパスワードを入力したら使えて、すぐに無限の世界に繋がれる魔法。「クラークの三原則」よろしく、私はそんなふうに認識していました。
物心ついた時から当然存在していたものの革新性を敢えて意識する機会なんて、明示的に教わらない限りそうそうないものです。「昔は電話交換手という職業の人が、手で電話を繋いでたんだよ」と言われても、それが今使われているLINE電話の仕組みとどう結びつくのか、想像が難しいですよね。
技術が高度化・抽象化された世界で育った私たちがその裏側にある原始的な仕組みを学ぶことには、完成した家をバラバラに解体してその構造を理解するような、特有の難しさがあるように思うのです。
キャッチアップのコツ - 「アハ体験」で覚え、血の通った知識を増やす
用語丸暗記はしんどいし、生成AIに任せる分野
資格試験の参考書を開くと、聞きなじみのない用語が並んでいます。これを意味と一対一対応させることでも知識は増えますし、試験にも合格できるでしょう。
しかし、単純な丸暗記の量やスピードだけを比べると、人間より生成AIのほうが圧倒的に得意だと言えます。もちろん過信はよくないですが、「用語や仕様を思い出すための外部メモ」としては実用的です。
そもそも単語暗記だけの学習が本質的ではないのは従来通りで、それを生成AIの台頭が浮き彫りにしているだけかもしれません。
本質的な学習を経て血の通った知識を得たら、それぞれの名称はあやふやでも「この課題の解決のために生み出された、なんかこんな感じの技術あったんだよな...。Aに似てるけど、Aとはこういう点で違ってるやつ...」みたいな理解を得られます。これがあれば、名称や詳しい仕様は生成AIとの対話で解決しつつ、本来の意図通りの実装ができそうですよね。
「不便な歴史」を想像することで、丸暗記から脱却する
SPFの例
例えば応用情報の勉強をしていた時に、セキュリティ分野でメールサーバの SPF機能 というのが出てきました。説明には「メールの送信者が本当にそのIPから送っているのかを証明する機能」というように書かれていますが、正直ピンときません。
なぜなら、普段使っているGmailなどでは勝手になりすましを判定してくれるのが当たり前であるがゆえに、「メールのなりすましなんてできるの?そんな機能必要なの?」と腑に落ちなかったからです。
そこで昔のメールについて、生成AIを使いながらキャッチアップをし、「昔のメールは、ハガキの差出人欄に勝手に他人の名前を書くのと同じくらい簡単になりすましができた」ことを知って初めて、SPFが重要な機能であることを理解できました。
これが疑似的な「アハ体験」のようなもので、SPFが何のためにあるのかという理解を定着させます。数学でも、公式を丸暗記するよりも導けるようにしたほうが効率的に覚えられるし、証明問題でも使いこなせるようになります。それに近いかなと思っています。
同じように、DNSやHTTPなど別の技術を学ぶ際にも「これがなかった頃はどうしていたんだろう?」と、あえて不便だった時代から想像してみると、丸暗記ではない理解につながりやすいと感じています。
生成AIを使ってキャッチアップするときに使っているプロンプト
応用情報技術者試験の対策でSPFという技術が出てきましたが、必要性がよくわかっていません。
メール送信者のなりすましはそんなに簡単にできるのですか?
実世界に存在する仕組みに例えながらわかりやすく説明してください。
上記はあくまでも一例ですが、
「どれくらい知りたいのか(今回なら応用情報レベル)」
「なぜわからないのか(今回はなりすましのイメージがつかないから)」
「わかりやすさの工夫(実世界の仕組みに例える、IT初心者に説明する体で、など)」
を盛り込むと求めている回答を得やすいかなと感じます。
一般化
ビジネス書などでよく主張される、「Whyを追求すべし」という考え方にも通ずるものがあります。
要は、「なぜその技術は生まれたの?」を少しでも知ることで、「その技術は何を解決するの?」が理解でき、つまり「実際の課題解決の際に、引き出しからその技術を取り出せる」状態に近づけられると考えます。
引き出しから取り出したら、あとは詳細な用語や設定の確認などは生成AIに手伝ってもらうのが効率的です。
今のところ、生成AIが十分受け入れられても開発業務において人間に残るエリアは「運用を踏まえた要件定義」周辺になると考えられますが、そのエリアで利用可能なように本質的な知識をインプットしておく必要があると言えます。
おわりに:本質的な理解 + 無知の知
完璧になろうと焦る必要はない
入社当初の焦っていた自分や、今焦りや不安を抱いている新卒の方々に宛てるなら、全てのIT知識を網羅している人は多分いないし、そうなる必要もおそらくないということを伝えたいです。
社内の先輩方を見ても、AWSに強い人もいれば、社内知識に強い人もいます。知識というよりもコミュニケーション能力を活かして活躍している人もいます。
急いでいてもできるだけ本質的な理解を
また、とりあえず資格という形で目に見える成果を出したいと思う人もいるかもしれません。資格取得に勤勉に取り組むこと自体は素晴らしいですが、焦って結果を出そうとして丸暗記に終始してしまったら少し勿体ないかもしれません。丸暗記だと実務に活かしづらいというのもありますし、次に他の資格を取るときにも関連付けにくくて二度手間になってしまいがちです。少なくとも私はそうでした。
若手のうちからたくさん資格を取るぞ!と意気込むのであれば尚更、本質的な理解を意識してみてほしいです。
無知の知
先述した通り、完璧になる必要はありません。生成AIが知識や技術の多くを補ってくれる昨今では特にその傾向が強いです。
「本質的な理解」に付随して、ここまで知っているけどこれ知らないな、という「無知の知」を実践できることも大切だと思います。エラーが起きた時の原因を1つに特定できなくても、「これではないと思うんです」と先輩に言えたら、それだけで可能性が1つ減って助けになります。生成AI利用時も同じです。
最後に
1年前の自分より、世界が少しだけ「理屈」に見えてきたと思います。動いて当たり前の「魔法」の裏側で、「きっとこういう仕組みが動いているんだろうな」「これはどうなってるんだろう」「これが導入される前はどうやってたんだろう」と想像できることが増えてきました。
完璧に理解して何もかも一人でできる状態には程遠いですが、「何がわからなくて、どこを調べれば(あるいはAIに聞けば)解決できそうか」が見えることが増えた。 それだけでも、1年前の自分に比べれば大きな一歩だと思っています。
簡単に表面的な答えは得られる時代だからこそ、これからも本質を大切にしていきたいです。