一人前エンジニア道場

AI時代のエンジニアリング / 約20分

チームの既存ルールと「選べない技術」への対応

なぜこれを学ぶか

実務では、技術は自分で選べません。jQueryのレガシーコード、社内独自フレームワーク、古いNodeのバージョン。「理想と違う」と向き合うのがプロの仕事です。

既存コードに飛び込んだら、まず そのコードが存在する理由を探る。歴史的経緯・過去の障害・顧客との契約…「意味不明なルール」には大抵、失われた文脈があります(チェスタートンの柵)。

チームのルール(命名規約・コミットメッセージ・ブランチ戦略)は まず従う。改善提案は「従って理解した後」に行います。秩序なくルールを変えると、レビューコストとバグが増えます。

レガシー技術への心構え: 「古い = 悪い」ではありません。10年動き続けているコードは 10年分のビジネスルールが埋め込まれた資産 です。書き換えは最後の手段です。

AIツールも「チームのルールに従わせる」設定が重要です。規約をプロンプトやRulesファイルに埋め込み、生成物がプロジェクトの文脈に合うようにします。

重要ポイント

  • 不可解なルールには失われた文脈がある(チェスタートンの柵)
  • ルールはまず従い、理解してから改善提案する
  • 10年動くコードは10年分のビジネス知識の資産

コードレビュー演習

以下はレガシーシステムに残る「意味不明に見えるコード」です。新人のあなたが最初に取るべき行動を選んでください。

// TODO: なぜか 0.9 を掛けている。消したい
function calcFee(amount) {
  return Math.floor(amount * 0.9)
}

この「0.9」を即座に削除してコミットしてはいけない理由として、最も適切なものは?

ヒントを見る

チェスタートンの柵: 「なぜそこにあるか分からないもの」を取り除く前に、まず「なぜ置かれたか」を調べます。この0.9に埋め込まれたビジネスルール(例: 特定顧客との契約上の10%割引)があるかもしれません。

スキルセルフチェック

このレッスンの内容をどの程度理解できましたか?