不確実性ポーカーと、不確実レベルに合わせた戦術

自分のところの部署のジュニア・エンジニアと話していて「次、未知のタスクに挑むときは、不確実性ポーカーをやってみよう」ということになった。

不確実性ポーカーというのは、

  • LEVEL 1 : タスクを完了させるためになにが必要か把握できていて、ゴールまでの道のりを頭の中で描けている
  • LEVEL 2 : タスクを完了させるにあたり、事前の調査や検証が必要そうな項目がひとつある
  • LEVEL 3 : タスクを完了させるにあたり、事前の調査や検証が必要そうな項目がふたつ以上ある

というレベル定義に則って、見積もりポーカーのように 2 名以上で集まって「せーの…」「2!」「3!」といった調子で、タスクの不確実性がどれくらいかを作業開始前に把握しようと努めるアクティビティである。こういうことをやったらいい状況なんじゃないか、と思ってその場で編み出した。

ジュニア・エンジニアの場合、取り組むタスクの不確実性レベルによって採るべき戦術は変わってくるだろうと考えている。

  • LEVEL 1 : 自力での完了を目指す
    • 事前に予期できなかった問題が発見された場合は、再度ポーカーを実施する
  • LEVEL 2 : まず、事前の調査や検証を行う
    • 調査・検証の結果、不確実性が低減して LEVEL 1 に収束するようなら、そう扱う
    • 調査・検証の結果、次々にわからないことが出てくるようなら LEVEL 3 として扱う
  • LEVEL 3 : タスクの完了を目指して、自分より詳しいであろうエンジニアにペアプロペアオペをお願いする
    • まずはシュッとタスクを完了させて、学習機会は進行中、あるいはタスク完了後にまわす

考慮している項目は下記に並べる通り。上に置いてあるものほど大事。状況によってなにを重要視するかは変わり得るけども。

    1. タスクの完了は早いほどよい
    1. かかるコストは低いほどよい
    1. 学びの量は多いほどよい

  • 情報がひとつだけ不足している、部分的に不足している、適切な質問で不足情報を補える

  • 情報が大幅に不足している、適切な質問を組み立てることが困難である

  • 「待ち合わせ」のシーンを想像すると

    • 待ち合わせ関係者全員が待ち合わせ場所のことをよく知っていれば、チャットでのやりとりで十分
    • 誰かにとって未知の場所だったり、誰かが道に迷ってしまったりした場合は、電話をかけて「どこの改札を出た?」「近くになにがある?」「なにが見える?」のように高速に情報を補完するのが効果的