Team Geekメモ

思うところあって『Team Geek』という本を読んだので自分が気になったところだけメモ。

  • HRT
    • Humility(謙虚)
      • 自分を改善する態度
    • Respect(尊敬)
      • 相手を思いやる
    • Trust(信頼)
      • 自分以外の人は有能であると信じる
    • あらゆる人間関係の衝突は、HRTの欠如による
  • 影響を受けやすくする
    • 影響を受けやすくなれば、それだけ影響を与えやすくなる
    • 弱いところを見せれば、それだけ強い人だと思われる
    • つまり頑固なのはダメ
  • チームの文化を尊重する
    • 文化を破壊する振る舞いをする人は追い出すための手間がかかる
    • 敵対的で意地悪な文化のチームにはそういう人が集まる
  • 優秀なエンジニアを増やすには、優秀なエンジニアを採用する必要がある
    • 優秀な人は優秀な人がいるところに集まる
  • 同期コミュニケーションを減らして非同期コミュニケーションを増やす
    • ミーティングをなるべく減らす
    • ドキュメントをなるべく増やす
  • ミッションステートメント
    • チームの目標
    • メンバーの向いている方向を揃える
  • ミーティングは5人以下にする
    • 一日のうち3-4時間は「予定」を入れて作業の時間として確保する
  • 対面で一緒に働くのが一番いい
    • 対面は一番帯域が太い
    • リモートで働くのは難しい
  • マネージャーではなくサーバントリーダーになる
    • 執事や召使のようにチームに奉仕する
    • HRTの精神
  • パフォーマンスの低い人は早めにクビにする
    • パフォーマンスの低い人が1人いるだけでチーム全体のパフォーマンスが下がる
    • 本人のためにもならない(他のチームでなら活躍できる可能性がある)
  • 採用を妥協しない
    • 採用基準以外の理由で採用してはならない
      • 応募者全員採用基準に満たなかったが応募者の中では最も優秀だった人を採用、みたいなのはダメ
  • リーダーは作業を奪わない
    • 新人が3時間かけてやる作業を自分が20分でやったりするのはダメ
    • メンバーの学習の機会を奪うことになる
  • メンバーに対するフィードバックでオブラートに包まない
    • HRTの精神を発揮しつつ正直に批判的な意見を述べるのが良い
    • 褒め言葉の中に批判を混ぜる伝え方は伝わらない(褒め言葉の方しか伝わらない)
    • ユーモアをまじえて伝えるのは問題ない
  • 事は荒立てる
    • スキルが低いエンジニア、頑固なエンジニア、働かないエンジニアなどがいたときに、そのうち改めてくれるだろうと思ったらダメ
    • 指摘して、それでも治らなければ、早めにクビにする
  • 有害な人
    • 有害な人は、そのふるまいが悪いことだと気づいていないので、面接で見つけることは難しい
    • 有害な人は、プロジェクトのことに考えが及んでいない
      • 過去の経緯を無視する
    • 有害な人は頑固である
      • 自分が正しいと譲らない
      • 実際に正しいこともあるが、有害な人の正論よりはチームのほうが大事
    • 有害な人は、権利を要求しがち
    • 有害な人は、被害妄想を抱きがち
    • 有害な人は、完璧主義者である
  • 有害な人への対処法
    • 感情的にならない
      • 感情的になって返信に時間を費やすのは無駄
      • 返信しなければいい
      • 事実だけに基づいてやりとりする
    • 追い出す
      • 丁寧な言葉づかいで追い出す
  • 有能なプログラマは交換可能だが、チームの文化は交換不可能
    • 短期的なメリットのために文化を犠牲にする必要はない
      • つまり、テコ入れで変なプログラマをチームに入れてはダメ
  • 無能で十分説明されることに悪意を見出すな
    • 「有害な人」は単純に無能である
    • 「有害な人」には悪意はない
    • 普通に無能な人に対するように処理すれば良い
  • 組織で昇進することは良いこと
    • 自分がコントロールできる範囲が広がるから
    • 難しいプロジェクトにも手を上げてリスクをとってやるべき
    • 会社の評価制度もハックしてのし上がるべき
  • リファクタリングしすぎない
    • リファクタリングやテストを書くことは会社的には成果にならない
    • 仕事の半分以上はユーザーに見える部分の実装をして自分の評価を上げるべき
  • 小さく約束して、大きく届ける
    • 見積工数を多めに出しておいて、予定より進捗しましたみたいに報告するアレ
  • 怠けない
    • 怠惰はプログラマの美徳ではない
    • ユーザーの使いやすいアプリはプログラマにとって面倒なアプリ
    • それでも怠けずに実装する