SE時代の苦い思い出

就職して2〜3年目の頃、独立系SIerで働いていたときのこと。
商社のシステム部門に常駐し、保険業務のシステム管理を担当していました。

毎日入力されるデータを処理し、帳票を出したり、精算処理を行ったり。
当時は .NET と Oracle を使っていて、本番環境とテスト環境が用意され、本番データは週3ほどでバックアップされていました。

ざっくりとした作業の流れはこんな感じ。

  • 本番データをテスト環境にコピー
  • テスト環境でシステムの修正・検証
  • 問題なければ本番環境のプログラムを更新

ところがある日、とんでもないミスをやらかしてしまいました・・・

目次

昼食を終えて、午後の作業に取りかかろうとしたときのこと。
「午前中にテストしたデータを一旦消して、本番からデータをコピーしよう」と思い、テスト環境にログインしたつもりで作業を始めました。

全テーブルを TRUNCATE文 で削除。

※TRUNCATEはDELETEと違い、ロールバックができません。完全に消えます。

と、その直後――

商社の保険部門の担当者から内線。
「データが見れないんですけど・・・」

嫌な汗が流れました。
確認すると、ログインしていたのはテスト環境ではなく本番環境
つまり、本番環境のすべてのデータを消してしまったんです・・・

全身から血の気が引き、頭の中は真っ白。
とりあえず「確認します」と伝えて電話を切り、すぐに上司へ報告しました。

そこからは怒涛のような時間でした。
上司が関係各所に連絡し、保険部門の部長にも報告がいきます。
状況を整理しながら、まずはバックアップからの復元を決定。

ただ、「バックアップを戻せば終わり」という単純なものではありませんでした。

  • 復元作業を行う夜間のシステム停止時間を調整
  • 関係部署への周知、業務影響の洗い出し
  • 復旧後に必要なデータの差分再入力方法の確認
  • 誰がどの範囲を再入力するかの役割分担

といった調整ごとが山のようにあり、スケジュールを組むだけでも一苦労。
結局、夜間帯に復旧作業を実施することになりました。

書いてしまえば数行ですが、実際には一つひとつの確認や合意に時間がかかり、復旧が完了するまでの数日間は通常業務もストップ。
差分データは関係者が手作業で再入力するしかなく、部署の方々に大きな迷惑をかけてしまいました。

待つしかない自分の立場は本当に苦しく、「生きた心地がしない」とはまさにこのこと。

1日、2日と時間が経つたびに胃が締め付けられるようで、体感的には1週間以上に感じられました。

今でもあのときの冷たくなった手足の感覚を、鮮明に覚えています。

20年以上経った今も、あのときの状況をはっきり思い出します。

思い出すたび、胸の奥がざわつく。

ただ、あの失敗があったからこそ、
どんなに慣れた作業でも「慎重すぎるくらいでちょうどいい」と思うようになりました。

フリーランスになってからは幸い大きなトラブルはなく、無事に案件を進めることができています。

作業の前にはBackUpを取り、復元できる状態を確保しておく。

基本的なことだけれど、これがいかに大事かが身に染みているので、怠らずにできています。

あの時お世話になったメンバーのことはずっと忘れられない・・・
それから数年後、その職場を離れるときには、みんな優しい言葉をかけてくださって、涙が止まりませんでした。

今でも時々思い出す、苦い出来事。
そんな思い出を胸に、今日も目の前のお仕事に精一杯向き合ってまいります。

目次