正しい決断をしたい

つまり日々の雑事に追われすぎず大局観をもってバーンとクールなコードをキメる。これがプライオリティ。出世に惑わされてはいけない。これは何度も道を外れては立ち戻る同じ結論なわけだが、カネの力は強いのでこうして繰り返し自分に言い聞かせないといけない。

Staff Engineer の記事の中の引用です。自分も大局観をもってバーンとクールなコードを決めたいとおもっているのですが、なかなかできない。ITエンジニアの中でも限りなくニートに近い方である方であるため、誰かの決断の上で動くことの方が多い。Plan A, Plan B, Plan C ぐらいまで作っていって、それから選んでもらうことをやってもらえばいいと思うのが、難しい。

与えられた役割の中で、仕事をこなしていくのが仕事はじめのやりかたです。徐々に、抽象度をあげていって、チーム内で貢献したり、チーム間で貢献できるようになっていくのがよい。課とか部とかの単位になんだろうか?そんなに簡単なわけじゃないので、気になっているブログを3つほどとりあげてみた。

自分で解決していく力

一つ目は、エンジニアが何か問題にぶつかったときにあるといい力を5個 です。

  • 問題を切り分ける力
  • 想像と事実を切り分ける力
  • 探す力
  • 公式ドキュメントを読む力
  • ソースコードを読む力

チームに入った当初は、小さなバグを修正するか、小さなタスクをassign されると思います。元のcodeを元に context を考慮した read する力が大切です。元のcodeのwriting の力が低いと大変だったりする場合もあります。その場合、あんまり悩まずさっさと先輩に聞きましょう。(関数名や変数名が適切でない場合や想定していないケースなど)。自分は、(application) の log 見た?Man 読んだ? みたいなことを言われました。

チームメンバーを助けたりとか助けれらたりする力

二つ目は、メールの内容を相手に一瞬で理解させる「米軍の文法」 です。

  • 行動:受信者は何らかの行動を起こす必要がある
  • 承認:受信者の承認が必要
  • 情報:情報提供だけが目的で、返信や行動は必要ない
  • 決断:受信者の決断が必要
  • 要求:受信者の許可や承認を求める
  • 調整:受信者と、もしくは受信者による調整が必要

受信者というのは、上司と思って差し支えないです。Slack で通知を受け取るときに、何を期待されているかわからないことがあります。これらに加えて、期日を追加してJiraなどで頼みます。具体的には、業務委託でAWSを触っていいて、構成変更のためメンテ時間をとることがあります。エンジニアの社員の人に調整してもらう必要があるので、jira などで期日を決めてもらう調整を入れることがあります。あと、FYI(For your information )とかで、単純に情報の共有だけ行うとかします。

conventional: comments (https://conventionalcomments.org/) という code review の仕組みもあるのを先日知った。code review で困ることがあるので、取り入れてみよう。

自分は承認より謝罪の方が好きだったりします。

チーム間を助けたりとか助けれらたりする力

三つ目は、エンジニア組織の責任範囲の透明性をRACI図で高めてみた です。

  • Responsible: 実行責任者
  • Accountable: 説明責任者
  • Consult: 相談先
  • Informed: 報告先

上記二つはチーム内でしたが、よくチームを観察しているとチーム間で摩擦が起きていることがあります。ブログ先ではエンジニア内組織ですが、自分は会社全体のチームでのやりとりに適応できそうかなと考えています。Corporate サイトの運営 が responsibility が曖昧でどこに問い合わせて良いかを理解していなかったため、取り入れていいかなと思いました。

また、Delegation Board のような framework もあるらしく、これも積極的に使っていきたいです。

  1. 指示する: 管理者として意思決定を行う。
  2. 売り込む: 意思決定についての人々を納得させる
  3. 相談する: 決定する前に、チームからの意見を得る
  4. 同意する: チームと一緒に決定を下す
  5. アドバイスする : チームによる意思決定に影響を及ぼす
  6. 問い合わせる : チームの決定後のフィードバックを求める
  7. 移譲する: 特に影響を及ぼさずチームに任せる

March 26, 2023
作業ではなく、仕事をせよ の似たようなことを感じた。いづれにせよ、大局観をもってバーンとクールなコードを決めなければならない。