以下の内容はhttps://serihiro.hatenablog.com/entry/2025/07/04/161001より取得しました。


AIではない生きた人間としてどうソフトウェア開発に関わっていくか2025

仰々しいタイトルをつけてしまったからにはそれに見合う文章を書かねばなるまい.なおこの文章はすべて人力で作成しており一切AIの手を借りていない.

自分の立ち位置

ソフトウェアエンジニアとしてのキャリアを数えると今年で12年になるらしい*1.12年ってすごい.生まれた子どもが小学校6年生になってしまう.そりゃ甥も姪も大きくなるわけであり,自分も歳を取り衰える訳である*2

ソフトウェアエンジニアを取り巻く現状

2025年7月現在,多くのソフトウェアエンジニアがキャリアについて改めて考えさせられていると思う.Vibe coding*3は間違いなくソフトウェアエンジニアの仕事を奪いつつある.すでに多くの人達が日々「驚いて」いるように,devin, cline, claude code, gemini cliといったAIコーディングツールが人間を凌駕するスピードでコードを書き始めた.GitHub copilotが登場した時は「よくできたコード補完」という程度で,プログラミングにおける補助ツールに過ぎなかった.しかし,今やAIコーディングツールが主役に成り代わっている.自分も職場でdevin, cline, claude codeを使い,プライベートではcodexも使っているが,使い始めてすぐエディタと同等のプログラミングにおける必須品になった*4

実際に自分でゼロからコードを書く機会は大幅に減少した.まずAIにドラフトを書かせてその後人間がリファクタリングする,もしくは人間が書いたコードに対してAIがテストを書く.そんな仕事の仕方が基本になった.論文や長いドキュメントはまずNotebookLMに入力して要約させ*5,その上で自然言語で知りたい情報だけを質問する.OSSのコードは自分でいきなりコードを読まずにdeepwikiで概観を把握してから深堀りする.そんな感じで,ありとあらゆるタスクにとりかかる時は「まずAIに頼む」ようになった.自分がキャリア駆け出しの頃,自分のタスクすべてをメンターである先輩経由で受取り,すべてのアウトプットをその先輩にレビューしてもらうスタイルで仕事をしていた時期があった.その頃の自分が今のAIのような立ち位置だなと感じている.このような様を見れば「もう人間はいらない」と思う人が出ても不思議ではない.メディアのこういった体験談が書かれた記事を読んだ偉い人が「もうソフトウェアエンジニアはいらないので採用計画を見直すために今募集しているポジションを全てcloseしよう」と主張し始めても仕方がないと思う.

大Vibe coding時代における生きた人間の価値

一方で,これまた多くの人が指摘するように,AIによるVibe codingも当然完璧ではなく,多くのミスを平気で行う.厄介なのはミスをうまく隠蔽することが多い点である.例えばclaude codeで,「修正後は必ずテストが全て成功することを確認する」というルールを~/.claude/CLAUDE.mdに追加していたら変な修正で無理やりテストを通したり,テストが通るのをいいことに本来の要件とは異なる修正をしたりと,割とカジュアルに変なことをしてしまう*6.プログラミングだけはできるが,既存のコードから設計意図を汲み取ってその方針を守る,みたいなことが死ぬほど苦手らしい.planningフェーズを挟んでも同じミスを繰り返すのでこのあたりがclaude codeの限界のようにも見える*7.なので,まだまだこの辺の分野は人間の方が有利であり,人間のソフトウェアエンジニアが必要な理由であると主張できそうである.ただAI関連の技術は日進月歩であり,1年経ったらどうなるか分からない.設計意図を正しく汲み取れるモデルやリファクタリングだけが異常に得意なモデルが出てきても不思議ではない.

この先生きのこるには2025

では今後どのように生き残っていけばいいのか,という話になるが,一つの方針としてはAIに奪われない知見をコードにフィードバックできる立場であり続けるしかないような気がする.要するに,実運用で実際に起きたincidentの知見,一つのGitHub repository上のコードベースだけでは分からない連携しているmicro serviceや連携している外部サービスの事情,インフラ側のクラウドベンダーの事情,ソフトウェア開発のベストプラクティスには反するがビジネス要件上そうせざるを得ない「歪んだ」設計,といった人間だけが知っていることをAIにフィードバックし続ける作業は,今のところ人間にしかできない.現存する商用LLMのcontext lengthはソフトウェア開発タスクにおいては割とすぐに使い切ってしまえる長さで,かつ長期記憶を効率よく保存したり参照する手段がないと感じているため*8,このあたりではまだ人間の方が有利なのではないかと考えている.最終的にAIと会話し続けるのはソフトウェアエンジニアであり続ける以上,こういった知見を直接AIにフィードバックしたり,AIの成果物をチェックするのは人間しかできない仕事だと思っている.いわゆる「シニア」や「スタッフ」レベルのソフトウェアエンジニアにしかできないフィードバックをAIに与え続けるのが当面の人間が発揮すべき価値になるのではないだろうか.

もちろんこういったフィードバックをするには人間の側にもインプットが大量に必要であり,AIと会話している時間以外はチーム内外の他のメンバーと積極的にコミュニケーションを取り意思決定をリードする仕事はこれまで以上に重要になる.また,コンピュータサイエンスやソフトウェアエンジニアリングの世界の新しい知見もキャッチアップして開発に反映させていく作業が必要なのはこれまで通りなのでこちらもサボる訳にもいかない.なんかAIのお陰で仕事がラクになるどころかより難しいレイヤの仕事の割合ばかりが増えているような気がするが,people managementを業務に含めないIC (indivisual contributor)としてのソフトウェアエンジニアとして価値を発揮していくには,どうしてもこういった人間にしかできない仕事での価値を発揮していくしかないと思う.

これを面白い仕事と思うかつまらないと思うかは人それぞれだが,自分自身は,歳を取ってアラフォー真っ盛りになったこともあってか,自分で手を動かすよりも,自分の知見や考えをチームに伝えて全員の生産性や品質を高めていくようなバフをかける立場の方が合っていると感じ初めている*9.次の10年をICのソフトウェアエンジニアとして生き残るにはいかにチームにバフを効率よくかけられるかが大事になってくると考えている.もちろんpeople managementにシフトするのも一つの手ではあるが,自分自身の性格としてソフトウェア開発の現場にいてpeople managementに専念できる訳がないので,自分が出す価値がAIのそれを上回ることができなくなるまではまだICとしてもがいてみたいと思う.

おわりに

この文章はここ半年でソフトウェア開発の現場で起きた変化と,その上で考えたことをまとめてみた.来年もまた今ぐらいの時期に似たような振り返りをしてみたいと思う.

*1:最初の2年半はシステムエンジニアという肩書だったので除外している

*2:登山とトレランとマラソンを始めたら体力だけは逆に20代の頃を超えて逆転してしまったが

*3:このエントリ内ではAIが介入するプログラミング作業全般を指す

*4:逆にエディタそのものの価値が今後下がっていく気すらしている

*5:最近はプライベートでもyoutubeの長いインタビュー動画やニュース動画はいきなり観ないでNotebookLMに要約させてから視聴するかどうか決めるようになった.収益化している側からしたらいい迷惑だろうけど50分ものインタビュー動画を観続けて欲しい情報を探すのは人間にはしんどい.

*6:一方で,過去に人間でもそういうことをしているケースを見たことが何度もあるのであまりAIだけを怒るに怒れない気持ちにもなる

*7:なおSonnetしか使っていないのでOpusを使った場合はまた結果が異なる可能性はある

*8:もちろん外部知識を参照する機能があるのは把握しているが,それでも人間の知見要約能力や参照能力の方がまだ高いのではないかということを主張している

*9:とかなんとか言いつつプログラミング自体も大好きなので全く手を動かさなくなることは絶対にないと信じているが




以上の内容はhttps://serihiro.hatenablog.com/entry/2025/07/04/161001より取得しました。
このページはhttp://font.textar.tv/のウェブフォントを使用してます

不具合報告/要望等はこちらへお願いします。
モバイルやる夫Viewer Ver0.14