プログラマのためのサバイバルマニュアル

[cover photo]
TOPICS
Business/Essay
発行年月日
PRINT LENGTH
260
ISBN
978-4-87311-571-9
原書
New Programmer's Survival Manual
FORMAT
PDF
Ebook
2,420円
Ebookを購入する

プログラマとして生きていくには新たなスキルが必要だ。本書はプロフェッショナルとしてこの業界で生きていくための実践を33のtipにまとめて提供する。本番システムのプログラミングや開発ツールについて心得ておくべきことなどを解説しているのはもちろんだが、コードで生活を立てるために必要なことはそれだけではない。本書は、プロラミングの仕事にまつわるその他のすべてについて説明しようとするものだ。たとえば、エンジニアリング部門のなかで仕事がどのようにまわっているか、リリースまでにコードがどのように育っていくかなど、プログラマが知っておくべきことは多岐にわたる。本書はそうしたプログラマとその仕事をとりまくあらゆることについて実践的な提案を行なう。プログラマとしてこの業界を生き抜くための実践マニュアルである。

目次

イントロダクション
謝辞

第1部 プロフェッショナルのプログラミング
1章 本番システムのプログラミング
    取り上げていないテーマについて
    Tip 1 コードを鍛える
        品質保証の形
        実践と心構え
        課題
    Tip 2 正しさにこだわる
        分離と副作用
        インタラクション
        型システム
        看板に偽りのある100%カバレッジ
        100%カバレッジ未満
        参考文献
        課題
    Tip 3 テストしながら設計する
        テストしながら設計する
        仕様としてのテスト
        テストのやりすぎ
        参考文献
        課題
    Tip 4 複雑さを手なずける
        複雑さの死のスパイラル
        明快なコードへ
        課題
    Tip 5 穏便に失敗を収める
        処理の順序
        トランザクション
        エラー注入
        モンキーテスト
        課題
    Tip 6 スタイリッシュになろう
        スタイルに含まれる要素
        名前の付け方がなぜ大切なのか
        コメント
        終了と例外の習慣
        よくわからない場合には
        参考文献
        課題
    Tip 7 レガシーコードを改良する
        シームを見つける
        新プラットフォーム、新言語への移行
        バグと奇妙な仕様
        参考文献
        課題
    Tip 8 早い段階から頻繁にコードレビューを実施する
        人と視点
        コードレビューのさまざまな形式
        コードレビューのポリシー
        課題

2章 ツールを準備する
    Tip 9 環境を最適化する
        テキストエディタ
        言語ツール
        デバッガ
        プロファイラ
        課題
    Tip 10 言語に精通する
        近道はない
        イディオマティックプログラミング
        人とマシンの生産性のバランスを取る
        プログラマの競争力
        課題
    Tip 11 プラットフォームを知る
        プラットフォームへの投資
        課題
    Tip 12 自動化によって仕事を楽にする
        自動的で反復可能
        自動化はエラーを削減する
        課題
    Tip 13 タイムライン管理
        時間を越えた移動
        ほかのプログラマとの共同作業
        複数のタイムライン
        一元管理と分散管理
        課題
    Tip 14 ソースを使え、ルーク
        プロプライエタリかオープンソースか
        ライセンス
        上流プロジェクトの追跡
        オープンソースプロジェクトにコントリビュートする
        課題

第2部 人としてのスキル
3章 自分自身のマネジメント
    Tip 15 メンターを見つける
        優れたメンターの資質
        メンターを探す
        メンターと管理職
        課題
    Tip 16 自分のスタイルを持つ
        意識以前の知覚
        標準
        自分のスタイルを持つ
        きちんとしていることが大事
        課題
    Tip 17 知名度を上げる
        課題
    Tip 18 人事考課を勝ち抜く
        人事考課のメカニズム
        ランキング
        昇進
        課題
    Tip 19 ストレスをマネジメントする
        ストレスを認識する
        肉体的なストレスに対処する
        長時間労働
        燃え尽き
        休暇を取る
        真剣に考えよう
        課題
    Tip 20 身体の正しい扱い方
        ワークステーションの改造
        自分自身の最適化
        課題

4章 チームワーク
    Tip 21 個性のタイプを知る
        気質:内向的か外向的か
        ものの見方:感覚か直観か
        判断:思考/感情
        ライフスタイル:知覚的/判断的
        よくある組み合わせ
        課題
    Tip 22 点と点を結ぶ
        課題
    Tip 23 ともに働く
        分割統治
        ペアプログラミング
        集中と中断
        課題
    Tip 24 効果的な会議
        目的を持つ
        正しい参加者
        建設的に
        電話会議
        課題

第3部 企業の世界
5章 会社の内部構造
    Tip 25 同僚を知る
        さまざまな職分
        チーム内でのあなたの役割
        課題
    Tip 26 企業の解剖学
        秘書
        サポート
        マーケティング
        営業
        IT
        設備
        製造
        人事
        財務、経理
        重役
        取締役会
        課題

6章 ビジネスを考える
    Tip 27 プロジェクト管理の手法
        ウォーターフォール型のプロジェクト管理
        アジャイルプロジェクト管理
        課題
    Tip 28 (製品の)ライフサイクルを考える
        コンセプト
        プロトタイプ
        開発
        リリース
        メンテナンス
        寿命
        課題
    Tip 29 会社に合わせる
        課題
    Tip 30 会社のアンチパターンを見つける
        日程第1主義
        人月の神話
        ホッケースティックのような売上急上昇
        大規模な書き換え
        課題

第4部 未来に向かって
7章 カイゼン
    Tip 31 思考モードに注意せよ
        確率を均す
        創造のための構造
        エヴァンジェリズム
        課題
    Tip 32 勉強を休むな
        自分の学習スタイルを学ぶ
        時代の流れを知る
        思考を広げる
        コミュニティ
        カンファレンス
        会社に請求書を出す
        課題
    Tip 33 居場所を見つける
        プログラミングからプログラミングへ
        テクニカルリーダー
        管理職
        製品管理
        研究教育
        課題

参考文献
索引