【脱・精神論】合言葉は「人を責めずに仕組みを責める」。現場のミスを防ぐエンジニアの仕組み作り

アイキャッチ画像

仕事でミスが起きたとき、つい「なぜ確認しなかったのか」「次から気をつけてください」と本人へ注意して終わらせていないでしょうか。

もちろん、本人が注意することも必要です。しかし、人の注意力だけに頼っていると、担当者が変わったときや業務が忙しくなったときに、同じミスが再発する可能性があります。

大切なのは、ミスをした人だけを責めるのではなく、ミスが起きた仕組みにも目を向けることです。

今回は、現場で起こりやすい失敗例をもとに、人に依存しすぎない業務の進め方を紹介します。

タスクの担当者と進捗を見えるようにする

現場でよく起きる問題の一つが、タスクの抜け漏れです。

打ち合わせの中で多くの作業が口頭で決まり、それぞれが個人のメモに記録しているだけでは、次のような問題が発生します。

  • 誰が担当しているのか分からない
  • どこまで作業が進んでいるのか分からない
  • 同じ作業を複数人が進めてしまう
  • 誰も対応していないタスクが残る

この問題は、担当者の記憶力や注意力だけでは防げません。

チケット管理ツールなどを使用し、タスクの内容、担当者、期限、進捗を全員が確認できる状態にする必要があります。

また、一つのタスクを途中で別の担当者へ引き継ぐ場合は、単にコメントで「確認をお願いします」と伝えるだけでなく、タスクの担当者自体を変更するなど、ボールの所在を明確にすることも重要です。

情報の管理場所を一つにする

例えば複数のファイルや管理シートに同じ情報を記録していると、「どの情報が最新なのか分からない」という問題が起こります。

このとき、「次から両方のシートをきちんと更新します」と注意するだけでは、入力漏れや更新忘れを根本的に防ぐことはできません。

基本となる情報の管理場所を一つに決め、他のツールからはその情報を参照する仕組みにすることが理想です。

すぐに一本化できない場合でも、使用を終了したファイルに、

「このシートは使用していません。最新情報はこちらを確認してください」

と記載しておけば、古いファイルを開いた人にも正しい場所を案内できます。

大がかりなシステムを導入しなくても、少しの工夫でミスを防げるケースは多くあります。

リリース作業は確認ではなく自動化を検討する

システムのリリースやデプロイ作業では、ファイルの入れ忘れや作業手順の間違いが重大な障害につながる可能性があります。

問題が起きた後に、「次回は手順書をよく確認します」と対策するだけでは、再び同じミスが発生するかもしれません。

例としてそこで有効なのが、CI/CDなどを利用した自動化です。

※CI/CDとは、システムの変更内容を継続的に確認し、テストやリリースを自動化する仕組みです。誰が作業しても同じ手順で同じ結果になるようにすることで、人為的なミスを減らせます。

すべてを一度に自動化するのが難しい場合は、チェック項目の自動判定や変更内容の比較など、部分的な導入から始める方法もあります。

障害は人の目ではなく監視で検知する

例えばサーバーで障害が発生し、誰も気づかない状況に陥ったとします。

このような場合、「担当者が5分おきにリソース状況を確認する」という運用は現実的ではありません。

AWSを利用している場合は、Amazon CloudWatchなどの監視サービスを使い、メモリ使用率などが一定の値を超えた際にアラートを通知する仕組みを検討できます。

さらに、監視機能自体が正常に動作しないケースも想定し、別の場所から定期的にリクエストを送り、応答がなければ通知するなど、複数の方法で異常を検知することも有効です。

一つの仕組みが失敗しても別の仕組みで気づける状態にすることで、障害の見逃しを防ぎやすくなります。

仕組みを厳しくしすぎないことも大切

ミスを防ぐためとはいえ、ルールや確認項目を増やしすぎると、業務が進みにくくなる可能性があります。

重要なのは、すべてを厳密に管理することではなく、ミスが起きる可能性と、問題が起きた際の影響を考えて仕組みを設計することです。

自分だけでは良い方法が思いつかない場合は、他のエンジニアや経験者へ相談してみましょう。

さまざまな現場を経験した人と話すことで、「別のツールを使えるのではないか」「この作業は自動化できるのではないか」といった新しい案が生まれることがあります。

まとめ

人は誰でもミスをします。

だからこそ、問題が発生した際は本人の注意不足だけで終わらせず、次のような視点で業務を見直すことが大切です。

  • タスクの担当者と進捗を可視化する
  • 情報の管理場所を一つにまとめる
  • 手作業を自動化できないか検討する
  • 異常を自動的に検知する
  • 仕組みが失敗した場合に備えて別の検知方法を用意する
  • 運用しやすさとのバランスを考える

「次から気をつける」で終わらせず、誰が担当しても同じように進められる状態を作ることが、本当の再発防止につながります。