ソフトウェアエンジニアリングの基礎 ―コーダーからエンジニアになるための実践ガイドを読んだ。
Nathaniel SchuttaとDan Vegaによる『Fundamentals of Software Engineering』の邦訳。プログラムを書けることと、ソフトウェアエンジニアとして仕事ができることの間にある距離を埋めるための一冊で、学校やブートキャンプでは教わらない実務の基礎を幅広く扱っている。
テーマは、コードを読む・書く、モデリング、自動テスト、初めて触れるシステムの調査と変更、UI設計、データの取り扱い、アーキテクチャ、本番環境へのデプロイと監視と多岐にわたる。そこから生産性の上げ方、学び方、ソフトスキル、キャリアマネジメント、AIとの付き合い方まで話が広がり、エンジニアの仕事の全体像を一冊で見渡せる構成になっている。
「コードを読む」の章が「コードを書く」より先に置かれているのが、既存コードの保守が仕事の大半を占める現場の実態をよく表している。各章が「実践に移す」と「関連リソース」で締めくくられているのも良い。扱う範囲が広いぶん、各章は深掘りよりも全体像と次の一歩を示すことに重きがあり、次に何を学ぶかの道しるべとして機能する。
これから現場に出る人はもちろん、ある程度経験を積んだ人が自分の基礎を棚卸しするのにも使える一冊。