あなたの懸念を読んだとき、私はある若いエンジニアが岐路に立ち、遠くまで伸びる二つの道を見つめている姿を思い出しました。一方の道は開発エンジニアリングへと続き、そこではアイデアが人々の目に触れ、触れることができるアプリケーションやサービスへと形になります。もう一方の道はインフラエンジニアリングへと続き、そこでは目に見えないシステムが舞台裏で静かにすべてを支えています。どちらの道も優劣はなく、どちらも不可欠です。難しいのは、どちらの道が自分の心を揺さぶるのかを見つけることです。
ある夜遅く、机に向かっている技術専門学校4年生を想像してみてください。卒業が近づき、多くの同級生がすでに進路を決めている中、彼はまだ自分に本当に合った道はどれなのか悩んでいます。彼は流行を追いかけたり、給料だけで選んだりしているわけではありません。むしろ、自分自身を理解しようとしているのです。どんな仕事なら、毎朝目覚めるのが楽しみになるだろうか?10年後、どんな問題解決に喜びを感じるだろうか?
ある日、彼は好奇心から、AIに簡単な設計課題を与えてみます。
「仮に、専門学校の課題管理アプリケーションを開発するとしましょう。」
要件は驚くほどシンプルです。学生は課題を登録し、締め切りを記録し、完了済みとしてマークし、締め切りが近づいている課題を表示できる必要があります。
一見すると、ごくありふれた問題に思えます。しかし、考えを巡らせるうちに、彼の想像力は膨らみ始めます。カレンダービューが必要かもしれません。締め切りの数日前に通知が表示されるようにしても良いでしょう。緊急性の高い課題は色分けして分かりやすく表示できます。ダッシュボードには、未完了のレポート数を表示できるかもしれません。気づけば、彼は画面構成、機能、そして学生が実際にどのようにシステムを使うかについて、1時間も考え込んでいました。
そして不思議なことに、彼はその時間を心から楽しんでいました。
しかし、すぐに疑念が湧き上がってきます。
「私はテクノロジーそのものにそれほど魅力を感じていない」と彼は考えます。「新しいフレームワークがリリースされるたびに興奮するようなタイプではない。もしかしたら、私は開発者には向いていないのかもしれない。」
そして、彼の関心はインフラストラクチャエンジニアリングへと移っていきます。組織を支援し、チームの成功を助け、システムの裏側でどのように機能しているかを理解すること。どれも魅力的に思える。彼は資格取得のための勉強にも真剣に取り組み、周囲から頼られる存在になることに喜びを感じている。
再び、彼はAIに課題を依頼する。
「小規模校のWebアプリケーションのインフラストラクチャを設計してください。」
生徒数200人。同時接続ユーザー数30人。予算は限られている。数時間のダウンタイムは許容範囲内だが、データ損失は絶対に許されない。
しかし今回は、何かが違う。サーバー、バックアップ戦略、可用性について読み進めていくうちに、思考が先に進まなくなる。好奇心ではなく、あらかじめ決められた選択肢の中から答えを選んでいるような感覚だ。アプリケーションを想像していた時の興奮は、どこにも見当たらない。
そして彼は考え込む。
「もしかしたら、自分はインフラストラクチャエンジニアリングには向いていないのかもしれない。」
しかし、答えは彼が考えているよりもずっと単純なのかもしれない。
開発とインフラストラクチャは、同じ家を建てる二人の職人のようなものだ。
開発者は、人々が暮らす部屋、窓、そして空間を設計します。快適さ、利便性、そして人々がその家でどのような体験をするかを考えます。
インフラエンジニアは、基礎を強化し、水道管を設置し、電気が途切れないようにします。ほとんどの住人はこれらのことに気づかないかもしれませんが、これらがなければ家は成り立ちません。
どちらの役割も重要というわけではありません。ただ、それぞれ異なるところに喜びを見出すのです。
あなたの話から、ユーザーがシステムとどのようにやり取りするかを想像するとき、あなたの目が輝くように感じます。あなたは次のような質問をするのが好きなようです。
「もっと使いやすくするには、どんな機能が必要だろう?」
「情報を整理するにはどうすればいいだろう?」
「学生が課題を忘れないようにするにはどうすればいいだろう?」
これらは、開発者になろうと無理をしている人の質問ではありません。他人のために体験を創造することを楽しむ人が自然に抱く質問です。
インフラ設計があまり魅力的に感じられないのは、あなたがそれに向いていないからではないかもしれません。もしかしたら、まだその美しさに気づいていないだけなのかもしれません。
経験豊富なインフラエンジニアにとって、システム設計は都市計画に似ています。交通、災害、人口増加、そして予期せぬ問題が発生してもすべてが機能し続けるようにするにはどうすればよいかなど、あらゆることを考慮します。一見、単にリストから選択しているように見えるかもしれませんが、実際にはコスト、パフォーマンス、信頼性、そしてセキュリティのバランスを取る作業なのです。そこには創造性も存在しますが、それはゆっくりと徐々に現れてきます。
それでも、人は自分が本当に情熱を傾けられるものを無視すべきではありません。
楽しみは決して軽視すべきものではありません。スキルは習得できます。知識も得られます。興味も時間とともに変化します。しかし、好奇心――問題解決に没頭して時間を忘れてしまうような感覚――は、かけがえのないものです。
もし私がこの物語の次の章を書くとしたら、その学生は開発エンジニアとしてキャリアをスタートさせるでしょう。彼はアプリケーションを開発し、データベースを学び、ユーザーの思考を理解するでしょう。その過程で、クラウドプラットフォーム、Docker、CI/CD、インフラストラクチャ技術に自然と触れることになります。少しずつ、彼は両方の世界の知識を身につけていくでしょう。
数年後、彼はフルスタックエンジニア、DevOpsエンジニア、あるいはシステムを隅々まで理解するアーキテクトになっているかもしれません。
そしていつか、彼は微笑みながら、学生時代に必死に探し求めていた答えが、ずっと身近にあったことに気づくでしょう。
それは、彼がコンピューターの前に座り、課題管理アプリケーションがどのように人々の役に立つかを想像していた、何気ない瞬間に隠されていたのです。
なぜなら、私たちに最も適したキャリアは、必ずしも最も華やかなものとは限らないからです。
それは、静かにこう思わせてくれるキャリアなのです。
「これは面白い。もっと続けたい。」