見出し画像

人を責めず、システムを責める

誰でもミスをする。そんなときは、システムを見直す絶好の機会です。

手動のシステム運用がない環境は素晴らしいです。しかし、すべてが理想的な環境とは限りません。どうしても手動でしか運用できないところとか、まだシステム化する時間がとれていない場合もあると思います。ミスを繰り返す前に対策しましょう。

私が実際にしたミスと対処方法を書きたいと思います。参考にしていただけると幸いです。

(ここで言うミスとは、バグではなく操作ミスです)

やるの忘れた!

たとえば毎月20日に手動実行しなくてはいけないスクリプトがあるとして、単純に実行するのを忘れてしまうミスです。

対処法は、スプレッドシートなどで日時・月次のTo Doリストを作っておいていつも使うブラウザにタブ固定しています。

ブラウザを開いたら毎日見るようにして、タスクが終わったら丸をつけていきます。そのタスクのドキュメントもリンクしておきます。手動で実行しているということは、なにかしらイレギュラーな対応が必要だったりするので、どのような対応をしたかを記録しておきます。そうすれば、業務引き継ぎ時にそれを渡すだけでいいので楽です。

さらにチームで共有しておけば、丸がついていないものをSlackでリマインドしたり、忙しそうならやりましょうかとチーム内で協力できます。

ドライランした後の本番実行を忘れた!

DB更新しないドライランモードを実行して、エラーがないか確認した後に本番実行するスクリプトがあると思います。ドライラン実行で満足してしまって本番実行を忘れてしまうミスをしました。

対処法は、コマンドレベルでTo Doリストを作ったり、実行後に実行する確認スクリプトやSQLを用意してもいいのですが、面倒ですよね。

そもそもドライラン必要なのでしょうか?

いきなり本番実行して、エラーがあったものはデータ修正などの対応をします。再実行するとエラーになったものだけ再実行されるようなシステムにしておけばどうでしょうか。

複数回実行されるのが想定されるので、データが重複しないように設計する必要はありますが、メリットが多いと思います。ターミナルの履歴から間違えて実行してしまっても問題ありません。一部データに間違いがあった場合はデータを修正して再実行するだけで、修正用のスクリプトを用意する必要がありません。

ミスしてしまったら

もし誰かがミスしてしまったらどうしたらよいでしょうか。請求処理でミスしていて発見が遅れた場合、単純に再実行するだけでは復旧できません。

まずは復旧処理をしなければいけません。ミスした本人に復旧させるのが普通かもしれません。しかし、ミスした本人は動揺しています。経験量にもよると思いますが、焦って更に状況を悪くしてしまう可能性もあります。急いでいるときこそ冷静さが必要なのです。

復旧作業は別のメンバーに任せて、マネージャーがダブルチェックするのが良いと思います。そしてミスした本人にはミスした原因を考えてもらい、報告してもらいます。

後処理が全て済んだら、チームで対策を話し合います。どうしたらミスを防げるのかを考えます。全員が納得できる対策方法が見つかれば順次実施していきます。

ミスを恐れすぎて作業できないのも問題ですし、ミスしたら自分で直せばいいだろうという態度でミスを繰り返すのも問題です。

チーム全員を巻き込むことで、ミスした時にメンバーが助けてくれる安心感と同時に、他のメンバーにも迷惑をかけてしまう緊張感を感じながら仕事することになります。

まとめ

ミスをしたのが悪いのではなくて、ミスをしない仕組み作りができていなかったことが問題です。ミスしないように工夫して、楽しい職場にしてきましょう。

この記事が気に入ったらサポートをしてみませんか?