AIで全ての人が開発者になる時代、開発のボトルネックはどこに?
コンピュータ技術は抽象化のレベルを高めながら進化してきたと言える。難解なパンチカードやアセンブリ言語は、FORTRANの時代に進むと人間にもプログラムが「読める」ようになった。今ではJava、Node.js、Python、Go、Swift、HTML、JavaScriptなど、より抽象度が高いプログラミング言語で、実行したいロジックを表現できるようになっている。
抽象化のレベルを高めるとは、難しい概念を包み込み、より高度なことを簡潔に表現できるようにしていくことだ。草薙氏は「時間の経過とともに、プログラミング技術も言語も進化し、より多くの開発者が関われるようになりました。今ではモバイルアプリやWebの領域にも多くの開発者がいます。AIの進化でソフトウェア開発のハードルが低くなり、全ての人がソフトウェア開発者になる時代が来るかもしれない。そのような予測も出てきています」と話す。
従来の開発では、コマンドラインを理解し、IDEを使い、インフラの知識を持ち、クラウドへのデプロイをしていた。今後はAIの恩恵で、従来の手法だけではなく新しい手法が使われるようになるだろう。
エンジニアではないどのような職種の人が、どのようなシーンで、開発者に依頼することなく自ら開発するようになるだろうか。例えばマーケティング担当者ならパーソナライズのためのソリューションを組むだろうし、スタートアップ創業者ならビジネスアイデアのプロトタイプを作成する。非開発者であるビジネスユーザーやナレッジワーカーが、自らのアイデアを次々と形にできるようになるだろう。既存の開発者は、仕事を奪われるのではなく、AIを活用してよりパワフルなアプリケーションを開発したり、アイデアをより高速に実現できたりするようになる。
AIはただ参入障壁を下げるだけではなく、アプリケーション構築の新しい手法も生み出している。これまではアプリケーションロジックを、ステップごとに手作業でコードとして記述していた。今ではAIに「こういうことをしたい」と抽象的な表現を伝えるだけで、ロジックや手順を作ってもらったり、そうしたタスク全体を任せたりすることも可能になってきた。
ここで重要になるのがAPIだ。AIは、リアルタイムの状況に応じてデータを発見・取得するためにAPIを活用し、さらには外部機能を呼び出すためのAPIを検索することすら、APIを経由して行う。あらゆる機能がAPIを介して提供されているため「質の高いAPIなくしてAIの力をフルに引き出すことはできません」と草薙氏は指摘する。
AI時代に課題となる、開発プロセス全体の複雑さ
近年のAIの進歩は目を見張る。ほんの2年前は深い知識や経験が必要だったタスクでも、AIがあればものの数分でできてしまう。例えば、自然言語処理エンジンを構築することなく、LLM APIでチャットボットが作れてしまう。また書類をスキャンしてPDFに変換し、重要な部分だけ取り出してまとめることも可能だ。データベースへのアクセスもSQLを書くことなく「こういったデータがほしい」とリクエストすればデータ抽出できてしまう。画像、音声、動画などのメディア生成も自然言語による指示で簡単に行える。
複雑な機械学習パイプラインを構築しなくても、商品や記事のおすすめを表示するレコメンデーションエンジンを作れるようになった。これまでは、顧客や読者を理解することに多くの時間や労力をかけて作っていたにも関わらずだ。
AIの質は短期間で劇的に向上することもある。ほんの少し前まで「いまいち」だったAIモデルの出力が、ある日突然向上して驚いたことはないだろうか。出力する量も速さも人間とは比較にならないほどだ。
自然言語で指示できるからこそ、LLMとのコミュニケーションは開発者の重要な役割になる。最近よくLLMは新人に例えられたりする。経験や知識がまだ浅いところが見受けられるものの、周囲が「自社の事業はこう」「こういう時はここに着目する」とポイントを教えれば、LLMはより適切な回答を返せるようになる。
コーディングにも当てはまる。AIはコーディングが大得意であり、質も日々向上している。一例としてはGitHub Copilotなどが挙げられるが、コード作成はかなり任せられるレベルと言えるだろう。「ただしAIが書いたコードをチェックするのは人間」と草薙氏は念を押す。
実際、職場の新人がAIで素早くコーディングできるのはいいが、シニアエンジニアが大量の不確実なコードをレビューする必要があり、ボトルネックになっているという話をよく聞く。人間が書こうがAIに書いてもらおうが、コードにはレビューが不可欠なので、何かいい解決策を見いだしたいところだ。
問題はコーディングだけではない。アプリケーション開発には、外部のSDKの組み込み、API経由での他サービスとの連携、インフラの選定、データストアの整備……など、ボトルネックになる箇所は枚挙にいとまがない。
こうした実情から草薙氏は「AIにコードを書かせるだけなら非常にスムーズだが、ソフトウェア開発のプロセス全体を改善していくことが必要だ」と話す。
あらためて従来型ワークフローのスムーズではないところを挙げてみよう。コードファーストのIDEでコードを編集すること。コードをGitHubのリポジトリにコミットし、そこから別の人がフォークしたり、READMEを閲覧して読み解いたりすること。初心者にはこうしたGitの使いこなしはそれなりに難しい。また手動によるライブラリやパッケージ管理、SDKの組み込みもある。特にプロジェクトの規模が大きくなればライブラリの依存関係は複雑になる。バージョン管理やSDKの組み込みも同様だ。
またアプリケーションロジックは事前定義したものしか動かせない。できないというよりは安定性を重視したら、それ以外は動かさないのが通常だ。そして、ローカルでビルドして、クラウドにデプロイする作業もある。最後に重要になるのが、成果物を他の人も使えるようにコード、API、ドキュメントを共有することだ。コードを書くことは簡単になっても、まだアプリケーション開発には複雑で労力がかかる作業が山積みになっている。
ビジュアルプログラミングで複雑さを抽象化「Postman Flows」
これまで述べてきたような従来の開発ワークフローの課題に対して、草薙氏は「もっとシンプルにしたい」と話す。Postmanが目指しているのは「AIによるコード開発支援を超えて、完全に統合された一体感のある(イマーシブな)体験」だ。これを実現するために、ビジュアルプログラミング(ローコード)とAIで、新規参入する開発者の障壁を取り除いていく。例えばAIプロンプト、API利用に加えて、データ変換の複雑さを抽象化したり、直感的なビジュアルフローでロジックを表現または実行したり、さらにデバッグ、反復、コラボレーションをスムーズかつ明確にしていくというアプローチで臨む。
そのための仕組みがPostman Flowsだ。Postmanの画面左端にある「Flows」メニューを選ぶことで利用できる。ビジュアルなキャンバスにロジックのブロックを配置することでアプリケーションのワークフローを表現していくので、ホワイトボードにアイデアを描くようにアプリケーションを構築できる。画面でデザインするだけではなく、その場で実行して結果を見ることもできる。
Postman Flowsのビジュアルプログラミングは背後の複雑さを抽象化し、アーキテクチャ、アプリケーション、ソリューションを総合的に組み合わせることができているのも大きな特徴だ。
最もシンプルな例が下図のフローだ。「Postmanは何ができますか?」という問いをClaudeに聞いて、その回答を表示するという流れになる。画面左端(ピンク)に入力するパラメーターがあり、中央(緑)の「Send Request」はAPI呼び出しのブロックである。これは、実際にはClaude(AI)にプロンプトを送信するAPIコールになっている。その応答は緑のブロックの右端から出て、一部を取り出した上でテキストとして表示している。
複雑な部分をカプセル化するために使うのがモジュールだ。フローをモジュラー型にすることで再利用を促進し、保守負担を軽減できて、関係者が理解を深めやすくなるというメリットがある。例えばインシデント対応でサポートチケットを処理するフローがあるとする(下図)。左端(緑)は顧客の問い合わせを取得し、中央(青)は問い合わせの分析処理フローをカプセル化したブロック「Analyze Customer Inquiry」で、右端(ピンク)は青の出力をSlackに送るというシンプルな流れにしている。
Postman Flowsは、「スナップショット」という軽量のバージョン管理システムを備えている。現状で動いているフローを壊さないように、変更をしたら別のバージョンとして保存しておくことができる。またスナップショットがキャプチャするのはコードだけではなく、パラメーターや入力値の組み合わせとなる「シナリオ」もキャプチャできる。シナリオは、テストやデバッグだけではなく、デモにも使える。アプリケーションのドキュメントを見てもらうよりも、百聞は一見にしかずで、シナリオを使ったフローの動きを見せたほうが分かりやすいかもしれない。
処理フローの設計だけではない。Postman Flowsはアプリケーションの実行や運用も統合したソリューションとなっている。フローをPostmanクラウド上にデプロイして、Postmanアプリでパフォーマンスを監視することも可能だ。フローがローカルでうまく動くことを確認できたら、「Deploy」ボタンを押すとクラウドにデプロイされ、そのフローにURLが割り当てられる。
このように、Postman Flowsは従来の開発ワークフローの複雑さを払拭したローコードビジュアルプログラミングプラットフォームとなっている。草薙氏は「開発者体験をもっとシンプルにすることが未来の鍵だと考えています」と話す。サンプルとして、Slackのスレッドに埋もれたバグ報告や問題を整理してJiraのチケットに落とし込む「Slack-to-Jira チケット作成エージェント」、インシデント対応の調整と文書化を支援する「インシデント管理エージェント」が紹介された。Postman Flowsを使いこなすヒントになりそうだ。
最後に草薙氏は「ぜひPostmanをダウンロードしてPostman Flowsテンプレートもお試しください。お試しは無料です。便利だなと思っていただけたら幸いです。無料のワークショップやAPI Nightといったイベントも開催しています」と呼びかけて講演を締めた。
Postmanコミュニティに参加しよう!
Postman connpassグループでは、Postman主催のイベント・オンラインワークショップ情報の配信と参加登録を受け付けています。また、Postman JapanコミュニティDiscordでは、プロダクト・イベント情報や、Q&A、ユーザー同士の交流が行われています。ぜひご参加ください。

