生成AI時代にハッカーとして生き残るには

タイトルは今の自分の悩みであってこの記事を読んでも特に解決はしません。

ハッカーあるいはエンジニアとは

ここでいうエンジニアはソフトウェアを開発したりデリバリーしたりするためにエンジニアリングを行う職業で、今の自分の職業でもある。
ハッカーがなんなのかはよくわかっていない。ただ自分がソフトウェアエンジニアになるきっかけになった憧れのようなものを想像している。
欲しいものがなければ自分で作るし、痒い所に手が届かないものがあれば手が届くようにする。成果を公開すれば誰かがそれを使ってくれるかもしれないし、物好きな人がそれを改造してくれるかもしれない。
好きでやっているので「技術の無駄遣い」と言われるようなこともしたりする。そしてそれを楽しそうに話す。
ビジネスとマッチすれば好きなことをしながらそこそこお金ももらえるらしい。社会貢献できる機会も増えてきた。そんな存在。

Web業界のソフトウェアエンジニアとして働き始めて9年ちょっとが経過した。
書かれているプログラムの大半は英数字と記号の羅列からなる無機質なもので、当初はソフトウェアエンジニアは淡々と無機質なものを生成する職業だと思っていた。
実際に働いてみるとそんなことはなく、機械より人間と対話する時間の方が長いし、特に特定のプロダクトに関わる時間が多ければそのコードに対して生き物とはまた違った何かを育てているような愛着を持つ。
全く理由もなくコードを書くことはまれで、関わる人々の何かしらの意思があり、それを実現するためにコードに落とし込んでいるので当然といえは当然である。
世の中で動いているコードは無機質な見た目に反して泥臭いものの集合体なんだなという実感が得られたのが最近である。

人間の介在価値とは

2023年は生成AIブーム(?)もあって街を歩いていてもAIの話題を耳にする機会が増えた。
生成AIで業務の生産性を向上させようという話が世の中では本格化しそうだが、実のところ嬉しいよりも不安の方が大きい。

会社を経営する立場からすると仕事に再現性があれば安定して成果が生産できるし、もっと言えばAIに置き換えやすくなるので嬉しいのでしょう。
雇われる側の立場としては再現性があることがわかった/再現できるようにした時点から当初の仕事の価値は減り始めているので、「生産性向上バンザイ!🙌」と喜んでいる場合ではない。
その代わりに何かできることが増えていないと給料を維持するのも難しくなってきそうだ。だからリスキリングが流行り始めたのだろう。

今更AIを頭ごなしに規制すべきだとも思わないし、積極的に取り入れて個人の能力拡張に生かしていくべきだとは思う。
仮にAIに頼らずに何かを作り上げたとしても、AIが生成するものと似通っていれば相対的に価値が下がってしまう(むしろAIの価値が上がったりする)し、自分にとってはオリジナリティがある行動だったものが実はそうでもないことがAIによって勝手に証明されてしまうところに危機感を感じている。

自分や自分たちの力で成し遂げたと思っていること、誇りに思っていること、アイデンティティだと思っていることを機械に否定されるような気がしてつらい。
今まではわざわざ他人の小さなことを逐一否定してまわるような暇な人はいなかったために各人のアイデンティティは守られていた気がするが、個人とAIの距離が縮まったことでそこがスケールしてしまった感がある。

強制的に自分が行なっていることの価値を考えさせられる世の中になって努力したり成長したりするきっかけが増えた反面、常にそれを突き付けられる世の中になってしまったように感じている。

逃げのAI活用

単に自分が想像できないことを「AIを活用すれば〜」という言葉で置き換えるのは逃げだとも感じるようになってきた。

少なくとも現時点では知らないこと、理解できないことを全てAIに任せておけば勝手に解決しておいてくれるわけではないし、逃げるとむしろうまく活用するチャンスを失ってしまう気がする。
何かをしたいという意思は必ず人間から生まれてくるものであるから、そこにどうAIを組み込んで、どんな出力が得られるように仕上げるかは人間が決めなければいけない。AIを活用しても人間の意図は最後まで途切れないはず。
あえてよくわからない状態を生み出すことを楽しむ方法もあるかもしれないが、多くはそうではないだろう。

対話型の生成AIは誰でも使いやすく、組み込みやすいインターフェースを持つことから急速にいろんなサービスに組み込まれていく一方で、 人間がわざわざプログラミング言語というものを発明して自然言語の曖昧さをなくした厳密な定義を作ったのに、自然言語をコンピュータ(AI)に解釈させて非決定的な結果を頑張ってチューニングするような使い方に関してはなんとも言い難い違和感がある。
でもAIが生成したコードを人間がレビューして修正しつつ採用するスタイルは慣れてきた。人間の意図や思考を論理的に整理した結果生成されるものがコードだとすれば、思考の整理のための補助としてのAIなのだろうと考えると受け入れやすい気もする。この違いは何だろう。このあたりに生成AIをうまく活用していく切り口がある気がしている。

この先生きのこるには

自分が介在する価値を高めるために、自分がが介在しなくてもいいものをエンジニアリングで増やしていこうという気持ちが以前より強くなってきた。
AIによる人間のタスクの置き換えは自然な流れであるから乗らない手はないし、それはそれとして自分の能力がAIで拡張されるのは嬉しいので、AIの活用は増やしていきたい。

職業エンジニアとしてお金を稼いでいくこともそうだが、ハッカーへの漠然とした憧れがあるので、その楽しみがAIに置き換えられることは阻止したい。
そのためにやるべきことはなんなのか、自分らしい仕事とはなんなのか悩んでいる。
生きのこる方法について悩むのは現役世代しかいないと思うので、自分で考えていくしかない。将来の人たちにとっては憧れる対象がなくなれば憧れることもないので。

この記事はVSCodeでGitHub Copilotを使いながら書いたので何割かはAIの出力がまざっていて、自分の考えもすでにAIに引っ張られている気がする。
暗い話ばかり書いたが特に落ち込んでるわけでもなくて、好奇心さえ失わなければいろんなことが達成できるはずだし、楽しい仕事もなくならないだろうと楽観的に考えてはいる。

さいごに

個人的な答えは見つかっていませんが、AIの回答を置いておきます。

ChatGPTからの回答