뉴질랜드에 있을 때 Spark라는 통신사에서 1년간 네트워크 운영 일을 했습니다. 그때 뼈에 새겨진 교훈은 단순합니다. 사람은 실수하고 시스템은 죽는다, 그것도 이쪽 사정은 봐주지 않는 타이밍에. 우리가 통제할 수 있는 변수는 하나뿐입니다. 그 일이 터졌을 때 얼마나 준비돼 있느냐죠.
실수를 털어놓기 쉽게 만들기#
가장 효과가 큰 개선은 기술적인 게 아닙니다. 실수하면 벌을 받는 조직에서는 실수가 숨겨지고, 숨겨진 실수는 원래보다 몇 시간, 며칠씩 늦게 수습됩니다. “제가 망가뜨렸습니다, 정확히 이렇게 했습니다"라고 몇 분 안에 말할 수 있는 팀이 언제나 더 빨리 복구합니다. 그 뒤의 대응도 똑같이 중요합니다. 증상에 반창고만 붙이고 끝내지 말고 근본 원인까지 파야 합니다. 안 그러면 같은 실수가 다른 얼굴을 하고 돌아옵니다.
애초에 실수할 확률을 낮추기#
여기서는 지루한 것 세 가지가 일의 대부분을 해 줍니다. 첫째, 기술을 녹슬지 않게 유지하는 것. 에러는 낡은 지식을 좋아하니까 정기적인 교육은 복지가 아니라 유지보수입니다. 둘째, 절차를 문서로 남기는 것. ‘휴먼 에러’의 상당수는 사실 ‘모호함 에러’입니다. 문서가 없어서 누군가 감으로 조작했을 뿐이죠. 셋째, 반복 작업의 자동화. 같은 일을 500번 정확히 해내는 건 인간에게 무리지만, 컴퓨터는 정확히 그러라고 만들어진 물건입니다. 여기에 더해, 위험한 작업에는 눈을 한 쌍 더 붙이세요. 피어 리뷰든 정해진 형식의 셀프 체크든, 배포 전에 민망할 만큼 많은 문제를 걸러 줍니다.
큰 놈이 오기 전에 계획을 써 두기#
정직한 리스크 평가부터 시작합니다. IT 인프라 같은 내부 약점과 자연재해 같은 외부 위협을 모두 봐야죠. 실시간 모니터링은 조기 경보 시스템으로 반드시 깔아 둡니다. 그다음 계획을 씁니다. 사업 전반의 중단에 대해서는 사업 연속성 계획(BCP), IT 쪽에 특화해서는 재해 복구 계획. 테스트하지 않은 계획은 추측에 불과하니 훈련도 돌려야 합니다. 누가 이해관계자에게 무엇을 알릴지도 미리 정해 두세요. 위기 한가운데서의 즉흥 커뮤니케이션이야말로 패닉이 퍼지는 경로입니다. 그리고 폼 안 나는 나머지도 빼먹지 말 것. 지역 당국과 연락을 유지하고, 정비를 거르지 않고, 맞는 보험을 들어 두는 일 말입니다.
하나같이 신나는 얘기는 아닌데, 아마 그래서 효과가 있는 것 같습니다. 장애에 잘 대처하는 회사는 운이 좋은 게 아니라, 모든 게 멀쩡할 때 미리 대비해 둔 것뿐입니다.

