業務内容のマニュアル化のすすめ〜弊社脆弱性診断チームの事例を添えて〜

これは[シーエー・アドバンス Advent Calendar 2020](https://qiita.com/advent-calendar/2020/ca-advance) 17日目の記事です。
前回の記事は @Naaaa さんの 「[基本情報技術者試験(CBT方式)の試験予約で躓いた話](https://qiita.com/Naaaa/items/6953cfad39799806e518)」 でした。
明日の記事は @gussann0505 さんです。

こんにちは。
シーエー・アドバンス（CAAD）技術統括本部セキュリティチームの @asami-H-Ishi です。
社内（グループ会社含む）サービスの脆弱性診断に関わる業務を行っています。
開発未経験で入社して5年目になりますが、入社して2年ほど診断員として業務に携わり、その後、脆弱性診断を実施する社内外の診断会社と社内サービス担当者との橋渡し役として調整業務を2年くらいやってきました。
現在は、また診断作業のチームに戻り、新体制のもと、脆弱性診断の効率化に取り組んでいます。

# はじめに
この記事では、入社後の業務の中でチームメンバーが増え、マニュアルを整備するに至った自身の経験を分析・考察し、マニュアル整備によるメリットを提示して、マニュアル整備着手の時期と手順についての私見を書いています。
業務内容によってはもしかすると参考になることもあるかもしれませんが（だといいなぁと思って書いてる）、全く参考にならない場合はごめんなさい。

長々書いてるとこあるので、急いでる人は「マニュアル整備・アップデートを続けるメリット」から読んでもらえればと思います。

# 入社してからのチームの歴史をマニュアル中心に振り返る
観測対象が自分と自分の属するチームだけなので一般化するには検証が足りているとはいえません。
ただ、同じ業務を行う2〜3人のチームメンバーの数が2倍になったときと、3倍になったときで、それぞれ業務の回し方がガラッと変わり、それによってマニュアル整備の必要性と関わり方も変わってきました。

## マニュアルなくてもなんとかなってた期
わたしが入社した当初は二人しかいませんでした。チームメンバーはわたしを入れて三人でした。
とにかく「わからなかったら都度どっちかに聞いて」というスタンスでした。

## 個人のメモを共有したりしはじめた期
開発チームに在籍していたエンジニアがセキュリティチームに移ってきて、チームメンバーが四人になったころです。
そのころのわたしは研修が終わって脆弱性診断をするようになっていて、わからなくて質問した内容は自分用のメモを残し、GoogleドキュメントやGoogleスプレッドシートに手順や観点をまとめたりしていました。
新メンバーさんから質問を受けた時にそれを共有したり、彼から共有を受けたものを自分のメモに追記したりするようになったのがこのころです。

## リーダーがマニュアルやフローとして情報をまとめはじめた期
メンバーが三人増え、チームメンバーが七人になりました（ただ、このころにわたしが業務内の別チーム＝調整チームに異動になり、最終的な人数は六人でした）。
このころになると、リーダーが各自でまとめていたメモや観点表を集約し始め、業務で使用するテンプレートのアップデートも進んでいきました。
人手が増えたことで、リーダーが全体効率を見る割合が増加したタイミングでもありました（それでもリーダーの負荷は高かったと思います）。

## みんなでマニュアルを更新するようになった期
去年ごろから、各自でマニュアルに追記したり、不足している内容を見つけたら自主的にドキュメントを作成するようになっていました。
担当した案件で技術的に手間取ったとか、新しく検証した手順で解決した、というようなこともすぐに反映されるようになったおかげで、「この人じゃないとこの診断スキルが使えない」ということが減ってきたころだと思っています。

## 現在：新体制に沿ったマニュアルづくりが進行中
新体制となり、リーダーの下にわたしと最古参の先輩がサブリーダーとして立って、これまでの作業内容を分担したサブチームを持つような形になりました。
それに伴い、業務手順のアップデートと、ここまではこのチーム、ここからはこのチーム、という線引きをしながらマニュアルを整備している最中です。
また、後述する調整チームを含めて「脆弱性診断チーム」なので、全体効率を上げるために、全体のフローを確認できるマニュアルの集約が進んでいます。
現在の取組内容については試行錯誤している最中なので、機会があれば別途まとめて共有できればなと思っています。

## 調整チームのマニュアルに関する振り返り
調整チームにいるときも、チームメンバーが三人までは割と「何とかなっていた期」だったと思います。
ただ、日々の業務に追われてマニュアル整備をしてなかったことで、下記問題点があったなぁと感じています。

- 誰がどのくらいの量のタスクを抱えているか外から見えず、周りが気づいてフォローできない、負荷分散がしづらい
- 急な体調不良や家族の事情で休んだ時に属人化していてフォローが難しい、担当者のやりとりログを全部追う必要が出てコストがかかる

# マニュアル整備・アップデートを続けるメリット

## フローの整理と可視化が進むほど、マニュアルによって新人さんが即戦力になりやすい
マニュアル化すると「この部分ってどうやってるんですか」と新人さんから細かいところを確認される機会が増えます。
ベテランは「ここはAの場合はaで、Bの場合はbで対応します」と回答しますが、それをマニュアルに落とし込もうとすると、経験知で判断していることなのかどうかが浮き彫りになることがあります。
誰にでも再現可能な状態まで一般化してマニュアルに落とし込めない、とわかれば、それについては「ベテランの○○さんかリーダーまでエスカレ」というフローが明確になります。
また、エスカレするということは、属人化していたり、スキルの習得状況に左右されるということなので、自分の業務上の課題点も可視化されやすくなります。
※もちろん業務の性格にもよるとは思います。

## 何かあった場合に個人のミスとして処理せず、マニュアルの改善やフローの見直しで対応する前向きなチーム運営ができる
マニュアルを参照して業務を進めるのでミスが発生しづらくなります。
改善・見直しを続けることで、ボトルネックの把握とその解消が早くなることも期待できます。

## 効率化を進めるための作業分担に際して、不満を前向きに処理できるようになる
作業を分担するようになると、どうしても自分以外の担当者に対して「もっとこうしてくれたらいいのに」など不満が出てきます。それは分担した役割に対して「期待するゴール」があるからです。
そこで、不満を要望として処理して、「現状で実現可能か」「現状で実現困難であれば、どういう条件なら実現できるか」を検討していきます。
この検討は、マニュアルを俯瞰して、連携する作業をするチームがどういうフローで動いているかが可視化されていると、よりスムーズに進められます。

## フローが明確化することで、タスクへの落とし込みが無駄なくできるようになり、タスク管理と共有がしやすくなる
タスクに落とし込めるようになれば、タスク管理ツールで作業進捗が見え、急なお休みなどがあっても自分以外の人にフォローを依頼しやすくなるのでは、と考えています。※検証中です。

# おわりに
まとめます！

- 同じ業務を行う人が3人以上になったら、マニュアル整備を考えるタイミング
- マニュアル整備のステップはだいたい下記のかんじ
<dl>
  <dt>一歩め</dt>
  <dd>自分用のメモを作る</dd>
  <dd>調べたり躓いた箇所を整理するメモを残す＝技術を検証し、習得して業務に活用する</dd>
  <dt>二歩め</dt>
  <dd>メモをチーム内で共有して整える</dd>
  <dd>他の人が記載した手順を再現できるようにブラッシュアップしていく＝新たな知見をチーム内に展開する</dd>
  <dt>三歩め</dt>
  <dd>共有したメモに新たな知見を追記していく</dd>
  <dd>全員で育てて使い続けられるマニュアルにしていく＝改善を促進するので業務拡大に寄与する</dd>
</dl>

**Tips**
Googleドキュメントを使用する場合、下記流れにすると全員で育てるマニュアルになりやすいです！

- マニュアル文書の主担当を決めておいて、主担当がたたき台を作る
- 他メンバーが提案モードやコメント機能を使って追記する
- 主担当が承認して反映してブラッシュアップしていく

業務マニュアルは、チームみんなで育てて使い続けるもの！　という立場でお送りしました。
ここまで読んでいただきありがとうございました！

それではみなさん健康第一で、よいクリスマス、よい新年をお迎えください！