Noriyo Akita's Today I Learned

# 【書籍レビュー】ソフトウェアエンジニアガイドブック

Table of Contents

Gergely Orosz 著『The Software Engineer’s Guidebook』の日本語訳を読んだ。著者は元 Uber のエンジニアリングマネージャーで、Pragmatic Engineer というニュースレターを運営している人物。エンジニアとしてのキャリアの各段階で何が求められるかを、かなり具体的に書いている本だった。

どんな本か

タイトルの通り「ガイドブック」で、ソフトウェアエンジニアのキャリア全般を扱っている。ジュニアからシニア、スタッフエンジニア以上まで、各レベルで期待されることが整理されている。技術的な話(コーディング、アーキテクチャ、テスト等)だけでなく、キャリアの切り開き方やマネージャーとの関係構築といったソフトスキル面にもかなりのページが割かれている。

全体の構成は大きく分けて、キャリアを主体的に切り開く方法、開発者としての基礎力、実際のソフトウェア開発の進め方、という流れになっている。

印象に残ったところ

第二章「自分のキャリアを主体的に切り開く」が一番面白かった。いくつか紹介する。

業務日誌をつける

本書では、自分がやった仕事を毎週記録しておくことを勧めている。ジュリア・エヴァンスの「自慢話ドキュメント(brag document)」という考え方も紹介されていた。評価面談のときに「10か月前に何をしていたか」を思い出すのは難しい。記録があれば、自分の貢献を具体的に説明できる。コードレビュー、設計ドキュメント、ポストモーテム、他者への支援など、目に見えにくい仕事こそ記録しておく価値がある。

著者自身も最初は業務日誌に懐疑的だったが、友人に勧められて2週間だけ試してみたところ、その有用さに気づいたそうだ。

マネージャーを味方につける

マネージャーとの定期的な1対1ミーティングを活用すること、伝えるべきことは伝えて相手が知っていると思い込まないこと、マネージャーの目標を理解すること。この3つが繰り返し強調されていた。約束した内容は必ず実行し、実行できない場合はその旨を報告する、という点もシンプルだけど大事だと思った。

仕事をやり遂げる人になる

インパクトのある仕事をたくさんやり遂げること、そしてそれを周囲に確実に認識させること。本書はこの2つを分けて論じている。いい仕事をしていても、それが認知されなければ評価にはつながらない。逆に、見掛け倒しの手間仕事ばかりでも意味がない。両方が必要だという話で、当たり前のようでいて意識しないと片方に偏りがちだなと感じた。

昇進駆動開発への警告

昇進だけを目的に仕事を選ぶことのリスクについても触れられていた。昇進の基準に達していなければ機会は減り、成功しなければ失敗を認めたくなくて走り続けてしまう。著者はこれを仮の話としつつも、心当たりのある人は注意した方がいいと書いている。

感想

全体として、派手なことは書いていない。「業務日誌をつけろ」「マネージャーに報告しろ」「約束を守れ」。どれも聞けば当然のことだけど、実際にやれているかというと怪しい。自分自身、業務日誌はつけていなかったし、マネージャーとの1対1でもっと戦略的に話せる余地はあると思った。

本書の良いところは、こうした実践的なアドバイスを著者自身や同僚の経験を交えて語っているところだと思う。抽象的な精神論ではなく、具体的な行動として書かれているので取り入れやすい。

一方で、大手テック企業の文化を前提にしている部分もあるので、すべてがそのまま自分の環境に当てはまるわけではない。その辺は適宜読み替えが必要。

コードを書く力を伸ばすことに集中しがちだけど、それだけでは足りない部分がある、ということを改めて実感させられる一冊だった。

My avatar

Thanks for reading my blog post! Feel free to check out my other posts or contact me via the social links in the footer.


More Posts