現役エンジニアの僕が、1行もコードを書かなくなった理由——「Vibe Coding」のリアルと未来

現役エンジニアの僕が、1行もコードを書かなくなった理由——「Vibe Coding」のリアルと未来

ソフトウェアエンジニアとして6年以上やってきた僕だが、ここ1年ほど、キーボードを叩いて自力でコードを書いた記憶がまったくない。今動かしているプロジェクトのコードは、文字どおり1行残らずAIが書いたものだ。

けれど——1年以上前に初めてAIコーディングに触れたあの日、その無敵感に酔いしれていられたのは、せいぜい3日足らずだった。

Vibe Codingという多幸感

時計の針を去年(2025年)の6月に巻き戻そう。評判を耳にして、初めてCursorを立ち上げたときのことだ。見た目は長年使い慣れたVS Codeと瓜二つで、ただ右側にAIとやり取りするサイドバーがちょこんと付いているだけに見えた。

それまでの僕にとって、AIコーディングといえばGitHub Copilotの「ちょっと気の利いた自動補完」くらいの認識で止まっていた。ところが、プロンプトを打ち込んで送信ボタンを押した瞬間、目の前で魔法が始まった。

画面の向こうでAIが猛烈な勢いで思考を巡らせ、エディタ上にあっという間に数十行、数百行のコードを叩き出していく。それどころか、複数のファイルを自由に行き来しながら適切に書き換え、あまつさえターミナルでコマンドまで勝手に実行してくれるではないか。

自然言語で「こういう機能がほしい」と伝えるだけで、実装が目の前で組み上がっていく。1行ずつ指を動かす必要もなければ、お決まりのコードスニペットを呼び出す作業とも次元が違う。もっと高い視座から、エンジニアの仕事そのものを完全に肩代わりし始めているのだ。

まるで手にした筆から描いたものが飛び出すような万能感。まったく新しい世界の扉が開いてしまった——そんな興奮が身体を駆け巡った。

当時の僕は、高揚感のあまりこんなメモを残している。

Vibe Codingは、ADHD気質の人間に恐ろしいほど相性がいい。テストを書くのが億劫で、CSSをいじるのが嫌いで、タイポで変数名を間違えては泥臭くつまらないバグと格闘する……そんな従来の開発につきまとっていた苦痛を、Vibe Codingが一瞬で帳消しにしてくれた。

AIがいれば、フィードバックは光の速さで返ってくる。退屈で反復的な作業ほどAIの真価が発揮され、圧倒的な達成感だけが手元に残る。

人間は全体の大方針とアーキテクチャ設計に集中し、プロジェクトを導くディレクター役に徹すればいい。

僕は1文字ずつコードを打ち込みたいわけじゃない。作品を生み出すことそのものが好きなのだ。アセンブラから高級言語へと進化してきた歴史と同じで、プログラミング体験はもっと快適に、もっと効率的になっていくのが自然なはずだ。

土木作業員のようにコードを積み上げるのではなく、純粋な「クリエイター」としてプロダクトを生み出せる。プログラマーとして、これほど幸せな時代があるだろうか。

Vibe Codingの限界と境界線

この手のスタイルは、今では「Vibe Coding」という名で広く知られている。2025年2月にOpenAI共同創業者のアンドレイ・カルパシー(Andrej Karpathy)が提唱した言葉で、要するに「フィーリング(ノリと空気感)だけで突っ走るコーディング」のことだ。作りたいものを自然言語でAIに丸投げし、吐き出されたコードは1行も見ずにそのまま受け入れる。エラーが出たらログをそのままAIに投げ返す。コードの存在そのものを忘れてしまうほど、感覚に身を任せるやり方を指す。

……だが、冒頭に書いたとおり、この全能感は3日しか持たなかった。Vibe Codingの「壁」は、あっけなく目の前に立ちはだかったのだ。

当時、僕はアプリのプロトタイプを開発していた。何の設計ルールもエンジニアリングの規律も持ち込まず、ふわっとした指示だけでAIに自由に書かせてみたのだ。するとどうなったか。手戻りを重ねるごとにAIは言うことを聞かなくなっていき、気づけばコードベースは誰にも手のつけられないスパゲッティ状態に崩壊していた。

これではダメだ、とすべてを捨てて最初から作り直した。今度は一人のソフトウェアエンジニアとして、まっとうな開発プロセスを敷いたうえで、AIと協調する道を選んだ。

すると、まったく別の地平が見えてきた。

Vibe Codingの手軽さと楽しさはそのままに、厳格なコードレビューを取り入れ、仕様やドキュメントを明文化し、大きな変更を一発で加えるのではなく小さく漸進的に改善していく。その規律を徹底した途端、アーキテクチャと実装のコントロール性が劇的に跳ね上がった。狙った場所に寸分の狂いもなく弾を撃ち込めるような、本物の快感がそこにあった。

このときのAIは、もはや放し飼いの魔法使いではなく「極めて優秀なインターン」だった。泥臭い実装作業は任せつつも、全体のアーキテクチャをどう保つかという大局観だけは、人間が手放してはいけないのだ。

その後、メインツールをClaude Codeに切り替えたことで、コントロールの精度とパワーはさらに盤石になった。背中に翼が生えたかのように、開発スピードは何倍にも跳ね上がっていった。

ソフトウェアエンジニアの未来

「Vibe Codingで誰でもあっという間にモノが作れるようになったら、基礎を泥臭く学ぶ人なんていなくなってしまうのでは?」

——結論から言えば、間違いなくその通りになると思う。

従来のプログラミング学習からプロダクト開発への道筋は、一段ずつ階段を登っていくようなものだった。基礎文法を学び、ジュニアエンジニアとして現場に出て、無数の泥臭いトラブルや設計の壁にぶつかりながら、少しずつ一人前のエンジニアへと成長していく。どのステップにも確かな手応えがあり、平均的な学習意欲さえあれば業界に入り込めるだけの、見通しのいいキャリアパスが用意されていた。

だがVibe Codingは、ゼロから立ち上げるハードルを極限まで引き下げてしまった。今や誰でも「動くデモ」くらいなら作れてしまう。しかし、ソフトウェアエンジニアリングの本質は、泥臭い実践の積み重ねにある。動くだけのデモから、堅牢で信頼できる商用プロダクトに仕上げるまでには、「0→1」と「1→100」ほどの絶望的な隔たりが存在するのだ。

かつてのキャリアパスなら、「0→1」をもがいて突破する過程で、「1→100」に必要な基礎体力が自然と養われていた。だが、Vibe Codingで下駄を履かせてもらった人は、その基礎をすっ飛ばしてしまう。その結果、「1→10」の段階で断崖絶壁のような難易度の壁に直面し、大半の人間が挫折していくことになる。

手前が甘美でイージーだった分、その先に待ち受ける壁を乗り越えるには、並大抵の興味や学習意欲では到底足りない。もしそこを軽々と突破できる人間がいるとすれば、その人は最初から学習能力・実行力・課題解決力がずば抜けた、上位1%に属するギフテッドだけだろう。

身も蓋もない言い方をすれば、そうした一握りの人間は、AI以前の時代であっても勝手にトップエンジニアに上り詰めていたはずなのだ。

AIのコーディング能力が跳ね上がるにつれて、現場はジュニアエンジニアを必要としなくなっていく。育成のレールは断ち切られ、次世代が実践を通じて腕を磨く機会そのものが奪われていく。

この原稿の下書きを書いてから1年が経った今、採用市場のデータはその残酷な未来を裏付け始めている。

率直に言って、この業界の行く末について僕はかなり悲観的だ。プログラミングの世界は、雲の上の化け物たちによるハイレベルな空中戦か、あるいは趣味人がデモレベルのオモチャを作って楽しむ領域か——そのどちらかへと二極化していくだろう。

そしてこの流れは、プログラミング以外のあらゆる知的労働にも波及していくはずだ。近い将来、いわゆる「ライトな頭脳労働」はすべてAIに飲み込まれていく。

人間による純粋なひらめきが最も問われるはずの「数学」の世界でさえ、この1年でAIによって風穴を開けられてしまった。

このシリーズで書いていくこと

いま、非エンジニアの人々が続々とAIコーディングの世界に足を踏み入れている。けれど、何から手を付ければいいのか分からなかったり、小さなオモチャを動かして満足してしまったりしているケースも多いはずだ。いざ実用的なものを作ろうとしたとき、ソフトウェアエンジニアリングの素養がないと、「自分が今何をやっているのか分からない」「問題をどう切り分ければいいか見当もつかない」「どう指示を出せばAIが思い通りに動くのか掴めない」という深い霧の中に迷い込んでしまう。

さらによく見かけるのは、論理的な思考のフレームワークを持たないがゆえに、適切な問いの立て方が分からなかったり、AIが出してきたコードの妥当性をクリティカルに検証できなかったりするケースだ。

僕は6年以上のエンジニア経験をベースに、AIの力を借りて複数の複雑なプロダクトを設計・開発し、実際に多くのユーザーに使ってもらうところまで持ってきた。冒頭でも言ったように、今の僕のプロジェクトでは1行も自分の手でコードを書いていない。確かな知識と手綱さばきさえあれば、AIはどれほど複雑なシステムであっても形にしてくれる。AIはあくまで道具であり、成否を分けるのはそれを操る人間の側の解像度なのだ。

AI時代において、従来のプログラミング学習のロードマップは完全に崩壊した。だからこそ、時代の転換点に立ついま、**『未経験からのVibe Coding完全ガイド』**と題した連載をスタートさせようと思う。

このシリーズでは、主に次のようなテーマを掘り下げていく予定だ:

  1. AIコーディングを現代のソフトウェアエンジニアリングにどう組み込むか:そもそもソフトウェア工学とは何なのかを理解した上で、ゼロから思い描いたアプリを具現化する。目指すのは「動くだけのデモ」ではなく、息長くメンテナンスでき、手触りもなめらかな本物のプロダクトだ。
  2. 思考とロジックのトレーニング:AIに的確な指示を出すための「問いの立て方」、やってはいけないアンチパターン、そしてAIを迷わせないためのプロジェクトドキュメントの設計法。
  3. テスト設計とワークフローの自動化:アーキテクチャの堅牢性を担保しながら、開発スピードを落とさずに機能と品質を磨き上げ続けるにはどうすればいいか。自動化ワークフローの構築術。
  4. AI時代のベストな技術選定:AIのポテンシャルを極限まで引き出すためには、どの言語やフレームワークを選ぶべきなのか。

あとがき

実のところ、この記事のベースとなる文章は1年前(2025年10月)に書き留めていたものだ。今回、この1年間に起きた採用市場の激変や数学界でのAIの躍進といったファクトを盛り込み、全面的に手を入れて公開することにした。当時はAIの進化スピードがあまりに速すぎて、「何か書いても数日で陳腐化してしまうのではないか」という恐れから、X(Twitter)のような短文投稿ばかりで長文の論考を避けてしまっていた。だが1年経って読み返してみると、当時の直感は思いのほか本質を突いていたように思う。

これからは、もっと腰を据えて文章を書いていくつもりだ。結局のところ、血の通った人間らしい思考のログこそが、これからの時代に最も希少な価値を持つはずだから。