「CAREER SKILLS」を読んだ感想など
はじめに
「CAREER SKILLS」は、ジョン・ソンメズ氏の書籍です。
CAREER SKILLS ソフトウェア開発者の完全キャリアガイド
ソフトウェア開発者として成功するために知っておくべきノウハウ・スキルを網羅したキャリアガイドです。
ソフトウェア開発者として成功したい――。そのような願いは自然なものです。
本書は、成功するために必要なスキルの種類とその身につけ方を全60章、約650ページにわたって具体的に解説します。
米アマゾンでは圧倒的な高評価(365以上の五つ星)を獲得している、 「一人前」のソフトウェア開発者になるための指南書です。
感想
一言でいうと、「すべてのソフトウェア開発者に読んでもらいたい書籍」です!
「どうやってソフトウェア開発を始めるか」に始まり、開発を行う上での心構えやキャリアの作り方、コミュニティとの関わりなどをステップに沿って解説してくれています。
開発者として生きていくための道標になりそうな書籍だと感じました。
特に前半から中盤にかけて、開発者としての仕事のやり方などが書かれた箇所は大変参考になりました。
明日から使える知見を得られました。
折に触れて読み返したい1冊です。
印象的だった箇所
書籍の中で印象的だった箇所をいくつかピックアップします。
ソフトウェア開発
- ソフトウェア開発は、「解決すべき問題」を理解することから始める
- 近年では、品質はチーム全台の仕事となった
- DevOps
- 有名OSSなどのコードを読むのはとても勉強になる
- 「どの言語を選ぶか」は気にしなくて良い
- 自分が興味を持てるテクノロジーを勉強すること
- 人前で発表するのはいい経験になる
- 転職活動をするときは、とにかく履歴書を綺麗に作ること
- 書き方を工夫して、自分が「より良く見える」ようにすること
- 「何をどうして、どんな結果が得られたか」を書くこと
- 専門家になること
- ❌ 悪い例
- 言語:PHP, Java, C++, Python, Go, Rust
- ⭕️ 良い例
- 言語:PHP
- 関連スキル:Java, C++, Python, Go, Rust
- ❌ 悪い例
働き方
- 就職してから昇給を交渉するより、最初に就職するときの初任給の方が簡単に上げられる
- フリーランスが社員と同等レベルの待遇を得るためには、社員の2倍程度の報酬が必要
テスト
- テストの品質はリスクの軽減
- テストは顧客へのマイナスの影響を軽減する
- 処理の境界値を知っているテスト = ホワイトボックステスト
- テストは必ず書くこと
- TDDは有効
- 継続的インテグレーションの利点は、「チーム全体にフィードバックを提供できる」こと
- デバッグをする際は、デバッガーを使ってはいけない
- 仮説を立てる -> 検証すること
- バグが解決したら、必ず「なぜ解決したか」を理解すること
- テスターの時間を浪費しないためにも、自分でテストをしよう
開発関連
- 優れた開発者はメンテナンスしやすいコードを書く
- コメントを書くよりも、わかりやすい記述を目指そう
- 上司にわかる言葉を使うこと
- 週に1度、上司に自分の現在の状況を報告すること
- 効果的な指導方法は、「模範を示す」こと
- チームの成績に責任を負うのはリーダーだけ
- チームの手柄はチームに与える
- 社外での自分の価値を高めよう
- コミュニティに参加しよう
- 社外の人とたくさん会話し、人脈を築こう
- ゼネラリストには、なりたくても慣れない
- すべてのテクノロジーを理解するのはほぼ不可能になっている
- 専門分野を選ぼう
- あがり症の人は、とにかく経験を積むこと
- 最初は失敗したとしても、経験を積めば平気になる
- 「あなたの人生の質は、あなたが快く受け入れられる不確実性の量に直接比例する」
- 資格を取るために必要なのは、「その資格試験に合格する方法を学ぶこと」
- 知識そのものではなく、その試験に合格する方法を学ぶ
おわりに
ソフトウェア開発に携わる人は1度読んでおくといつか役に立つ内容がたくさん書かれていました。
もしよければぜひお手に取っていただけると嬉しいです。
CAREER SKILLS ソフトウェア開発者の完全キャリアガイド
同じくメンソズ氏の著作で「SOFT SKILLS」という書籍も出ているので、近いうち読んでみたいと思います。
それでは。