새벽 2시, 결제가 40분간 멈췄습니다. 당직이 임시 복구로 불은 껐고, 아침에 두 회의가 잡힙니다.
회의 A: 부장이 "누가 배포했어? 왜 점검도 안 하고 올렸어?"로 시작합니다. 배포한 주니어는 고개를 숙이고, 다들 입을 닫습니다. 30분 뒤 결론은 "앞으로 조심하자". 한 달 뒤, 같은 자리에서 같은 장애로 같은 회의가 열립니다.
회의 B: 진행자가 화이트보드에 타임라인부터 그립니다. "23:58 배포, 00:11 첫 알람, 00:24 원인 추정, 00:38 롤백 시작, 00:42 복구." 그리고 묻습니다. "이 주니어가 점검을 건너뛴 게 그 시점에 자연스러웠던 이유가 뭘까요?" 답이 나옵니다 — "배포 가이드에 점검 단계가 명시돼 있지 않았고, 스테이징이 그날 죽어 있었다." 회의는 사람이 아니라 배포 절차와 스테이징을 고치기로 합니다. 액션아이템 4개에 담당자와 기한이 붙습니다.
같은 장애, 다른 회의. A는 사람을 탓했고, B는 시스템을 고쳤습니다. 이 모듈은 B의 회의 — 비난 없는 포스트모템 — 를 어떻게 설계하고 문서로 남기는지를 다룹니다.
- 1포스트모템의 1차 목적이 책임 추궁이 아니라 학습·재발방지임을 설명할 수 있다
- 2비난 없는(blameless) 문화가 왜 더 안전하고 더 정확한 학습을 만드는지 근거를 들어 말할 수 있다
- 3어떤 장애에 포스트모템을 작성해야 하는지(트리거)를 기준으로 판단할 수 있다
- 4요약·타임라인·영향·근본원인·대응평가·잘된점/아쉬운점·액션아이템으로 이어지는 표준 포맷을 직접 작성할 수 있다
- 5담당·기한·상태가 붙은 액션아이템을 만들고 끝까지 추적하는 방법을 설명할 수 있다
- 6내부 포스트모템과 대외 장애보고서를 목적·독자에 맞게 분리해 쓸 수 있다
포스트모템은 무엇을 위한 자리인가
목적은 '다시 안 나게 하는 것', 범인 찾기가 아니다
포스트모템(postmortem, 사후검토)은 장애가 종료된 뒤 모여 "무슨 일이 있었고, 왜 그랬고, 다음에 같은 일을 어떻게 막을지"를 정리하는 활동입니다. 핵심은 두 단어입니다 — 학습과 재발방지.
여기서 가장 흔한 실패는 회의가 '범인 찾기'로 변질되는 것입니다. 그러면 두 가지가 동시에 망가집니다. 첫째, 탓을 듣게 될 사람은 사실을 숨기거나 축소합니다. 그러면 진짜 원인이 드러나지 않습니다. 둘째, "조심하자"는 결심만 남고 시스템은 그대로이므로, 같은 조건이 오면 같은 장애가 다시 납니다.
| 관점 | 범인 찾기 회의 | 학습·재발방지 회의 |
|---|---|---|
| 첫 질문 | "누가 그랬어?" | "무슨 일이 있었나(타임라인)?" |
| 원인을 보는 곳 | 사람의 부주의 | 시스템·프로세스의 약점 |
| 참석자의 태도 | 방어·침묵·축소 | 솔직한 공유 |
| 결과물 | "앞으로 조심" | 담당·기한 붙은 액션아이템 |
| 다음 달 | 같은 장애 재발 | 그 경로는 막힘 |
포스트모템의 가치는 문서를 만드는 데 있지 않습니다. 그 문서에서 나온 액션아이템이 실제로 닫히고, 같은 종류의 불이 다시 나지 않는 데 있습니다.
확대
그림: 범인 찾기 회의 vs 비난 없는 학습 회의 — 사람을 탓하면 사실이 숨고, 시스템을 고치면 그 경로가 막힌다.
비난 없는(blameless) — 사람은 합리적으로 행동했다고 전제한다
비난 없는 포스트모템의 핵심 전제는 이렇습니다: 사람은 그 시점에 주어진 정보·도구·압박 안에서 합리적으로 행동했다. 그래서 묻는 질문이 "왜 실수했어?"가 아니라 "왜 그 행동이 그 시점에 자연스러웠을까?" 로 바뀝니다.
예를 들어 "점검을 건너뛰고 배포했다"는 사실이 있을 때:
- 비난형: "왜 점검을 안 했어? 다음부터 꼭 해." → 사람의 의지에 기댄 해결 → 압박받으면 또 건너뜀.
- 비난 없는형: "그 시점에 점검을 건너뛰는 게 왜 자연스러웠지?" → "배포 가이드에 점검 단계가 없고, 스테이징이 죽어 있어 검증할 곳이 없었다" → 가이드에 점검 단계 추가 + 스테이징 헬스체크 자동화 → 의지가 아니라 구조가 막아줌.
이것은 책임 회피가 아닙니다. 사실을 솔직하게 꺼내야만 진짜 원인을 찾을 수 있고, 진짜 원인은 거의 항상 한 사람의 부주의가 아니라 여러 약한 가드레일의 합입니다. 비난을 거두면 사람들은 자기가 한 일을 숨김없이 말하고, 그 정직함이 더 정확한 학습으로 이어집니다. 단, 비난 없음이 곧 '책임 없음'은 아닙니다 — 액션아이템에는 분명한 담당자가 붙습니다. '사람을 탓하지 않는다'와 '아무도 책임지지 않는다'는 다릅니다.
언제 포스트모템을 작성하는가 — 트리거
모든 장애가 아니라, 배울 게 있는 장애에
장애마다 포스트모템을 쓰면 형식만 남고 지칩니다. 그래서 조직은 트리거 기준을 정해 둡니다. 대표적인 트리거는 다음과 같습니다.
| 트리거 | 설명 | 예 |
|---|---|---|
| 메이저 인시던트 | 전사·핵심 서비스 중단, 최상위 우선순위(P1) | 결제 전체 40분 중단 |
| SLA 위반 | 약속한 가용성·복구시간 목표를 넘김 | 복구목표 30분인데 90분 소요 |
| 고객 영향 큰 장애 | 다수 고객·매출·신뢰에 직접 영향 | 주문 데이터 일부 유실 |
| 반복 장애 | 같은 종류가 다시 발생 | 같은 배치 실패 3회째 |
| 위기일발(near miss) | 큰 사고로 갈 뻔했으나 운 좋게 피함 | 잘못된 삭제를 직전에 중단 |
특히 위기일발을 포스트모템 대상으로 삼는 조직은 성숙도가 높습니다. 실제 사고가 나기 전, 가장 싸게 배울 수 있는 기회이기 때문입니다.
포스트모템 표준 포맷
요약 → 타임라인 → 영향 → 근본원인 → 대응평가 → 잘된점/아쉬운점 → 액션아이템
좋은 포스트모템은 정해진 섹션 순서를 따릅니다. 순서 자체가 '감정(누구 탓)'이 아니라 '사실(무슨 일)'에서 시작하도록 설계돼 있습니다.
| 섹션 | 무엇을 쓰나 | 주의 |
|---|---|---|
| 요약(Summary) | 무슨 장애가, 얼마나, 어떻게 끝났는지 3~5줄 | 바쁜 사람이 이것만 읽어도 되게 |
| 타임라인(Timeline) | 발생·탐지·대응·복구의 시각별 사실 | 시각과 사실만, 평가·추측은 분리 |
| 영향(Impact) | 영향 범위·시간·고객/매출 영향 | 추정이면 추정이라 명시 |
| 근본원인(Root Cause) | 왜 일어났는가(직접·기여·근본 원인) | 사람 이름이 아니라 시스템/프로세스 |
| 탐지·대응 평가 | 빨리 알았나, 잘 대응했나 | "왜 더 빨리 못 알았나"가 핵심 |
| 잘된 점(What went well) | 이번에 작동한 것 | 좋은 점도 자산이므로 반드시 기록 |
| 아쉬운 점(What didn't) | 부족했던 것 | 사람 비난이 아니라 약점 식별 |
| 액션아이템 | 재발방지 조치 + 담당 + 기한 + 상태 | 이 섹션이 포스트모템의 결론 |
여기서 종종 빠뜨리는 게 '잘된 점' 입니다. 장애 회고는 부족했던 것에만 집중하기 쉽지만, 이번에 빨리 알아챈 알람·잘 작동한 롤백 같은 강점도 기록해야 그 강점을 다른 곳에도 복제할 수 있습니다.
직접 해보기 — 포스트모템 한 장 쓰기
맨 위 시나리오(새벽 2시 결제 40분 중단)를 가지고, 아래 템플릿의 각 섹션을 직접 채워 보세요. 핵심 규칙 두 가지만 지키면 됩니다 — (1) 타임라인에는 시각과 사실만, (2) 근본원인과 액션아이템에 사람 이름이 아니라 시스템·프로세스만 쓴다.
# 포스트모템: 결제 서비스 중단 (2026-06-20)
## 요약
- 무엇: ____ / 언제: ____ / 영향 시간: ____ / 어떻게 종료: ____
## 타임라인 (시각 — 사실)
- 23:58 ____
- 00:11 ____
- 00:24 ____
- 00:38 ____
- 00:42 ____
## 영향
- 영향 서비스: ____ / 영향 범위: ____ / 추정 매출/건수 영향: ____ (추정)
## 근본원인
- 직접 원인: ____
- 기여 원인: ____
- 근본 원인(시스템/프로세스): ____
## 탐지·대응 평가
- 탐지: 첫 알람까지 ____분. 더 빨리 알 수 있었나? ____
- 대응: 복구까지 ____분. 막힌 지점은? ____
## 잘된 점
- ____
## 아쉬운 점
- ____
## 액션아이템
- (아래 표로)
다 채웠다면, 마지막 액션아이템을 항목·담당·기한·상태 표로 옮겨 적어 보세요. 모범 답안 골격은 ObserveBlock에 있습니다.
섹션 순서대로 채운다- 요약: 23:58 배포 직후 결제 API가 00:11부터 응답 실패, 롤백으로 00:42 정상화. 영향 시간 약 40분.
- 타임라인은 "23:58 v2 배포 / 00:11 첫 5xx 알람 / 00:24 배포가 원인으로 추정 / 00:38 롤백 시작 / 00:42 복구"처럼 시각+사실만 — "당직이 늦게 봤다" 같은 평가는 타임라인이 아니라 대응평가에
- 근본원인은 사람("주니어가 점검 누락")이 아니라 시스템("배포 가이드에 점검 단계 부재 + 스테이징 다운으로 검증 불가 + 카나리 없이 전량 배포")으로 적었는가
- 탐지 평가의 핵심 질문: 첫 알람까지 13분 — 합성 모니터링/에러율 알람으로 더 빨리 알 수 있었는가
- 잘된 점도 비웠다면 다시 — 예: "롤백 절차가 문서화돼 있어 4분 만에 복구" 같은 강점은 반드시 기록
- 액션아이템에 담당자와 기한이 모두 붙었는가 — "개선한다"만 있고 담당/기한이 없으면 닫히지 않는다
액션아이템은 끝까지 닫는다
담당·기한·상태가 없으면 액션아이템이 아니다
포스트모템에서 가장 자주 죽는 부분이 액션아이템입니다. 회의에서는 "재발방지 하겠습니다"가 쏟아지지만, 담당과 기한이 없으면 그 문장은 다음 장애 때까지 그대로 방치됩니다. 그래서 액션아이템은 항상 다음 네 가지를 갖춘 표로 관리합니다.
| 항목(Action) | 담당(Owner) | 기한(Due) | 상태(Status) |
|---|---|---|---|
| 배포 가이드에 사전 점검 체크리스트 단계 추가 | 운영팀 김OO | 06-27 | 진행중 |
| 스테이징 헬스체크 자동화(다운 시 배포 차단) | 플랫폼팀 이OO | 07-04 | 대기 |
| 결제 API 카나리 배포 도입(전량 배포 금지) | 결제팀 박OO | 07-11 | 대기 |
| 5xx 급증 합성 모니터링 알람 추가(탐지 단축) | SRE 정OO | 06-25 | 완료 |
추적의 실전 규칙:
- 티켓으로 연결: 각 액션아이템은 변경/작업 티켓으로 등록해 평소 백로그와 같은 곳에서 추적합니다. 포스트모템 문서 안에만 있으면 잊힙니다.
- 상태를 끝까지 갱신: 대기 → 진행중 → 완료. 완료는 "코드 머지"가 아니라 "다음 장애를 실제로 막는 상태"까지.
- 닫히지 않은 액션아이템 리뷰: 반복 장애의 포스트모템을 열면, 거의 항상 이전 포스트모템의 액션아이템이 안 닫혀 있던 경우입니다. 정기적으로 미완 액션아이템을 점검합니다.
액션아이템에 우선순위를 매겨, 가장 효과 큰 한두 개라도 반드시 끝내는 편이 열 개를 흐지부지 여는 것보다 낫습니다.
확대
좋은 액션아이템은 담당·기한·검증 가능한 완료 기준 세 가지를 갖춘 것이고, 그것을 열림 → 진행 → 검증 → 닫힘 보드 위에서 닫힐 때까지 추적하는 것이 핵심입니다. 여기서 "검증"이 중요합니다 — 완료는 "코드 머지"가 아니라 "그 조치가 실제로 재발을 막는지 확인된" 상태입니다. 정기 점검(예: 주간)으로 보드를 끝까지 닫지 않으면, 아무리 좋은 회의를 해도 시스템은 그대로이고 같은 장애가 몇 달 뒤 똑같이 다시 터집니다.
현장에서 자주 보는 함정
증상: 장애가 날 때마다 깔끔한 포스트모템 문서가 쌓입니다. 그런데 두세 달 뒤 비슷한 장애가 또 나고, 회고를 열어 보면 이전 문서에 이미 똑같은 원인과 똑같은 개선안이 적혀 있습니다.
원인: 포스트모템이 '문서를 만드는 것'에서 끝났기 때문입니다. 액션아이템에 담당·기한이 없었거나, 있어도 티켓으로 연결되지 않아 평소 업무 우선순위에서 밀려 닫히지 않았습니다. 문서는 학습의 '결과'가 아니라 '시작'인데, 결과로 착각한 것입니다.
해결 방향:
- 모든 액션아이템을 변경/작업 티켓으로 등록하고 평소 백로그와 같은 보드에서 추적.
- 각 항목에 담당·기한·상태를 의무화 — 없으면 액션아이템으로 인정하지 않음.
- 스프린트/주간 운영회의에서 미완 액션아이템을 정기 리뷰.
- 반복 장애 포스트모템의 첫 섹션을 "이전 액션아이템은 왜 닫히지 않았는가"로 시작.
포스트모템의 성숙도는 문서의 양이 아니라 닫힌 액션아이템의 비율로 측정됩니다.
심화 — 비난 없는 문화는 선언이 아니라 제도로 지켜진다
심화: blameless가 무너지는 세 가지 경로 — 평가 연동, 위계, 면책의 오해
비난 없는 포스트모템은 진행자의 말투가 아니라 조직 제도의 문제입니다. "우리는 비난하지 않는다"고 선언해 놓고 제도가 반대로 움직이면, 사람들은 선언이 아니라 제도를 믿습니다. blameless가 실제로 무너지는 경로는 대개 세 가지입니다.
- 경로 1 — 평가·페널티 연동: 포스트모템 문서가 인사평가나 협력사 페널티 산정의 근거로 한 번이라도 쓰이면, 그다음부터 문서는 학습 기록이 아니라 방어 문서가 됩니다. 타임라인에는 공식 알람 시각만 남고, 아쉬운 점 섹션은 형식적 문구로 채워집니다. 그래서 성숙한 조직은 포스트모템의 용도 제한(평가·징계 자료 사용 금지)을 명문으로 박고, 경영진 보고는 원문이 아니라 요약본으로 분리합니다.
- 경로 2 — 위계: 한국 조직에서 특히 강한 경로입니다. 주니어가 부장의 판단 지연을 타임라인에 적을 수 있습니까? 못 적으면 타임라인이 왜곡되고, 왜곡된 타임라인에서 나온 근본원인은 틀립니다. 이를 깨는 가장 강한 신호는 리더가 자기 실수를 먼저 기록하는 것입니다. 리더의 실수가 문서에 실려도 아무 일이 없다는 것을 본 뒤에야, 팀은 사실을 말하기 시작합니다.
- 경로 3 — '비난 없음 = 무엇이든 면책'의 오해: blameless는 선의의 행동을 전제합니다. 규정을 알면서 반복적으로 무시하거나 기록을 조작한 경우까지 면책하자는 것이 아닙니다. 이 선을 흐리면 반대쪽에서 문화가 무너집니다 — 성실한 사람들이 "저건 봐주면서 왜 우리에게만 학습을 요구하나"라고 느끼는 순간입니다. 그래서 공정 문화(just culture)는 '정직한 실수는 시스템으로 고치고, 고의적 위반은 별도 절차로 다룬다'를 구분합니다.
blameless의 건강 상태는 말이 아니라 지표로 확인합니다 — 위기일발(near miss)의 자발 신고 건수가 가장 좋은 온도계입니다. 신고해도 안전하다고 믿을 때만 올라가는 숫자이기 때문입니다.
상황: 대형 장애 후 경영진 요청으로 포스트모템 원문이 그대로 보고됐고, 문서의 아쉬운 점 섹션이 특정 팀의 분기 평가 감점 근거로 인용됐습니다. 그 후 이상한 변화가 나타납니다 — 포스트모템은 계속 나오는데 타임라인이 공식 알람 시각만으로 앙상해지고, 분기 3~4건이던 위기일발 신고가 0건이 됐으며, 장애 최초 인지에서 전파까지의 시간이 눈에 띄게 길어졌습니다.
원인: 회의는 여전히 '비난 없이' 진행됐지만 문서의 용도가 약속을 배신했습니다. 학습용이라던 문서가 평가 자료로 전용되는 것을 본 순간, 구성원들은 회의에서 무슨 말을 듣든 "기록은 불리하게 쓰인다"를 학습했습니다. 사실을 숨기는 수준이 아니라, 애초에 기록되지 않게 행동하기 시작한 것입니다 — 혼자 조용히 복구하고, 알람이 울리기 전에는 보고하지 않습니다.
진단: 문화의 붕괴는 문서 품질 지표로 드러납니다. near miss 자발 신고 추이, 타임라인에서 '사람이 알람보다 먼저 알아챈 기록'의 비율, 탐지→전파 시간의 추세를 몇 분기 단위로 놓고 봅니다. 세 지표가 같은 시점에 꺾였다면, 그 시점에 무슨 일(평가 인용, 원문 회람)이 있었는지를 찾습니다.
해결: 신뢰는 선언이 아니라 제도로 복구합니다. (1) 포스트모템의 평가·징계 자료 사용 금지를 규정으로 명문화하고, 위반 시 문서 접근 권한을 회수합니다. (2) 경영진·발주사 보고는 사실·영향·재발방지만 담은 별도 요약본으로 분리합니다 — 장애보고서 작성과 같은 원리의 문서 분리입니다. (3) 리더가 자기 판단 미스를 먼저 타임라인에 올리는 모습을 몇 차례 반복해 보입니다. 문화가 무너지는 것은 한 번이지만 복구에는 분기 단위가 걸립니다 — 그래서 전용을 처음부터 막는 편이 압도적으로 쌉니다.
한국 현업에서 자주 헷갈리는 지점이 포스트모템과 '장애보고서'의 관계입니다. 둘은 비슷해 보이지만 독자와 목적이 다른 별개의 산출물입니다.
**포스트모템(내부 학습용)**은 운영팀·개발팀 내부가 읽습니다. 솔직한 대응 미흡, 빠뜨린 점검, 부족한 가드레일까지 가감 없이 적어야 학습이 됩니다. 비난 없는 문화가 전제이므로 사람 이름은 빼고, 시스템·프로세스를 깊게 파고듭니다.
**장애보고서(대외/경영진 보고용)**는 고객사·발주사·경영진이 읽습니다. 확정된 사실, 영향 범위, 그리고 재발방지 약속을 절제된 톤으로 요약합니다. 내부 포스트모템의 솔직한 자기비판을 그대로 고객에게 보내면 오해·신뢰 손상·법적 리스크가 생길 수 있어, 사실은 공유하되 문서는 분리합니다.
관리 직무(SM 운영 담당, PM/PMO)에서 당신의 역할은 이 둘을 잇는 것입니다 — 내부 포스트모템에서 나온 재발방지 액션아이템을 협력사 작업 일정과 변경관리 절차에 반영하고, 그 핵심을 대외 장애보고서의 '재발방지 대책'으로 번역해 보고합니다. 협력사가 실제 조치를 하더라도, 액션아이템이 끝까지 닫히는지 추적하고 고객에게 결과를 보고하는 책임은 관리자에게 있습니다. 잘 쓰인 포스트모템 한 장과 끝까지 닫힌 액션아이템은, 같은 고객사에게 같은 사과를 두 번 하지 않게 해 주는 가장 확실한 신뢰 자산입니다.
실전 랩으로 손에 익히기: 포스트모템 실습 — blameless 원칙·타임라인·실행 가능한 액션아이템을 작성합니다.
관련 모듈로 더 깊이:
- 근본원인분석(RCA) 기법 — 포스트모템의 근본원인 섹션을 채우는 분석 기법들
- 문제 관리 — 포스트모템 액션아이템을 재발방지로 이어가는 문제관리
- 장애보고서 작성 — 내부 포스트모템과 분리되는 대외 장애보고서 작성법
다음 모듈에서는 이 재발방지 약속이 기대는 토대 — 서비스 수준을 숫자로 약속하는 SLA·OLA·UC(서비스수준협약·운영수준협약·하도급계약)의 구조와, 이들이 어떻게 맞물려 전체 서비스 품질 목표를 떠받치는지를 다룹니다.