Doing nothing at work
https://www.seangoedecke.com/doing-nothing-at-work/
Sean Goedeckeによる働き方生産性についての記事
概要
多くのエンジニアは労働時間そのものを減らすべきである
デフォルトで80%の稼働率を目指す
高プレッシャーなプロジェクトがない限り、勤務時間の20%はコンピュータから離れて過ごす
高インパクトな機会
テック企業でのパフォーマンスは外れ値的な事象に支配される
最もインパクトのある変更は、驚くほど些細な作業量であることが多い
ソフトウェア開発に努力点は存在しない。重要なのは適切なタイミングで適切な問題を解くこと
大規模なエンジニアリング組織には、数千万〜数億ドルを生む些細な作業が存在する
エンタープライズの大型契約時に、機能追加やバグ修正で契約を成立させる
良い機能である必要すらなく、対応する意思と能力を示すだけで十分な場合もある
インシデントを早期に防止・緩和する(適切なフィーチャーフラグをオフにするだけでも)
インシデント中の損失と、顧客離れによる将来の損失の両方を防ぐ
注目度の高い機能のリリース時に、些細だが分かりにくい変更が成否を分ける
システムへの精通度が、数時間で済むか1週間かかるかの差になる
これらの共通点は「時間依存」であること
朝ログインして大型契約のブロッカーを解消すると決められるものではない
鍵は「すでに忙しくない」状態でいること
余裕を持つ
常に低優先度の作業で100%稼働していると、2つの形で高インパクトな機会を逃す
忙しすぎて機会に気づけない
他者との会話、チーム更新の確認、進行中のインシデントの把握ができなくなる
高インパクトな作業に関わる最良の方法は、自分の専門性を提供することである
忙しそうに見えると、マネージャーが自分を指名してくれない
マネージャーやプロダクトマネージャーは、何が高インパクトかをより正確に把握している
彼らは自分が参加していない会議に出ている
何もしないこと
何もしないのは良いことである
ソフトウェアエンジニアリングはストレスフルだが、常時ストレスフルなわけではない
ストレスはインシデント、緊急作業、レイオフなど時折発生するもの
低プレッシャーな作業に全力で臨むと、高プレッシャー時にすでに疲弊している
高プレッシャー時でも何もしないことは有効
オンコール初心者には焦らないことを勧める。「スローモーションで考える」
ほとんどのインシデントは自然に解決する
慌てて行う「これで直るかも」という変更は、たいてい事態を悪化させる
パニックを避けるだけで、多くのエンジニアより良い対応ができる
「何もしない」は物事が起こりうる空間である
脳を休ませると新しいアイデアが生まれやすくなる
重要なタスクを渡されたとき、全力で取り組める
Rich HickeyのHammock Driven DevelopmentやZvi Mowshowitzのslackに通じる考え方
意図的に特定のことをしない
多くのエンジニアは、やるべきタスクを見て放置することに抵抗がある
これは「役に立つことへの依存」という、多くのエンジニアが共有する心理的特性
エンジニアはグルーワークを一般的に避けるべきである
グルーワーク(人々の連携、自分が主導しない作業のドキュメント更新、技術的負債への自発的対応)は、組織がその作業を明示的に優先していないことの表れ
優先されているなら、自発的に手を挙げる必要はないはず
問題ないなら、手を出すと時間の無駄でマネージャーを苛立たせる
大きな間違いなら、それでも手を出すべきでない。組織を自らの過ちの結果から隔離し、自分のキャリアとメンタルヘルスを犠牲にすることになる
結果が本当に深刻なら、起こるに任せ、組織に痛みを感じさせて方針を変えさせる
バーンアウトとは「報われない過重労働」であり、組織が気にかけない個人的な使命を背負うことで生じる
過度に親切だと捕食者に対して脆弱になる
テック企業には、エンジニアから無償の労働を引き出そうとする人間が多い
正規チャネル経由(昇進・ボーナス・給与で報われる)の作業とは異なる
裏チャネル経由で、作業を自分の名前で正式に記録する能力や意思のない人物から来る作業
例: 別組織のプロダクトマネージャーが「データ抽出が得意だよね、Xの統計を出してくれない?」と頼む
例: 別チームのエンジニアが「ペアプロしよう」と言い、結局全コードを書かされ相手が自分名義で提出する
ある程度なら問題ないが、バックプレッシャーをかけられる必要がある(断る、または数時間〜数日返答を遅らせる)
消えそうな作業に投資しすぎるのを避ける
リアルタイムで仕様を決めるプロダクトデザイナーと働く場合、1時間ごとの変更に全力で対応すべきでない
何もせず(散歩に行くなど)、午後に最新デザインに基づいて一度だけ書き直す
「政治的影響力のないマネージャーの大きなアイデア」も同様。たいていプロジェクトがキャンセルされるまで時間を稼げる
結論
多くのソフトウェアエンジニアリングの助言やツールは、技術的努力をスケールアップする能力を前提に設計されている
しかし成功を決めるのは、適切なときに適切なことをする能力であり、それには通常の作業で意図的に力を温存することが必要
80%の努力でもハイパフォーマンスエンジニアであり続けられる。むしろその方が容易
ストレスによる凡ミスが減り、高インパクトなタスクに飛びつける状態でいられる
年に2〜3回は、報酬が本当に高いときのために100%で取り組む