バイブコーディングで本番プロダクトを作る -- 理想と現実

バイブコーディングで本番プロダクトは作れるのか。個人開発での実践経験から、うまくいくケースと課題を解説する。

バイブコーディングとは

バイブコーディングとは、自然言語でAIに指示を出してコードを生成させる開発手法のことだ。2025年にAndrej Karpathyが提唱し、「コードを書く」から「AIにコードを書かせる」へのパラダイムシフトとして注目を集めた。

では、バイブコーディングで本番プロダクトは作れるのか。答えは「条件付きでYes」だ。

理想: 自然言語だけでプロダクトが完成する

バイブコーディングの理想形はこうだ。

  1. 作りたいものを自然言語で説明する
  2. AIがコードを生成する
  3. 動作確認して、問題なければデプロイ

実際、簡単なWebアプリやプロトタイプなら、これだけで動くものが作れる。プログラミング未経験者でもアプリが作れる、という夢は半分実現している。

現実: 本番プロダクトには壁がある

しかし、ユーザーにお金を払ってもらうプロダクトを作るとなると、話は変わる。

うまくいくケース

ケース理由
プロトタイプ・MVP完成度より速度が重要
社内ツール限定的なユーザー、緩い品質基準
静的サイト・LPロジックが少なく、見た目が主体
単機能のユーティリティスコープが狭い

うまくいかないケース

ケース理由
複雑なステート管理AIが全体の整合性を維持できない
セキュリティが重要な機能認証・認可の穴を見逃すリスク
パフォーマンス最適化AIはとりあえず動くコードを優先する
長期的な保守一貫性のないコードが蓄積する

R3O Works での実体験

私は Shutter というノートアプリを開発している。バイブコーディングを多用しているが、それだけで作っているわけではない。

バイブコーディングが効いた場面:

  • UIコンポーネントの生成(デザインを言葉で説明 → コード化)
  • API エンドポイントの雛形作成
  • テストケースの網羅的な生成
  • ドキュメントやコメントの自動生成

人間の判断が不可欠だった場面:

  • データベース設計(正規化の度合い、インデックス戦略)
  • セキュリティ設計(認証フロー、トークン管理)
  • アーキテクチャの選定(技術スタックの組み合わせ)
  • パフォーマンスのボトルネック特定と解消

体感では、全工程の60〜70%はバイブコーディングでカバーできる。残りの30〜40%が、プロダクトの品質を左右する部分だ。

テスト・セキュリティ・保守性の課題

バイブコーディングで生成されたコードには、共通の課題がある。

テスト: AIは「動くコード」を書くのは得意だが、「壊れないコード」を書くのは苦手だ。エッジケースの考慮が甘く、テストカバレッジが不十分になりがちだ。テスト設計は人間が主導する必要がある。

セキュリティ: AIはSQLインジェクション対策やXSS対策など、教科書的な防御は入れてくれる。だが、ビジネスロジックに起因する認可の抜けなど、コンテキスト依存の脆弱性は見逃す。セキュリティレビューは必須だ。

保守性: 異なる文脈で生成されたコードを組み合わせると、命名規則やアーキテクチャの一貫性が崩れる。定期的なリファクタリングと、プロジェクト全体のルール設定(linter、コーディング規約)が欠かせない。

結論: AIは武器、判断力は鎧

バイブコーディングは強力な武器だ。開発速度は劇的に上がる。一人で本番プロダクトを作ることも、確かにできる。

ただし、エンジニアリングの判断力なしにバイブコーディングだけで本番プロダクトを作ると、見えない負債が積み上がる。AIが生成したコードの品質を見極め、セキュリティを担保し、長期的に保守できる設計を判断する力。それが、バイブコーディングを本番で使いこなすための条件だ。

AIは開発を加速する武器であり、エンジニアリングの判断力はプロダクトを守る鎧だ。両方揃って初めて、本番プロダクトが作れる。

Shutter のプロダクトページを見る | AIネイティブ開発とは何か | 個人開発のマーケティングをゼロから学ぶ