Claude Codeで何でも作れる? 実際にAI駆動開発をやると見えてくる「本当に難しいところ」

Claude CodeやCodexの登場によって、「もうプログラミングができなくても、誰でもシステムを作れる時代になった」と感じる人は増えています。

実際、簡単なWebアプリや社内ツールであれば、AIに指示を出しながら驚くほど短時間で形にできます。

画面を作って、データベースにつないで、ログイン機能を付けて、公開する。

以前なら数日から数週間かかっていたようなものが、数時間で動くところまで到達することも珍しくありません。

では、本当に「Claude Codeがあれば誰でも何でも作れる」のでしょうか。

実際にAI駆動開発をかなり使い込んでいくと、むしろ逆の感覚になります。

作り始めることは簡単になった。
しかし、業務で使い続けられるシステムを作る難易度は、それほど下がっていない。

むしろ、AIによって開発速度が上がったことで、これまで後回しにされていた設計・インフラ・セキュリティ・保守などの重要性が、より強く見えるようになってきました。

Claude Codeは「コードを書く」のは非常に得意

まず前提として、Claude CodeのようなAIコーディングツールは非常に強力です。

例えば、

  • 管理画面を作る
  • APIを実装する
  • データベースのCRUDを作る
  • CSVのインポート機能を追加する
  • テストコードを書く
  • 既存コードをリファクタリングする
  • エラーの原因を調査する

といった作業は、かなりの速度で進められるようになりました。

特に、仕様が明確な作業ほどAIは強力です。

「この画面に検索機能を追加して」

「このAPIにページングを実装して」

「この処理のテストを書いて」

こうした指示であれば、人間がすべてコードを書くよりもはるかに速く進むケースがあります。

つまり、ソフトウェア開発の中でも、実装そのもののコストは大きく下がり始めています。

ところが、システム開発は「コードを書く」だけではない

ここで大きな誤解が生まれます。

システム開発というと、画面やプログラムを書くことが中心に見えます。

しかし実際の業務システムでは、その前後に大量の仕事があります。

例えばログイン機能ひとつを取っても、

「ログイン画面を作る」

だけで終わりではありません。

  • Googleログインにするのか
  • メールアドレスとパスワードにするのか
  • パスワード再発行はどうするのか
  • 管理者と一般ユーザーの権限をどう分けるのか
  • 退職者のアカウントをどう無効化するのか
  • ログイン履歴を残すのか
  • 不正アクセスをどう検知するのか

といったことを考える必要があります。

AIはコードを書くことはできます。

しかし、

「そもそも何を作るべきか」

という設計判断は依然として重要です。

一番大変なのは、実はインフラ周り

AI駆動開発を始めると、意外と早い段階でインフラの壁にぶつかります。

ローカル環境では動いていたのに、本番環境では動かない。

これは昔からある問題ですが、AI開発でも同じです。

例えば、

  • Vercel
  • Cloudflare
  • AWS
  • Azure
  • Supabase
  • Neon
  • Docker
  • DNS
  • SSL
  • 環境変数
  • CI/CD

など、さまざまなサービスや技術が関わってきます。

さらに、

「データベースはどこに置くのか」

「バックアップはどうするのか」

「本番環境と開発環境をどう分けるのか」

「障害が起きたときどう復旧するのか」

ということまで考える必要があります。

AIは設定ファイルを書くことはできます。

しかし、構成を間違えると、

  • セキュリティ事故
  • データ消失
  • 高額なクラウド料金
  • サービス停止

につながる可能性があります。

そのため、AIが生成した内容を判断するためのインフラ知識は、むしろ重要になります。

「動く」と「安全に使える」は全く違う

AIで作ったシステムは、とりあえず動くところまでは非常に早いです。

ただし、

動くシステムと、安全に業務で使えるシステムは別物です。

例えば顧客情報を扱うシステムなら、

  • 他社のデータが見えないか
  • URLを書き換えて別ユーザーの情報にアクセスできないか
  • APIが認証されているか
  • 管理者権限が適切か
  • SQL Injectionなどの脆弱性がないか
  • ログに個人情報が出ていないか

などを確認する必要があります。

特にSaaSでは、複数企業が同じシステムを利用するため、マルチテナント設計が非常に重要です。

AIがコードを書いてくれるからこそ、

生成されたコードが本当に安全なのかを確認する能力

が必要になります。

本当に大変なのは「作った後」

そして、AI開発で最も見落とされやすいのが保守です。

システムは完成した瞬間がゴールではありません。

むしろそこから始まります。

実際には、

  • バグ修正
  • 利用者からの改善要望
  • ライブラリのアップデート
  • セキュリティアップデート
  • OSやクラウドサービスの変更
  • API仕様変更
  • データ量増加への対応
  • パフォーマンス改善

などが継続的に発生します。

例えば、半年後にClaude Codeへ、

「このシステムを改善して」

とお願いしたとします。

しかし、その時点ではコードが数万行になっているかもしれません。

さらに、

「なぜこの設計になっているのか」

「どの機能がどこに影響するのか」

という背景情報が分からなくなっている可能性があります。

だからこそ、

  • 設計書
  • README
  • ADR
  • テスト
  • コーディングルール
  • Git履歴
  • CI/CD

などの整備が重要になります。

これはAI時代でも変わりません。

むしろAIが大量のコードを高速に生成するため、整理されていないコードベースは以前より早く複雑化する可能性があります。

AIは間違える。それも「それっぽく」

もう一つ重要なのが、AIは必ずしも正しいコードを書くわけではないことです。

AIは非常に自然なコードを書くため、一見すると正しそうに見えます。

しかし、

  • 存在しないAPIを使う
  • 古い仕様を使う
  • エラー処理が不足する
  • セキュリティチェックを忘れる
  • 想定外の条件でバグが発生する

といったことがあります。

特に怖いのは、

コードがきれいに見えるため、問題に気付きにくいことです。

そのため、

  • TypeScript
  • Lint
  • 静的解析
  • 単体テスト
  • E2Eテスト
  • セキュリティチェック
  • CI

など、機械的に検証する仕組みが重要になります。

AIにコードを書かせるほど、

AIを信用しすぎない仕組み

が必要になるとも言えます。

では、プログラミング知識はいらなくなるのか

ここでよく出る疑問があります。

「AIがここまでコードを書けるなら、プログラミングを勉強する必要はないのでは?」

これは半分正しいと思います。

以前のように、

「すべてのコードを暗記して、自分の手で書ける」

必要性は下がっています。

一方で、

  • この設計は正しいか
  • このコードは危険ではないか
  • このエラーはどこから来ているか
  • この技術選定は適切か
  • このシステムは将来拡張できるか

という判断能力は、むしろ重要になっています。

言い換えると、

コードを書く力よりも、コードを理解し、設計し、評価する力の重要性が上がっている

とも言えます。

「誰でも作れる」は「誰でも運用できる」ではない

AIによって、ソフトウェア開発の入口は確実に広がりました。

これは非常に大きな変化です。

これまでシステム開発を依頼するしかなかった人が、自分でプロトタイプを作れるようになりました。

アイデアをその日のうちに形にできるようにもなりました。

これは素晴らしいことです。

ただし、

プロトタイプを作れることと、会社の業務システムを作れることは同じではありません。

例えば、

「顧客管理システムを作ってみた」

ところまではAIで簡単にできます。

しかし、

  • 5年間運用できる
  • 何十人でも安心して使える
  • データが消えない
  • セキュリティ事故が起きない
  • 担当者が変わっても保守できる

ところまで持っていくには、依然としてエンジニアリングが必要です。

AI時代のエンジニアリングは「書く」から「設計する」へ

これからのエンジニアリングは、少し役割が変わっていくと思います。

これまでは、

人間がコードを書く

ことが中心でした。

これからは、

人間が設計し、AIが実装し、人間と自動テストが検証する

という形が増えていくでしょう。

そのためエンジニアに求められる知識も、

「JavaScriptの書き方」

だけではなく、

  • アーキテクチャ
  • データベース
  • クラウド
  • セキュリティ
  • テスト
  • DevOps
  • 業務設計

など、より広い範囲になっていきます。

AIによってエンジニアリングがなくなるというより、

エンジニアリングの中心が変わる

と考えた方が近いのではないでしょうか。

私たちもAIを使って開発しています

私たち自身も、Claude CodeやCodexなどを活用しながら開発しています。

AIを使うことで、以前よりはるかに速くシステムを開発できるようになりました。

一方で、実際に使い込むほど、

AIだけでは完結しない部分の大きさ

も感じています。

業務整理、設計、インフラ、セキュリティ、テスト、運用、改善。

こうした部分を含めて初めて、業務で安心して使えるシステムになります。

だからこそ私たちは、

「AIでコードを書くこと」

そのものではなく、

AIを活用しながら、実際の業務で使い続けられるところまでシステムを形にすること

を大切にしています。

まとめ

Claude Codeを使えば、以前より圧倒的に簡単にソフトウェアを作れるようになりました。

しかし、

簡単に作れるようになったことと、システム開発が簡単になったことは、必ずしも同じではありません。

コードを書く作業が簡単になった分、

  • 何を作るか
  • どう設計するか
  • どう安全性を確保するか
  • どう運用するか
  • どう改善し続けるか

という部分が、より重要になっています。

AIは非常に優秀な開発パートナーです。

ただし、AIにすべてを丸投げすれば完成する魔法の道具ではありません。

これからは、

AIを使える人と、AIを使って「運用できるシステム」を作れる人の間に、大きな違いが生まれてくる。

実際にAI駆動開発を続けていると、そう感じます。

関連記事

お気軽にご相談ください

ご質問やご相談がございましたら、お気軽にお問い合わせください。

お問い合わせはこちら