エンジニアとしての自分の根っこにあるマインドについて書きます。正解がある話ではなく、ずっと自分が大事にしてきた考え方のメモです。
エンジニアの性分は、楽をするためにどうするか考えること
エンジニアの性分は、楽をするためにどうするか考えることだ、と自分は思っています。
自分のエンジニアとしてのマインドも、常に「楽をするためにどうすればよいか?」を考えることです。面倒な作業を減らす。繰り返しを仕組みに任せる。判断に集中できる状態を作る。そういう発想で、これまで仕事をしてきました。
Record & Replay の話やCursor Automations の話のように、最近このブログで書いている自動化の話も、根っこは同じです。新しいツールが出てきたら「これで何が楽になるか」を考える。楽になる部分を委譲する。残った判断に時間を使う。
現状維持で満足したくない
ただ、楽をする、と言っても、現状維持で満足したいわけではない、という気持ちもあります。
いまのやり方がうまく回っているから、そのままでいい、と思える場面はある。それでも、環境は変わり続けている。ツールも、期待される役割も、チームの動き方も。止まったままだと、楽をするための手段そのものが古くなる。
エンジニアの今後で書いたように、「書く」仕事は生産ライン側へ移りつつある。楽をするための手段も、AI時代は大きく変わる。
昨日までの効率化が、明日も最適とは限らない。
AIに任せるのは、委譲すること
ここで、よく聞く意見と自分の考え方がずれる部分があります。
「AIを使っても思うような出力結果にならないから、自分で書いたほうが早い」。そう感じる人は多いと思います。個人としては違うかな、と思っています。なぜなら、思うように出力結果を得るためにどうすればよいかを考えるのがエンジニアの仕事(Howを考える)だからです。
最初は、誰しも失敗してうまくいかない。AIに思うような出力が得られないのは、初めてコードを書くときと同じだと思っています。最初から期待通りの結果が出るわけがない。どうすれば思うような出力結果や、納得のいく出力結果になるのかを工夫して改善する。それだけではないだろうか、と自分は考えています。
AIに任せるのは、委譲することです。思う通りに出るまで指示を直す。うまく委譲できないなら、それは指示の仕方が悪いか、任せ方がまだ未熟なだけ、と捉えています。
次の時代のAIエンジニア像で書いた「運転する」話、職種の境界がなくなるで書いた「AIをコントロールする」話ともつながります。車を自分で組み立てるのではなく、渡された車を目的地まで届ける。書く時間を減らして、コントロールに時間を移す。それ自体が、楽をするための考え方の延長です。
自分の拘りは、断捨離していく
もう一つ、自分が意識しているのは、自分のコードへの拘りです。
自分が見ているコードの好みは、世間一般的ではないことが多い。インデントの付け方、命名の癖、ディレクトリ構成へのこだわり。こういうものは、チームやプロダクトの文脈では、むしろ妥協してよい、どうでもよいことだろう、と思っています。
自分の拘りは、守り続けるより断捨離していくべきだ、と感じています。環境が変われば、最適な書き方も変わる。モダンな環境にいると、「いままでそうだったが、これからは違う」という修正が当たり前になる。
経験から学び、修正していく。変わらないDXのままだと、進化も学習も止まる。学習しなければ、いずれ捨てられるだけです。海外にいたら、速攻でレイオフ、という話も現実味があります。常に上昇する気持ちがなければならない、と思っているエンジニアなら、特にそうです。
エンジニアが楽をすることを飽きられたら、進化は止まる
エンジニアが楽をすることを飽きられたら、進化は止まる、というのが自分の結論に近いです。
楽をする、と言うと怠けているように聞こえることもある。でも、エンジニアリングの歴史を振り返ると、コンパイラ、フレームワーク、CI、クラウド、AI。どれも「人間が毎回手でやっていたことを、仕組みに任せる」方向に進んできた。
- 手作業を減らす
- 繰り返しを自動化する
- 判断に集中できる状態を作る
- 新しい手段が出たら、古いやり方を手放す
これらは、怠けではなく、進化の燃料だと思っています。楽をするために考え続けるエンジニアがいなくなったら、改善も自動化も、新しいやり方への更新も止まる。
意思決定の重要性で書いたように、AI時代は決める回数が増えた。書く時間が減った分、何を委譲し、何を自分で見るか、という判断に時間が移る。楽をするための仕組みを増やしたからこそ、本当に人間が向き合うべき判断に集中できる。
まとめ
- エンジニアの性分は、楽をするためにどうするか考えること
- 現状維持で満足せず、手段は常にアップデートしていく。昨日までの効率化が、明日も最適とは限らない。
- AIに任せるのは委譲。Howを考える仕事。最初からうまくいかなくて当然
- 自分のコードへの拘りは、断捨離していく。環境に合わせて修正する
- 変わらないDXのままだと学習も進化も止まる。上昇する気持ちが必要
- エンジニアが楽をすることを飽きられたら、進化は止まる
エンジニアとしてのマインドセットは、楽をするためにいま苦労する。そしてまた楽をするために苦労する。このサイクルを繰り返しているのが現状です。
ただ、昔に比べるとツールの進化やAIの発達で、より楽をする速度は上がっていると感じています。