エンジニアリングの複雑性:含意された複雑性 vs. 誘発され... ノート

エンジニアリングの複雑性:含意された複雑性 vs. 誘発された複雑性

優れたエンジニアは、単に動作するコードを書くだけではありません。彼らは、システムがなぜ変更しにくくなるのか、なぜ一部のシステムが時間の経過とともにチームのスピードを低下させるのか、そしてコストが高くなりすぎる前にどのように対応すべきかを理解しています。ソフトウェア製品、プラットフォーム、エンジニアリング組織がスケールするにつれて、複雑さは蓄積していきます。その複雑さの一部は、私たちが解決しようとしている問題に固有のものです。一部は、私たちのアーキテクチャや実装の選択によって導入されます。一部は、その場では合理的であったものの、長期的にはコストのかかるショートカットの結果として生じます。