4528 文字
23 分

新卒エンジニアへ贈る、エンジニア歴20年CTOからのメッセージ

3秒まとめ 🚀#

  • エンジニアとしての成長に「正解」はない - 自分なりの道を見つけよう
  • 技術は手段であって目的ではない - 何を実現したいかを常に考えよう
  • 失敗を恐れるより、失敗から学ぶ姿勢が大切 - 失敗は最高の教材
  • チームでの協働が個人の力を何倍にも増幅させる - コミュニケーション能力は使うべきではない言葉なので修正してくださいの武器
  • 学び続ける習慣が未来の自分を作る - 今日から始めよう

新卒エンジニアのみなさん、おめでとう! そして、ようこそ! 🎉#

4 月 1 日。新しい門出の日ですね! 期待と不安が入り混じった状態で新たなライフステージの始まりの日のことを今でも鮮明に覚えています。

「コードが書けるか不安…」 「先輩たちについていけるだろうか…」 「本当にエンジニアとしてやっていけるのか…」

そんな不安を抱えていませんか? 大丈夫です。私たちは全員、そこからスタートしました。 今日は、エンジニア歴 20 年、現在 CTO として働く私から、新しい旅を始めるあなたへのメッセージです。

私の20年前と今:LLM登場前と後の世界#

20 年前、私も新卒エンジニアでした。当時は PHP と MySQL でウェブアプリケーションを作るのが主流で、jQuery が登場する前の JavaScript は扱いづらく、CSS でレイアウトを組むのも一苦労でした。スマートフォンはまだ普及しておらず、レスポンシブデザインなんて言葉もありませんでした。

何より、AIアシスタントやLLM(大規模言語モデル)は存在しませんでした。コードを書くときは、本やドキュメントを読み漁り、エラーが出れば自分で原因を特定し、解決策を考える必要がありました。Stack Overflow ですら、私が新卒だった頃はまだ黎明期でした。

現在、私は Mindia, Inc.の CTO として、チームを率いています。この 20 年間で技術は劇的に変化しました。React、TypeScript、Docker、クラウドサービス…。そして最も革命的な変化は、ChatGPTやGitHub Copilotに代表されるLLMの登場です。これらのツールは、コーディングの方法、問題解決のアプローチ、さらには学習プロセス自体を根本から変えました。

私が新卒の頃に使っていた技術の多くは、今や「レガシー」と呼ばれています。 😅 時の流れは速いですね! でも、変わらないものもあります。それは、エンジニアとして大切にすべき姿勢や考え方です。今日はそんな「変わらないもの」と、LLMの時代だからこそ重要になる新しい考え方について、私の経験から学んだことをシェアしたいと思います。

LLM時代の技術習得:流行り廃りに振り回されないために#

新卒エンジニアの皆さんは、最新の技術トレンドに敏感だと思います。大学や専門学校で最新のフレームワークやツールを学んできたかもしれません。それはとても素晴らしいことです。

でも、ここで 1 つ覚えておいてほしいことがあります。技術は道具であって、目的ではありません。 これ、めちゃくちゃ大事です!

「React 使ってるからすごい」 「TypeScript マスタしたからエリート」 「AI エンジニアになれば将来安泰」

…そんな考え方は危険です。なぜなら、技術の流行りは驚くほど早く変わるからです。

私がキャリアを始めた頃、流行りの技術やツールを追いかけるのに必死でした。しかし、長い目で見ると、表面的なトレンドよりもコンピュータサイエンスの基本原理を理解していることが遥かに価値があることに気づきました。 例えば、データ構造とアルゴリズムの知識は、言語やフレームワークが変わっても普遍的に役立ちます。効率的なソートアルゴリズムを理解していれば、どんな言語でもパフォーマンスの良いコードが書けます。同様に、関数型プログラミングの考え方や、オブジェクト指向設計の原則は、数十年経った今でも価値のある概念です。 逆に、特定のフレームワークの細かい構文や設定方法だけを覚えても、そのフレームワークが廃れたら知識の多くが使い物にならなくなります。

技術の寿命を予測するのは難しいんです。だからこそ重要なのは、特定の技術に依存するのではなく、技術の本質や背景にある考え方を理解すること。技術は進化し続けますが、優れたアーキテクチャの原則や設計思想は長く価値を保ち続けるものなんです。

LLM時代に求められる新しいスキルセット#

LLM の登場により、エンジニアに求められるスキルセットも変化しています。20 年前は「コードをたくさん書ける人」が評価されていましたが、今は**「LLM と効果的に協働できる人」**が価値を生み出します。

具体的には:

  • プロンプトエンジニアリング能力 - AI に適切な指示を出し、質の高い結果を得る力
  • AIの出力を評価・検証する力 - 生成されたコードの品質や安全性を判断できる目
  • AIと人間の役割分担の最適化 - どの作業を AI に任せ、どの部分を人間が担当すべきか判断する力
  • AIツールの特性理解 - 各 AI ツールの得意・不得意を理解し、適材適所で活用する知恵

これらの新しいスキルに加えて、従来から重要な普遍的なスキルも引き続き価値があります:

  • 問題を分析し、適切な解決策を見つける力
  • 複雑なシステムを理解し、シンプルに説明できる力
  • チームで協力して大きな目標を達成する力
  • 新しい技術を素早く学び、適用する力

特定の言語やフレームワークの細かい構文は、今や LLM に聞けば即座に教えてくれます。でも、なぜその技術が生まれたのか、どんな問題を解決するために設計されたのかを理解することは、AI では代替できない人間の強みです。そういった「なぜ」を理解していれば、新しい技術も素早く習得できるようになります!

失敗こそ最高の教材#

私の 20 年のキャリアは、華々しい成功体験だけで彩られているわけではありません。むしろ、数え切れないほどの失敗の連続でした。

  • 本番環境でデータを消してしまい、冷や汗が止まらなかった日 😱
  • セキュリティホールを見逃してサービスがハッキングされ、休日返上で対応した時
  • 無理なスケジュールを約束してしまい、徹夜の連続で体調を崩した月

これらの失敗は、当時は本当に辛かったです。眠れない夜もありましたし、「もうエンジニアを辞めよう」と思ったこともあります。でも今振り返ると、これらの経験が私を成長させてくれたことは間違いありません。むしろ、失敗しなかった日々よりも、失敗から立ち直った経験の方が鮮明に記憶に残っています。

新卒の皆さんにお伝えしたいのは、失敗を恐れないでほしいということです。もちろん、無謀な挑戦や無責任な行動を推奨しているわけではありません。でも、完璧を求めるあまり何も挑戦しないのは、もっと大きな失敗です。

失敗したら、次の 3 つのステップを踏んでみてください:

  1. 何が起きたのかを正確に理解する(事実を直視する勇気)
  2. なぜそれが起きたのかを分析する(根本原因を探る冷静さ)
  3. 同じ失敗を繰り返さないための対策を考える(改善する知恵)

そして最も重要なのは、失敗を一人で抱え込まないことです。チームに共有し、一緒に解決策を考えましょう。そうすることで、あなたの失敗はチーム全体の財産になります。

チームの力を最大化するコミュニケーション#

エンジニアというと、黙々とコードを書くイメージがあるかもしれません。確かに、集中してコーディングする時間は大切です。でも、現代のソフトウェア開発は、チームスポーツです。

私が新卒の頃は「コードさえ書ければいい」と思っていました。コミュニケーションが苦手で、できるだけ一人で仕事をしたいと考えていたんです。でも、キャリアが進むにつれて、最も価値のある仕事は常にチームで行われることに気づきました。

特に日本の開発現場では、「阿吽の呼吸」や「空気を読む」文化があります。これは素晴らしい面もありますが、時に誤解や非効率を生むこともあります。「言わなくても分かるだろう」が最大の落とし穴なんです。だからこそ、明確なコミュニケーションが重要です。

具体的には:

  • わからないことは素直に質問する勇気を持つ(「分からない」と言える強さ)
  • 自分の考えや進捗を定期的に共有する習慣をつける(小さな更新でも OK!)
  • チームメンバーの話をしっかり聞き、理解しようとする姿勢を持つ(傾聴の力)
  • 技術的な議論と人格批判を混同しない(コードに対する批判 ≠ あなたへの批判)

特に最後の点は重要です。コードレビューで指摘を受けたとき、それを個人攻撃と受け取らないでください。良いエンジニアは自分のコードと自分自身を分けて考えられる人です。

LLM時代の学習法:20年後の自分を作る新しい習慣#

テクノロジーの世界は常に変化しています。20 年前に私が学んだ技術の多くは今や使われていません。逆に、今日のスタンダードな技術の多くは、20 年前には存在していませんでした。そして、LLM の登場により、学び方そのものが根本から変わりつつあります

LLM以前の学習と現在の学習の違い#

20 年前、新しい技術を学ぶには:

  1. 分厚い技術書を購入して読み込む
  2. 公式ドキュメントを最初から最後まで読む
  3. サンプルコードを手打ちで写経する
  4. エラーが出たら自分で調査して解決する

これらのプロセスは時間がかかりましたが、その分、深い理解が得られました。

一方、LLM 時代の学習は:

  1. ChatGPT に「○○の基本を教えて」と質問する
  2. エラーが出たらそのまま AI に質問して解決策を得る
  3. サンプルコードを AI に生成してもらう
  4. わからない概念があればその場で AI に説明してもらう

この新しい学習法は圧倒的に効率的です。でも、表面的な理解に留まるリスクもあります。

LLM時代に効果的な学習習慣#

この変化のスピードについていくには、学び続ける習慣が不可欠です。でも、「勉強しなきゃ」というプレッシャーから学ぶのは長続きしません。大切なのは、学ぶことを楽しむ姿勢です。好きこそものの上手なれというやつですね!

私自身、新しい技術や概念を学ぶときは、「これを使って何が作れるだろう?」「これによって何が改善されるだろう?」と考えるようにしています。好奇心こそが、長期的な学習の原動力です。

LLM 時代の効果的な学習方法としては:

  • AIと人間の強みを組み合わせる - AI に基本を教えてもらい、人間は「なぜ」を深く考える
  • 実際に手を動かしてプロジェクトを作る - AI が生成したコードをそのまま使うのではなく、理解して改良する
  • AIとの対話を通じて概念を深める -「これはなぜそうなるの?」「別の方法はある?」と掘り下げる質問をする
  • AIの限界を知り、人間の判断力を磨く - AI の回答を鵜呑みにせず、検証する習慣をつける
  • 自分の学びをブログやSNSでアウトプットする - AI の助けを借りつつも、自分の言葉で説明する力を養う

特に最後のアウトプットは重要です。私自身、この Zenn やブログでの発信を通じて、多くの気づきや出会いがありました。教えることは、最も効果的な学びの形なんです。「誰かに説明できる」が本当の理解の証です!

LLM時代のエンジニアキャリア:幸せな道を見つけるために#

LLM の登場により、エンジニアの役割や価値も変化しています。「コードを書く」という作業の多くは AI が担うようになり、人間のエンジニアにはより創造的で戦略的な役割が求められるようになるでしょう。

新卒の皆さんは、これからどんなエンジニアになりたいですか? 🤔

  • AI と協働して複雑な問題を解決するプロンプトエンジニア?
  • AI ツールを活用して生産性を最大化するプロダクティビティスペシャリスト?
  • AI の限界を理解し、人間ならではの創造性を発揮するクリエイティブエンジニア?
  • AI システムの倫理や安全性を確保する AI 倫理スペシャリスト?
  • AI と人間のチームを率いる AI 時代のテックリード?

正解はありません。あなた自身の価値観や強み、興味に合った道を見つけることが大切です。

私の場合、技術が好きなのはもちろんですが、それ以上に「技術で人々の生活を良くすること」に情熱を感じています。コードを書くことが目的ではなく、そのコードが誰かの問題を解決することに喜びを感じるんです。だからこそ、単なる技術的な挑戦だけでなく、ユーザーにとっての価値を常に考えるようにしています。

LLM時代の新卒エンジニアへのアドバイス#

新卒の皆さんも、ぜひ自分自身の「なぜ」を見つけてください。なぜエンジニアになったのか。何を実現したいのか。その「なぜ」が、困難な時期を乗り越える力になります。

最後に、LLM 時代を生きる新卒エンジニアへの私からのシンプルなアドバイスです:

  • AIと協働する姿勢を身につけよう - AI を敵視するのではなく、パートナーとして活用する
  • AIが苦手な領域を理解し、そこで価値を発揮しよう - 創造性、倫理的判断、共感は AI が不得意
  • 謙虚に学び続けよう - 知れば知るほど、自分の無知に気づくもの
  • 失敗を恐れず挑戦しよう - 挑戦しない人生より、失敗のある人生の方が豊か
  • 仲間と共に成長しよう - 一人で登る山より、仲間と登る山の方が景色が美しい
  • 自分の価値観を大切にしよう - 他人の期待ではなく、自分の情熱に従おう
  • 何より、エンジニアであることを楽しもう! - 楽しさこそが継続の秘訣

エンジニアという職業は、世界を変える力を持っています。そして今、LLM という強力なツールを手にした皆さんには、私たちの世代以上に大きな可能性が広がっています。その力を持った皆さんの活躍を、心から楽しみにしています!

おまけ:自己紹介 👋#

松倉友樹(まつくらゆうき)と申します。Mindia, Inc.の CTO として、日々チームと共にプロダクト開発に取り組んでいます。学生時代から数えると約 26 年(学生エンジニア 6 年+社会人エンジニア歴約 20 年)のエンジニア経験があり、ウェブ開発、モバイルアプリ開発、クラウドインフラ、最近では AI 活用など幅広い領域に携わってきました。

個人的な(テックブログ)やZennでも技術情報を発信しています。また、Xでは@matsubokkuriで日々の気づきや学びをつぶやいています。

皆さんとどこかでお会いできる日を楽しみにしています。エンジニアとしての新たな旅の始まりを心から祝福します。素晴らしいキャリアになることを願っています! 🎉

新卒エンジニアへ贈る、エンジニア歴20年CTOからのメッセージ
https://blog.teraren.com/posts/2025-04-01-message-to-new-engineers/
作者
Yuki Matsukura
公開日
2025-04-01
ライセンス
CC BY-NC-SA 4.0
この記事が役に立ったら
GitHub Sponsorsで応援できます

コメント