6日目になります。
Web(?)エンジニアとして6年目。
現在は、snaq.meで物流やオフィスなど色々やってます。
今回、年下のメンバーが「設計や技術をつけたい!」ということで、色々した中で特にレビューの中で意識したことをつらつらと書いていきます。
⚠️
クソ真面目に11月に書いた記事になります。
そのため、公開時には情勢も変わり、古くなっているかもしれません。
概略
生成AI全盛になって成長の軸は書くから読むに変わった。
何より、PRが量産できるようになった中でコードレビューを受ける頻度が急増している。
改めてエンジニアの地力とはなんなのか、
コードレビューを通してどのような経験を与えるかを再考した記事となっています。
「自分で」コード書いてますか?
僕はほぼ書いてません。
DevinやCline、Claude CodeにKiroなどさまざまな生成AIに指示を出すのが中心になっています。
これは僕だけではなく、弊社全体でそういった動きになっています。
そんな中で冒頭の話を受け「そもそも若い人はどうやって学習しているんだろう?できなくね?」というもやもやがありました。
そのもやもやを綺麗に言語化された記事がこちら。
この記事の中で特に印象に残ったのが、以下の非対称性です。
第二の非対称性:生産量と成長の乖離
問題の本質はさらに深いところにある。生産量とエンジニアとしての地力の成長の非対称性—これこそが、長期的に見て最も深刻な問題だ。
AIを使えば、経験1年目のエンジニアでも、大量のコードを生産できる。PRの数も増え、機能の実装スピードも上がる。しかし半年後、1年後、その人のエンジニアとしての地力はどうなっているだろうか?
エンジニアとしての地力とは何か
僕はざっくり「転職しても今までと同様の能力が発揮できる力」と捉え、以下のように考えています。
「その会社でのみ適用できる技術」ではなく、「汎用的に適用できる技術」
「その会社に特化した具体的な思考力」ではなく、「抽象的に考え、具体に落とし込む思考力」これらの左記に価値があることを認めながらも、右記の事柄により価値をおく。
ちなみに上記のブログでは
問題を自分で分析し、設計を考え、トレードオフを検討するプロセス
と定義されています。
これら以外にもキャリア形成の話もあると思いますが、それらに興味がある方はSOFT SKILLSをぜひ。
地力をどのように高めるか
生成AIで変わったところとして、最低限の言葉を知っていれば実装できるようになったというのが所感です。
そのため、生成AIで生産量を高めたつつ、レビューで汎用的な知識を渡して身につけてもらうことを意識しています。
また、なんやかんやまだまだ本を読むのも重要です。
上述したように「言葉を知っていればいい」と言う状況になっています。
そのため、本で言葉や使い所を吸収することはまだまだ大きな意味があります。
レビューで心がけていること
-
手法の名前を教える
- ガード節やDIなど、実装や設計には名前があり、名前を知っていることの重要度があがった
- 実装方法より、使い所・欠点を知ることの方が更に重要になった
-
過剰に防御的なプログラミング
- AIのコードはなぜか過剰にエラーハンドリングを書きます
- 予防に優る防御なし by t-wadaの「防御的プログラミングへの誤解」のようなコードが結構作られる
- そのようなエラーハンドリングを書かなくても安全な実装があることを教える
- AIのコードはなぜか過剰にエラーハンドリングを書きます
-
ドメインと一致しない部分・匂う部分
- 生成AIは複雑な専門領域には弱い。エッジケースや現実に即さない実装をすることが多い印象
- 今後のビジネスの動き的に、ロジックを分けたい・またはインターフェースにしたいところはまだ感覚が優位
- これは地力と言うより「自分が指示を出す立場になったら」という点での成長要素
(最近は詳細駆動開発などもあり、変わりそう)
どう成長したか
- コードの可読性が上がった
- メソッドの分け方が上手くなった
- 共通化を気にするようになった
- その場しのぎ的なコーディングがなくなった
- 「将来こうなりそうだから・こうしたいから」という文脈で実装を選べるようになった
最後に
1年経たないくらいで、僕の3年分くらい成長してて震える
AIを使うことで学習コストが減り、今までは超えられなかった高い壁を容易に超えられるようになったことで「経験できる幅」が非常に増えたと感じています。
その増えた経験を、どこまで抽象化して地力に昇華できるのかが鍵になると感じています。
広告
「おやつと、世界を面白く。」このモットーのもと、スナックミーは常に新しい挑戦を続けています。面白い世界を共に創造しませんか?
私たちは新たな仲間を募集しています。興味のある方は、以下のリンクから詳細をご覧ください。
また、オフィスでの置き菓子のサービスも展開しています。
お菓子の人気から会社ごとのお菓子が、無くなりそうなタイミングで納品されます。
「コンビニから遠いんだよなー」「一々ビルの1階までいくの面倒なんだよなー」という方は、以下のリンクから詳細をご覧ください。