請求書自動化サービスで使われている技術ご紹介(第2回)

前号まででまとめて言えば、「AIを使うことでプログラムは誰にでも書けるようになった」という話をしてきました。
あなたも、書籍やネット記事などで目にすることが多いと思いますが、「プログラマは不要になる」という言説が飛び交っています。
IT業界では、同じ名詞でも会社によって意味が異なることがありますが、「プログラマ」という言葉については、概ね共通した理解があります。それは、
「処理の仕様(入出力および内部処理の内容)を聞く、あるいは仕様書を読み、それを所定のプログラミング言語で実装する人」という定義です。
私自身も、この意味での「プログラマ」という肩書を持つ人は、今後ほぼ必要なくなるだろうと考えています。
では、そうした人たちはどこへ行くのか。
それは、IT業界から別の業界へ移るか、あるいは特定の業務領域において、AI・IT・その業務知識を組み合わせ、その分野で専門性を高めていくか、そのどちらかしかないのではないかと感じています。
そして、もう一つ重要な変化があります。
これまで社内業務を担当しており、必ずしもITを専門としていなかった人が、「AIを使えば自分でもプログラムを作れる」という事実を知り、AIとITの組み合わせで業務改善に取り組むようになった場合、その人たちは一体何と呼ばれる存在になるのでしょうか。
AIに聞いてみたところ、「エンジニア寄りで、実際に作ることもでき、なおかつ顧客や現場の事情に即したものづくり(稼働条件、使い勝手、信頼性など)ができる人は、アーキテクトと呼べる」という回答でした。
そう考えると、今後は
〇〇・アーキテクト(〇〇はアプリケーションや業務領域の名称)
あるいは、そこにDXやAIといった言葉が組み合わさった肩書を持つ人たちが現れ、従来のシステムズエンジニアやプログラマに取って代わっていくのではないかと思います。
そして、実はここが少し分かりにくい点なのですが、特にITの分野では、AIによって「個人差」がこれまで以上に広がりやすくなると感じています。
自分自身がAIを使い始めてから約2年半を振り返ると、私がChatGPTに出会ったのは、一人で仕事を始めてからのことでした。決して多くの専門書を読んできたわけでもありませんが、今では、より変更を吸収しやすいシステム構造やデータ設計、単体プログラムの実行テストにとどまらず、数十本、場合によってはそれ以上のプログラムから成るシステム全体のテストまで、AIを活用した開発が確実に「進化」してきたと感じています。
これはひとえに、私が一人でシステム開発を行っているため、とにかく効率よく、かつ信頼性の高いシステムを作らなければならない、という必要性に駆られてきた結果です。
何が言いたいかというと、AIは個人の能力をより強く引き出してくれる存在だということです。
言い換えれば、工夫を重ねながらAIを使う人と、単にAIを使うだけの人とでは、同じ「エンジニア」であっても、そこから生み出されるアウトプットには大きな差が生まれます。
さらに、使う側もAIと一緒に作られた成果物を土台にして考えるようになるため、その差は、これまでとは比べものにならないほど広がっていくでしょう。
決定的に違うのは、「一人でカバーできる範囲が、今までとは比べものにならないほど広がる」という点です。
おそらく今ではあまり口にされなくなったと思いますが、かつてソフトウェアエンジニアリングの世界では、プログラム開発の生産性を
XXXステップ/人・月(XXXはたいてい3桁の数字)
といった尺度で表していました。これは、一人のプログラマが1か月に書けるプログラム行数を示すものです。
しかしAIが登場した今、人月や行数といった尺度で効率を測ることは、もはや難しいと感じています。なにしろ、プログラムは大量に書けてしまいますし、個人差も非常に大きくなるため、これらを単純に比較の尺度とすること自体が成り立たなくなってきています。
では、どのような尺度で生産性を考えればよいのか。
正直なところ、私自身も現時点では明確な答えを持っていません。というよりも、「プログラムを書くこと」そのものが、生産性を測る対象ではなくなっていくのだろうと考えています。
それよりも、業務が現行システムから新しい業務・新しい仕組みへと切り替わるまでの、トータルなシステム開発を、何らかの形で評価できる尺度が必要になってくるのではないでしょうか。
そして何より重要なのは、これまでとは比べものにならないほど少人数で、システムが開発できてしまう時代が、すでに始まっているということです。



