生成AIの進化により「バイブコーディング」と呼ばれる自然言語を使ったプログラミング手法が台頭し、非エンジニアでも容易にソフトウェア開発が可能になった現状と、その裏で品質管理やプロジェクトマネジメントを担うプロのソフトウェアエンジニアの役割がどのように変化しているかを解説する。

プログラミングの民主化と広がる可能性
これからお話しするのは、諸刃の剣についての物語です。現時点でAIはほぼすべてのことをこなすと期待されていますが、実はAIが最も得意とするのは、自分自身を構成するもの、つまりコードを作ることだとわかってきました。かつては高度なスキルが必要な作業とされていましたが、生成AIの助けにより、今ではほぼ誰でもコーディングができるようになりました。
一方で、これはこれまで日の目を見なかったであろう、幅広い製品やビジネスを生み出す可能性を広げています。しかしもう一方で、プロとしてコードを書く人々の未来を不確実なものにしています。私たちが積極的にAIに仕事を任せたときに何が起こるのか、その物語をお伝えします。
ウェストバージニア州アッパートラクトで、恐竜の骨からボードゲームまで、顧客があらゆるものを発送するのを支援するブティック型倉庫を所有している男性がいます。昨年、彼はAIの助けを借りてパッケージの発送を自動化するソフトウェアを構築しました。
今見ているその注文はどこにあるんですか。
AIなしでは、これらをやり遂げることは絶対に不可能でした。最初に、私たちが使っていたいくつかのスプレッドシートから、実際に使えるサンプルの準備を整えるまでの作業は、1日もかかりませんでした。そしてすぐに稼働させ、この倉庫で実際に使い始めました。
アイデアを即座に形にする魔法の体験
カリフォルニア州オークランドでは、さまざまな犬種の写真を収集するアプリがあればいいのにと考えていた女性がいます。
ネットでバイブコーディングについて知ったとき、自分でもやってみようかなと思ったんです。初めて小さなポップアップが出てきて、ビルド成功と表示され、アプリが立ち上がるのを見たとき、それが現実になったのを感じました。あれはまるで魔法のような瞬間で、うわあ、信じられない、本当に自分でものが作れるんだと感動しました。
バイブコーディングという言葉は、OpenAIの創設メンバーの一人であるアンドレイ・カルパシーによって作られたもので、ロボットと会話するようなコンピュータープログラミングのプロセスを説明しています。実際にはこんな感じです。たとえば、データセットを視覚化してアニメーション化するウェブサイトを作りたいとします。そこでClaudeやCodex、あるいはこの場合はGeminiのような生成AIツールを使い、日常的な言葉で自分が欲しいものを正確に伝えます。すると、AIが私の代わりにコードを書いてくれます。
そしてコーディングが簡単になったことで、これまで以上に多くのコードが生み出されるようになりました。コードの保存と共有に使われるプラットフォームであるGitHubでの活動は大幅に増加しており、AIコーディングアシスタントが普及した2025年初頭に急増しました。バイブコーディングは小規模ビジネスや趣味でソフトウェアを作る人々を助けていますが、それを牽引しているのはプロフェッショナルたちです。
ソフトウェアエンジニアの役割はどう変わるのか
この建物で行われているのは、Google Cloudに取り組むさまざまな人々の作業です。Googleで自律性やエージェントベースのエンジニアリングについて話すとき、私たちは仮想のソフトウェアエンジニアを持てるようなシステムを想定しています。
ちょっと待ってください。もしこの優秀なエンジニアたちが皆このようにAIを使っているなら、この美しい建物の中で彼らは一日中何をしているのでしょうか。
素晴らしい質問ですね。
彼はGoogle Cloud AIのディレクターとして、現在ビジネス向けの次世代AIツールを構築しているエンジニアチームを監督しています。
もしあなたがバイブコーディングをしているなら、ほとんどその場の雰囲気に身を任せているようなものです。必ずしも自分のビジョンの全体像をはっきりと持っているわけではなく、ただLLMと一緒に作業し、どこかにたどり着こうとしているだけです。しかしエンジニアリングであれば、そこに厳密さを適用しなければなりません。明確な要件定義が必要ですし、テストも行います。
そして現在、スタートアップであれ大企業であれ、ソフトウェアエンジニアの役割は、次第にもう少しマネージャーに近いものへと進化していくでしょう。あなたは実質的に、自分が責任を持つ仮想のエージェントチームを抱えることになり、その結果に責任を持たなければなりません。どれだけ多くのエージェントを動かしているかは関係ありません。
出力に対して責任があるんですね。
その通り、出力に対して責任を持ちます。だからこそ、どうやって品質を評価するのか、品質評価にどれだけの時間をかけるのかを決めなければなりません。なぜなら、勢い任せでやるのを好む人もいるからです。エージェントが一晩中動いてくれた、良さそうだ、まあ動いているし、そのままデプロイしてしまおう、という具合です。しかし、本格的なソフトウェアを構築しているなら、品質の基準は何か、品質をチェックするゲートはどこか、これがユーザーのニーズを継続的に満たすものであるとどうやって確認するのか、という考えを持つ必要があります。
AIによる生産性向上とビジネスへの影響
カリフォルニア州サニーベールのGoogle本社にいるエンジニアにとって、AIは単に生活を楽にするだけでなく、コーディングの腕を上げていると彼は言います。
投資家からよく寄せられるその質問の延長として、そのエンジニアやチームの生産性向上をどのように測定するのかという疑問があります。
AIの初期の頃、組織のリーダーたちは、何行のコードが生成されたか、といったことを見ていました。それは決して生産性の良い指標とは言えません。しかし最近では、人々はさまざまな指標を組み合わせて使っていると思います。定性的および定量的な評価を使おうとしています。一般的に言って、生産性は大きく向上しています。AIの初期なら、その向上は10パーセントから15パーセントだと言っていたでしょう。最近では、それは30パーセントから50パーセントに達しています。そしてこの数字は今後も上がり続ける一方だと見ています。
MITのフランク・ネイグルと研究者チームが、コーディング用の生成AIツールであるGitHub Copilotを使用している18万7000人以上のソフトウェア開発者を調査しました。その結果、労働者の生産性が向上していることがわかりました。なぜなら、彼らが時間を費やす対象が変わったからです。
私たちがAIについてよく考える大きなことの一つは、単に生産性を向上させるだろうということだと思います。私たちが何をするにしても、それをスピードアップしてくれるだろうと。しかし、それは本当に表面的なことに過ぎません。仕事に割り当てる時間が100パーセントあるとします。それを、私たちがコアワークと呼ぶ実際のコーディングと、よりプロジェクトマネジメント的な仕事という側面でどのように配分していたでしょうか。
わかったのは、コーダーがこの種のツールを使い始めると、コーディングに割り当てる時間が劇的に変化するということです。そしてプロジェクトマネジメントに割り当てていた時間の多くを削っています。なぜこのようなことが起きているのかというと、その理由の一つは、昔ならコードAを書いていて、そのコードが別のコードBに依存していた場合、他の人を待たなければならなかったからです。彼らとやり取りをして、すべてがうまく連携するかを確認しなければなりませんでした。しかし今では、すべてを自分だけで書くことができます。
この生産性の向上は、全く新しいコードを書いてデプロイする人々、そして特に先ほどの彼女のようなクリエイターを含め、コードの知識が全くない人々にとって顕著です。
これは私が取り組んでいる新しいアプリです。そしてここにあるのが押し花です。それで、実行中のクラウドコードに行き、シンプルに何をしてほしいかを説明します。最初の頃、実は本当にたくさんのツールを試しました。それは約1年前のことですが、バイブコーディングの石器時代のように感じますね。おそらく1ヶ月ほどで、アプリの土台を作ることができました。全く技術的な背景を持たない人間として、実際にフルスタックのアプリを作ることができたんです。フロントエンドとバックエンドの機能があり、完全に私一人でアプリストアにリリースすることができました。
ビジネスオーナーにとっても、バイブコーディングで作られたソリューションは、倉庫のコスト削減に役立っています。
ここにはAIを使って作った主なコーディングソリューションが3つあります。1つはバッチ処理の作成です。これは、さまざまな注文を受け取り、それらをまとめてピックアップしやすいグループにするという点で重要な部分です。もう一つのソリューションは在庫管理です。これは標準的な倉庫の機能ですが、私たちのクライアントは本当に多種多様です。そのため、クライアントを単一の在庫管理システムに押し込めようとするのは本当に難しいのです。
だから私たちは実際にAIを使って、基本的には彼らが彼ら自身のやり方で管理できる在庫管理ソリューションを作りました。私にはかなり多彩な経歴があります。ずっと昔、プログラマーとして働き始めました。しかし、たとえコーディングが非常に速い人でも、これらすべてのソリューションを構築することはできなかったでしょう。不可能です。
もしプログラマーのチームでやるなら、5人のプログラマーをフルタイムでこれに取り組ませても、これほど多くの成果は出せなかったはずです。もし私たちが今やっていることすべてをこなすソフトウェアシステムを導入するとしたら、すべてのカスタマイズや柔軟性がない状態だとしても、年間のライセンス料はおそらく6,000ドルから10,000ドルの間になるでしょうし、倉庫を通過する荷物の量によっては、年間30,000ドルから50,000ドルにまで跳ね上がるかもしれません。それでは私たちが求める柔軟性はありませんし、何より高価です。小さなブティック型倉庫にとって、それは大きな出費になります。
今では、月に約20ドルで、ビジネスオーナーが独自のソフトウェアソリューションを構築しています。
雇用への懸念と長期的な視点の重要性
それが新たな可能性を切り開いた一方で、マイナス面もあります。2022年以降、大学を卒業したばかりのソフトウェアエンジニアの雇用は20パーセント近く減少しています。一部の専門家は、企業が大きな間違いを犯していると考えています。
この状況全体の最大のリスクの一つは、人々が短期的になりすぎて、長期的な視野を十分に持たなくなってしまうことだと私は強く思っています。まず第一に、もし新しい人を誰も雇わなかったら、10年から15年後に誰が会社を運営するのでしょうか。しかし第二に、私たちや他の研究によって、実は若手の人々こそが自分の仕事のやり方を変え、これらのツールから最大限の利益を引き出せるということが示されています。ですから、もし私たちが以前と同じペースで彼らを雇わないのであれば、その利点を活かすことはできないでしょう。
その意見には同意の声も上がっています。
これがエンジニアの代わりになるとは全く思いません。AIを使って何かを作れば作るほど、この領域への理解が深まり、何ができて何ができないかさえわかってくると思います。確かに技術的には作れますが、エンジニアならおそらくこれをはるかに短い期間で、しかもずっと堅牢なコードで作れたはずです。
ビジネスの観点からは、リバースメンタリングのようなものを考えてきた企業にとって、これは大きなチャンスだと思います。つまり、若手が経験豊富な人々にこうしたツールのより良い使い方を教える一方で、経験豊富な人々が若手に業界の仕組みを理解するのを手助けするわけです。
品質を担保するプロフェッショナルの価値
もしAIがコードを書けるなら、ソフトウェアエンジニアの役割とは何でしょうか。今ではすべてが品質にかかっていると言われています。
もし、時を超えて残るような、何億、何十億というユーザーに提供できるような堅牢なエンジニアリングの成果物を作りたいなら、考慮すべきことがたくさんあります。だから、このような建物にいる人々が一日中やっていることは、コードが実際にその品質の基準を満たしているかを確認することなんです。その結果、裏でAIを使っている何かをユーザーに提供する際に、ユーザーが本当に望むものを手に入れられるようにするためです。結局のところ、それがユーザーにとって重要なことなのです。人間が書いたかAIが書いたかなんて気にしません。それが確実に仕事をこなしてくれなければ意味がないのです。
つまり、バイブコーディングという言葉はそういう文脈で使われるんですか。チーム内では禁止されているのでしょうか。
全くそんなことはありません。バイブコーディングには多くの価値があると考えています。バイブコーディングにより、人々はアイデアから実行までをかつてないほど早く進めることができます。そして、多くのチームがプロトタイピングに取り組む方法を完全に変えました。過去にはシリコンバレーや多くの場所で、アイデアがあっても、これを構築する余裕があるだろうか、と議論や討論をするだけで何週間も何ヶ月も費やすことがよくありました。今ではただ作ればいいんです。
ですから、この言葉は今や私たちの言葉の中に非常に確固たる居場所を持っていると思います。ただ重要なのは、何かをバイブコーディングしたからといって、必ずしもそれが実戦で鍛え抜かれた本番環境で使える成果物になるわけではないと理解することです。
シリコンバレーにおいて、AIの進歩の試金石となるのは真の自律性です。夜にプロジェクトを開始し、朝起きるとAIエージェントによって自律的にコードが書かれている状態です。それはシニアソフトウェア開発者にとっては夢であり、かつては自分たちでその作業を行っていたであろう新人コンピューターエンジニアにとっては、おそらく悪夢でしょう。しかし、コーディングをしない私たち一般人にとって、今こそ人類が最も得意とすること、つまり組み立て、創造するための機が熟しているのかもしれません。


コメント