【IT業界】AIコーディングで激変した現場と、それでも今を楽しみたい私
今日は10年以上IT業界にいる私の、開発関連のお話です。業界外の方も、雰囲気程度に楽しんでいただければと思って書きました。
AIを使ったソフトウェア開発。
バイブコーディング(日本語にするとノリコーディングとか気ままコーディングなのかもしれません)が流行ってしばらく経ちます。
もしかして聞いたことがある方もいらっしゃるかもしれないですね。
「プログラマはAIによって不要になる」
私もプログラマの端くれとしてその波を感じています。
ただ、個人開発はバンバンAIを使いますが、業務だとそんなに自由な状況ではない現実もあります。
自社は緩いのですが、作るシステムは大手の下請け。機密保持契約を結んで業務に当たります。
それはAI事業者に対しても一緒です。
特に大きなお金が動く案件ほど「情報漏えい」には敏感なので、ちゃんとした機密保持契約が結べるAI事業者じゃないと利用自体が制限されることも多いです。
例えば、リリース前のソシャゲの開発をやっていて、AIに相談した結果、その開発コードやリリース情報が漏えいしてしまったら。
マーケティングプランがお釈迦になってしまいますよね。
実際に最近、Anthropic(Claude)はコードや開発中の新モデルの流出問題で話題になっていますが、これじゃ企業側が情報をコントロールできず、損害が生じてしまいます。
Anthropicがこのように情報を流出させてしまった背景は「ミス」とされています。
顧客情報ではなかったものの、機密を気にする企業にとって「ミス」で自社の大切な資産を流出させてしまう企業は信頼感が低く見えます。
Anthropicは10月頃にIPO(株式公開)を目指していたので、これはかなりマイナス材料でしたね。
でも特に最近になってミスが増えたというより、先日の国防総省とのトラブルで話題になってユーザーが増えた結果、話題性を狙ってクラックしようとする人が増えたという事情もあるのではないかと邪推しています。
いずれにせよ、なんとか立ち直って欲しいです。
AIで「コードを書く時間」が消えた現場
話を戻すと、私としても「コードを書く」時間がかなり短くなったことを意識しています。
というかほぼ「無くなった」レベル。
今の開発。
私の場合は、おおむねこんな流れで進んでいます。
・【人間】要件を相談
・【AI】実装方法や仕様を検討
・【人間】手直しして指示
・【AI】実際に開発
・【AI】コードレビュー
・【人間】コードレビュー
・【AI】フィードバックを受けて改修
・【AI】テスト
・【人間】テスト
・【AI】適用・反映
でも、場合によっては、もっとAIに任せている人もいそうです。
私がちょこちょこ間に入っているのは、よく言われるようにAIに任せすぎると「認知負債」が溜まっていくからです。
コードの意味や実装の意図が分からなくなっちゃうんですよね。
なんか製品はあるけど、いざ問題が起きた時に自分で直そうとしても触れない。
「このコードは、なんだ」
そんな思考の迷宮に入る時。
よくある映画で、時限爆弾の赤いコードと青いコードが目の前にあって、今まさにどちらかを切らないといけない状況になっている気分です。

「このコードは消していいのか?」の判断ができない。
思い切って消してみて動くことを祈るか?
チーム開発で他の人から突っ込まれた時、
「あ、でも……AIが書いたから私には意図が分かりません……」
こんなのプロフェッショナルじゃありません。
自分で書いたわけではなくとも、自分がコミットしたコードには責任を持つべきです。
それは無いようにしようね、というのがチームのお約束になっています。
もちろん、AIが開発する時にマメにメモを残すように指示すれば良いのですが、限界があります。
後からAIに「このコードの意図を説明せよ」と言ったって、推測はできますが当時の制約などは特別に指示しない限りは覚えていません。
原則として、自分で保守しているコードは自分が見て理解できる必要があります。
ミスは仕方ないです。人間だもの。
でも、
「なんとなく書きました」
これはエンジニアとしてありえない。
それはAIが開発に入り込む前から変わらないのかもしれません。
プログラマは完全に不要になったのか?
ですから、よく言われるように「プログラマが完全に不要」にはなっていないと考えます。
それでも、圧倒的にコードを書く時間が短くなったのは事実です。
以前は半日、数日かかるようなコードが、場合によってはものの30分で書けますからね。
同僚の話を聞くと、古いシステムはやっぱり「AIの使用」を許可していない場合も多いので、いまだに100%手書きだったりします。
変化の荒波から隔絶されたシェルターの中に避難しているようで、牧歌的な現実。
また、現状のAIは「出来の良い新人」くらいの能力があるため、もはや新人に頼む仕事というのは無くなりました。
新人教育……どうしよう。
AIにコードを書かせてそれを写経するとかになってくるのかな。
あるいはAIに新人を教育させるようにするのがいいのかな。
新人には、少なくともAIが書いたコードやその意図を理解できるくらいのコーディング力を身に着けてほしいのですが、そうなると「働きながら覚える(OJT)」というよりも、完全に学習に注力する時間が必要になってしまいます。
一方で、現場社員の教育コストをAIに押し付けられるならそっちの方がいいのでしょう。
諸々考えると、新人向けに、AIによる学習サポートシステムを作るのが良さそうです。
なかなか現場の受け入れは難しいところがありますが、やり方は必ずある、というのが現在の所感です。
そもそも「今後もプログラマが必要であり続けるのか?」については、上流工程ができるプログラマは当面は必要だが、下流をメインとするプログラマの需要は下がる一方。
とはいえ、完全にAI任せでコーディングするのはまだ危険。
この状況が今後「完全に人間がいらない」になるのか「結局伴走どまり」になるのかは不明です。日々改善はされています。
プログラマの美徳がAI開発を肯定する
私自身は、そうした状況を悲観的に考えている訳ではありません。
AIが登場する前から昔から私の後輩に対する口癖は「早く成長して私の仕事を奪ってくれ」であって、なんだか自分の仕事が無くなるのはむしろ歓迎です。
一人で頑張るんじゃなくて同じくらい仕事が出来る人に側にいてほしい。
コーディング自体もまぁ、好きな作業ではあったのですが、どちらかというと私にとっては「目的を達成するための手段」であってコーディングそのものを今も愛しているわけでもなく。
現在のように一瞬でコードが書けてしまうと一文字一文字手打ちしようという気力は失われるのが実感です。
先日AIシステムに障害が発生した時、「原始人のように自分で書くしかない」と開発業界からの声が聞かれたそうです。
確かにもはやAIをコーディングに使えないのは原始時代です。
それでAIが台頭した結果、実際に失業したり減給されたらどうするのか?
……という問題はあるのですが、そしたらそうなったときに考えればいいですしね。
別に無理して仕事しなくてもいい。今起きてもいないことを気にしても仕方ない気がします。
もちろん、コーディングが好きだった人からの嘆きの声はたまに目にするのですが、ソフトウェア業界から目立った「反AI」の声が聞かれないのは、「でも、便利だから」「でも、新しいから」にエンジニアが逆らえないからかもしれません。
プログラマは効率化を良しとするために、「怠惰である」ことが良き素養であると古くから言われます。
初めに言いだしたのはPerlを作ったラリー・ウォールさんらしいです。
(またラリーさん。IT長者にラリーさんが多すぎるのは気のせいですか?)
彼は、次のように語りました。
「怠惰」「短気」「傲慢」がプログラマの美徳である。
これって欠点のように思えますよね。
でも、「怠惰」であるが故に自分の仕事を楽にするためには手間暇を惜しまない。
努力によって短縮できる時間が10分だったとしても。
それが月に30回、30人の人が同じく取り組む作業だったとしたら、10分の効率化で150時間の効率化になります。
ならば10分の効率化に3日かけたとしてもそれは正義です。
短気であるが故にコンピューターやソフトウェアのちょっとした不備や瑕疵を許さず、しつこく改善します。
傲慢であるがゆえに自分のプログラム品質に誇りを持ち、誰に出しても恥ずかしくないコードを出すために努力します。
古い金科玉条ですが、私は自分の特性をこんな感じで受け入れており、直そうともしてません。
ホント、物は言いようですよね。プログラマで良かった。
そんな文化が影響しているのでしょうか。
クリエイター業界と比べるとなんだかAIの受け止め方が全然違いますね。
プログラマにとってはAIも「便利なツールの一種」で、捉え方の土台が違うのかもしれません。
皆さんのコーディングも、AIで変わりましたか?
(フォロワーさんに何人コーダーがいるかは不明ですが)
未来がどうなっていくのかは分かりませんが、まだ開発に携われる間に、楽しもうと思います。
▶そんな「怠惰さ」も受け入れる素敵な企画を準備中です✨
いいなと思ったら応援しよう!
最後までお読みいただき、ありがとうございます!
「役に立った」「読んでよかったな」と思っていただけたら、無理がない範囲で応援いただけると嬉しいです。
いつも、皆様のあたたかいお気持ちで活動できています😊