AIのプログラム開発現場進出について
先に述べておきたいのだが、この記事はAIの開発現場で使えるテクニックとか、
プログラムのコードについてなどの技術的な話は一切しない。
プログラム開発に携わっている私が開発現場に入って来たAIについて感じたことを語るだけの記事となっていることをご容赦頂きたい。
さて恥ずかしながら私はプログラマーとして開発現場に携わっておりながら、
AIによる開発サポートにこれまで全く触れることがなかった。
まぁ今いる開発現場は過去にリリースされたプログラムの保守拡張がメインであって、
あまり最新技術を取り入れてどうのこうのする現場ではないことや、
私自身が定年がチラつく年齢となってきていて新しい技術に興味が薄いということもあった。
ただ昨今の人手不足はIT業界も直撃しており、毎年入ってくる新卒は減り続け、
中途採用市場も枯渇している上に、毎月のように誰かが退職していくため即戦力が減り続けているのが現状だ。
売り上げ・利益を上げるために仕事を取り続ける営業、
今年採用したばかりの新人でベテランが抜けた穴を埋めろと宣う会社、
リソース不足が一生解決しないままスカスカの生産を続ける現場。。
当然プロジェクトが完遂されることは夢物語で、ガワだけ作って客には終わってるように見せつつ、
納品した直後からアップデート作業が始まることになる。
当たり前のように精度は落ちるし、建前上プロジェクトは終わっていることになっているので
この作業が利益を生むことがない上に次の案件がねじ込まれるもそちらは後回しになり、
さらに未来の作業を圧迫する悪循環。
もはやIT業界は人手不足からくる自転車操業という悪しきサイクルで回っており、
活況に見えて中小企業はジリ貧のような運営を続けているのだ。
そんな中、最近になって会社側がライセンスを負担していくつかのAIツールを試していこうという流れになった。
要は人員を雇うにしても市場に技術者が余っておらず、また新卒もすぐに仕事がこなせるわけじゃない。
それをAIの力で何とかできないかというアプローチだ。
そもそもプログラム補助のAI関連は何年か前から出始めてきており、AIエンジンの最新はGPT5となっていて、
メジャーバージョンを世代で言えば5世代目ということになる。
そう考えればIT企業としてはAIに食いつくのがかなり遅い方だったと言えるだろう。
こういった事情もあって、私もつい最近になってAIに触れることになった。
触れる前の私の印象としては、AIと言っても人にとって代われるほどの能力は「まだ」無い物だと思っていた。
当然将来的には徐々に進出してくることはぼんやりとは想像していたし、
無論今でも補助的なことは出来るだろうが、そもそも日本語は世界でも有数の難しい言語だ。
海外産のAI技術がどこまでカバーできるものなのだろうかと懐疑的だった。
例えば以前、オフショアで海外のプログラマーに投げる設計書を日本語で起こして、
その現地の翻訳者が現地の言語に翻訳していたのだが、日本語のニュアンスが上手く伝わらず、
とんでもない成果物が上がってきたことがあった。
日本語で表現できる言葉が複数あったとしても英語では同じ単語というのは良くあることだ。
はっきりと物事を伝える英語圏の文化と、やんわりとぼやかすことが多い日本文化の違いもあるだろう。
それゆえにAIへ指示を出すとしても何度も何度もやり直しや人間がチェックする必要があるだろうと思っていた。
今回会社が導入したのは「Cursor(カーソル)」というAIツールだ。
ChatGPTのような会話や調べ物をするAIではなく、プログラムなどのコーディングに特化したAIツールである。
ライセンスごとに利用制限はあるが、C#やPythonなどの言語でプログラムを作成したり、解析したりすることに利用できる。
チャット形式で指示を出すと指示に沿った対応をCursorが行ってくれるといった感じだ。
早速使ってみたのだが、一番驚いたのはAIの理解力だ。
日本語でかなり曖昧な指示をしたとしても、Cursor側で前後の文章などから意図を組んで、
それなりのものを仕上げてくれるのだ。
要は1から10まで伝えなくても、こういう指示ならこうした方がいいだろうを自分で判断して対応し、
その精度が圧倒的に高かった。
そもそも元が英語圏のサービスにも関わらず、日本語の細かいニュアンスの違いを理解できていることが驚愕だった。
IT開発現場あるあるなのだが、設計書に書かれていないことでも「行間を読め」みたいな理不尽なことを言われることがよくある。
実装者が設計者の意図を汲めという理不尽な日本的要求だw
しかしこのCursorはその「行間が読めている」のだ。
例えば「五目並べゲームを作れる?」と書き込んだだけで、
・五目並べのルールをネットから拾ってきて理解し、
・碁盤のマス目などの標準的な仕様を構築し、
・挙句の果てにはUIなどの画面を全て作り上げ
・最後には仕様の設計書も起こして
しまったのだ。
たった1行の依頼から、UI付きで実際に交互に碁石を置いて勝負できる五目並べゲームが作成されてしまった。
指示から作成までわずか数分の出来事である。
同じものを私が1からプログラムしようとすればネットから材料をかき集めてこれる前提だとしても数時間から1日必要になるだろうし、
1から仕組みを考えて設計するところからとなるともっと掛かると思う。
そもそも碁盤が何マス×何マスかも知らないし、ルールをプログラム化(盤面に白黒それぞれいくつ碁石が置かれているとか、
縦横斜めに5つ揃っているかのチェック処理などなど)することや、UI作るためのCSSの準備などを考えても簡単なことではない。
正直現代のアジャイル開発が主流となっている開発現場では、
まともな仕様や設計を書ける技術者は減ってきている。
昔ながらの技術者である私には忸怩たる思いもあるのが実情ではあるが、
納期短縮・工数圧縮の一途を辿る日常では致し方ない部分もある。
そういった切り詰められた現場では、技術者は即戦力しか対応できず、
若者をじっくり育成出来る土壌がないのも事実だ。
そうした開発現場でCursorが見せたパフォーマンスは圧巻だった。
正直、月40,50万でも役に立たない無能な派遣社員が山ほどいる業界にして比較にならない優秀さだ。
私は定年までは何とかAIに仕事を食われないだろうと高を括っていたが、
もう私の仕事の半分はCursorが担える可能性を持っている。
実際に先日、過去のソースがビルド出来ないという社員からの問い合わせに対して、
私が過去の経験から対応したのと並行していたCursorも私と同じ答えに私よりもずっと早く到達していた。
つまりこの手の仕事はもう私がやる必要がないということになる。
無論、大規模で複雑にサービスが複数絡むようなプロジェクトなどはまだCursorに任せるのは難しいだろう。
だが恐らく数年でそれらはAIが担えるようになると感じた。
一時期大量に湧いたIT技術者のほとんどはもう必要とされなくなっていくように感じたのだ。
よくよく考えればプログラムなんて、仕様が分かれば答えを出すのは簡単だ。
数年前AIの進出が問題視されたデザイン業界に比べれば圧倒的にAIが育ちやすい土壌だと言える。
デザインや絵には答えがないし、ゴールが曖昧なことが多い。
例えば「人物の絵」と指示したとしてこれには無数の答えがあるだろうし描き方の手法も千差万別だろう。
そして誰かの絵に似てしまえば著作権の問題になることもある。
だがプログラムのコードはオープンソースであることが多いし、
そもそも一般的な処理をさせるソースコードは誰もがやっていることで著作権の問題にすらならない。
実際にCursorで作成したコードの著作権は、指示した人に帰属することになっている。
そういった意味ではIT業界はAIが最も得意としている業界ということになるだろう。
そして何より素晴らしいと感じたのは、Cursorに代表されるAIは口答えをしないw
文句も言わずに人の指示に素直に従ってくれるのだ。
これが私のような人間相手だったらどうだろうか。
なんでそんなことをしなきゃいけないのかだの、スケジュールが厳しいだの、
そこまで言うならおまえがやってみろだの文句を言ったことだろうw
そんな口うるさい月うん十万掛かるおっさんよりも優秀で素直で従順な月20$の奴がいれば誰でもそいつと仕事したいと思うだろう。
もう数年後にはIT業界の人員不足は解消しているかもしれないし、その代わり大量の技術者が職を失うかもしれない。
そう感じるだけの可能性がAIにはあった。
コメント
コメントを投稿