2名体制で問題になるのは作業の分担ではなく、状況をキャッチアップする時間です。FUNBREWではNotionやGoogleドライブで情報を共有し、GitHubには業務が終わる前に途中でもプッシュし、打ち合わせにはできる限り2人で参加しています。よく行う運用はコマンド化・手順化して、調査し直さずに動けるようにしています。ただし、二人とも同時に動けなくなればどうしようもないという限界は残ります。
小規模な開発会社に保守を任せるとき、いちばんの不安は「担当していた人が動けなくなったらどうなるか」だと思います。属人化を防ぐ方法は仕組みとして整理していますが、この記事では実際に2名体制がどう回っているかを書きます。
分担ではなく、いつでも代われる状態に時間を使う
2名体制でまず起きる誤解は、仕事を半分ずつ分ければ安全になるという考え方です。実際には逆で、きれいに分担するほど、相手の担当分に入れなくなります。
プロジェクトで時間を食う問題の多くは、作業そのものではなくキャッチアップにかかる時間です。何をどういう経緯でそうしたのかが分からなければ、コードを読めても判断ができません。そのため、代われる状態を保つことにあらかじめ時間を使っています。
普段からやっていること
特別なことはしていませんが、次の三つは崩さないようにしています。
情報を共有しやすい場所に置く
ドキュメントや資料は、NotionやGoogleドライブのように共有を前提としたツールに置いています。個人の端末にしかないファイルを作らないことが目的です。
途中でもプッシュする
ソースコードはGitHubで管理し、作業が完了していなくても、その日の業務が終わる前にプッシュします。区切りのいいところまで待たないのは、途中の状態こそ引き継げないと困るものだからです。中断した位置が共有されていれば、もう一方が続きから入れます。
打ち合わせにはできる限り2人で出る
打ち合わせには、無駄に見えても2人で参加するようにしています。同席していれば、その場の温度や、決まらなかった論点まで共有されます。議事録から復元できるのは決まったことだけで、迷った過程は残りません。
どうしても2人で出られない場合は、打ち合わせの内容を共有したうえで、必ずフィードバックをもらう形にしています。共有して終わりにすると、伝えた側は伝えたつもりになり、受けた側は把握したつもりになるためです。
もう一つ、共有の対象になりにくいのが「やらないと決めたこと」です。検討したうえで見送った案は記録に残りにくく、あとから同じ議論を繰り返す原因になります。打ち合わせに2人で出ておくと、この部分が自然に共有されます。
よく行う運用は、コマンド化・手順化しておく
運用の作業については、できるだけコマンド化・テンプレート化を進めています。目的は二つあります。
- 初動を遅らせないこと。障害や依頼が来たときに、手順を組み立てるところから始めなくて済みます
- 調べ直さなくて済むようにすること。前回どうやったかを毎回思い出す作業は、担当が代わると成立しません
手順として書き出しておくと、もう一方の人間がそのまま実行できます。属人化を完全に消すことはできませんが、頻度の高い作業から順に手順へ移していけば、代われない領域は着実に狭くなります。保守を引き継いだ最初の1ヶ月で環境づくりを優先しているのも、同じ理由です。
正直なところ、二人とも動けなくなればどうしようもない
ここは正直に書きます。1人が休んだり、別案件と重なったりした場合は上記の準備でカバーできますが、二人とも同時に動けなくなれば対応できません。人数の制約は、仕組みで消せる部分と消せない部分があります。
そのうえで、発注側に持っておいてもらいたいのは、預けているものの所在です。ソースコード、サーバーやドメインの契約、各種アカウントが誰の名義で、どこにあるかが分かっていれば、最悪の場合でも別の会社に引き継ぐことはできます。逆に、そこが不明なまま任せていると、規模の大きな会社に頼んでいても止まります。
発注側から確認できること
体制について、契約前に聞いておけることは次の三つです。
- 担当者以外に、状況を把握している人がいるか
- その人はどうやって状況を把握しているか(同席・記録・コードの共有など)
- よく行う運用作業が手順として残っているか、担当者の記憶に依存していないか
二つ目の答え方で、体制が実際に機能しているかどうかがおおよそ分かります。担当者が退職するときの引き継ぎは発注側でも同じ問題なので、自社側の体制を見直す材料にもなります。ご相談はお問い合わせからどうぞ。
この記事をシェア