Karen
12k
2018-01-12 13:28:41 작성 2018-01-26 15:44:52 수정됨
1
2591

실리콘밸리를 그리다 - 12. 사고를 쳐도 혼나지 않는 회사 (2/2)


12. 사고를 쳐도 혼나지 않는 회사 (2/2)


너의 실수를 부검한다 - 포스트모템(Postmortem)




포스트모템을 하지 않은 실수는 좀비가 되어 돌아온다



이미지 크레딧


앞에서 본 구글의 포스트모템의 예에서 아주 자세히 설명된 timeline만큼이나 눈에 띄는 부분이 9개의 action items다. 단순히 버그를 잡는데 그치지 않고, 시스템 다운에 대한 체계적인 테스트를 하는 등의 프로세스 개선, 비슷한 사고가 일어났을 때 증상을 완화할 수 있는 시스템 개선안을 찾아내었다. 


Martym이 새로운 소네트를 추가한 검색 시스템 패치가 완료된 순간 시스템 다운 현상이 해결되었는데 이때 ‘문제 해결'이라며 손 털고 일어났다면 어찌 되었을까. 유명 인물의 새로운 관련 검색어가 발견될 때마다 구글은 이 일을 다시 겪어야 했을 것이다. 아마도 다음엔 그다지 운이 좋지 않아, 금방 문제를 해결할 수 없을지도 모른다.

다행히 사고 지휘자 Jennifer가 Clarac에게 연락하였고 시스템 로그로부터 리소스 버그를 발견했다. 다음에 대량의 검색 오류가 일어나더라도 시스템이 다운되는 일은 없을 것이다.


이번 사건이 발현시킨 숨어 있던 버그는 시스템을 단계적으로 다운시켜 66분 간 특정 검색이 안 되는 결과를 낳았다. 만약 여태 발견되지 않은 (또는 새로 만들어진) 버그가 발견되었는데 시스템을 단계적으로 다운되는 상황에 대한 대응이 안 되어 있다면 어떻게 될까.

오류가 발생했을 때 시스템이 부하를 능동적으로 해결하고 사용자에게는 정상적인 대응이 될 수 있도록 고안된 장치들이 정상적으로 작동하는지, 시스템 테스트를 정기적으로 반복하고 있다면 이와 같이 상황이 악화되지 않을 것이다.


좀비는 영화관이나 TV에서만 볼 수 있는 것이 아니다. 같은 문제가 해결하고 잊을만하면 다시 나타난다면, 좀비를 마주치는 일보다 더 고통스러운 일이다. 근원적인 문제점을 찾아내고 그를 예방하는 일은 HBO 인기 TV 프로그램 ‘왕좌의 게임’의 Ned Stark의 입버릇처럼 반복되어야 한다. “Winter is coming”.



모두와 공유한다


실수를 회사의 회사의 모든 사람들과 공유한다는 것은 어찌 보면 꽤 큰 위험을 감수하는 일이다. 어떤 포스트모템은 고객사 또는 일반 대중과 공유하기도 하는데, 회사의 프로세스나 기술의 취약점을 드러내서 경쟁사에게 반사 이익을 주지 않을까 걱정될 듯도 싶다.

공유의 범위를 넓히는 것이 주는 장기적 이익이 단기적 손실보다 더 크다는 것을 실리콘밸리의 기업들이 경험을 통해 알아낸 것이 아닐까.


전체 회사와 공유해야 하는 이유는 분명해 보인다. 복잡한 업무를 반복적으로 수행하다 보면 언젠가 누군가는 실수를 하기 마련이다. 어떤 실수가 얼마만큼 큰 손실을 가져올 수 있는지 다 같이 이해한다면 실수를 예방하는 일 역시 모두의 것이 된다.

부서 A에서 일어난 실수에 대해 예방책을 세웠을 해때 이를 공유하지 않았다면 비슷한 일을 하고 있는 부서 B와 C는 고스란히 같은 위험에 노출되고 있는 것이다. 더 많은 사람들이 참여할 때 원인을 분석하는 일도 더 깊이 있게 파고들 수 있다.


전에 다니던 광고 플랫폼 회사가 한참 성장하고 있던 시절 Overspend라 불리는 사고가 자주 있었는데, 수 천 명의 광고주들이 설정한 수십만 개의 광고 아이템들의 실시간 옥션에서 각 아이템에 설정해 놓은 사용 금액 한도를 조금씩 넘기는 것이었다.

이는 마치 수십만 대의 차량이 움직이고 있는 도로 시스템에서 각 차량의 브레이크를 중앙 통제실에서 조정하는 것과 비슷한 일로, 모든 차량의 속도와 위치를 정확하게 파악하기 위한 복잡한 시스템 중 하나만 잠시 느려지면 수많은 교통사고를 일으키게 되는 일과 비슷했다.

Overspend가 이런저런 이유로 일어날 때마다 각 부서에서는 사고 예방책을 세우고 안정성에 문제가 있는 소프트웨어 부품을 개선했지만 작은 사고들이 계속되던 중, 약 1억 정도를 손해 보게 된 큰 사고가 일어나자 모든 부서의 시스템 담당자들이 모여 Post-mortem을 실시했다.

여러 엔지니어가 모여 토론을 하고 그동안 일어난 모든 사고를 정리하다 보니, 이 제어시스템의 설계를 다시 해야 하게 되는 것이 분명해졌다. 단계적으로 설계를 변경하는 동안 다양한 방법으로 시스템 각 단계의 안정성을 모니터링하는 아이디어들이 속출했다.

약 2개월 후, 월별 2~3% 정도 발생하던 Overspend는 0.01% 수준으로 제어되었다. 그 후 내가 회사를 옮길 때까지 Overspend가 총 한도 금액의 0.5%를 넘는 ‘대형 사고'는 한 건도 일어나지 않았다.


이와 같은 개선을 이루어내게 된 바탕에는 많은 사람들이 모여 원인 분석(root cause analysis)을 통해 문제를 정확히 인지한 것이 큰 도움이 되었다.

만약 제어시스템 설계 자체에 문제가 있다고 인정하지 않았다면 이 회사는 그 문제를 푸는데 더 오래 걸렸을 것이고, 현재의 크기로 성장하기 어려웠을 것이다. 



외발 자전거로 피자를 배달하다 떨어뜨린 배달원은 잘못이 없다



이미지 크레딧


우리가 알지 못하는 어떤 세상에서는 모든 피자 배달원들이 외발 자전거를 사용한다고 상상해 보자. 충분한 훈련을 통한다면 불가능한 일은 아니다.

문제는 가끔 배달원들이 넘어진다는 것인데, 더욱 확실한 훈련을 통해 극복할 수 있다. 이런 상황에서 피자집주인이나 피자를 시킨 고객이 실수를 한 배달원에게 화를 내는 것이 당연한 것일까?


반복되는 사고나 실수가 일어나는 환경을 자세히 관찰하면, 그 시스템이 마치 사고가 쉽게 일어날 수 있도록 디자인된 것처럼 보인다. 실리콘밸리의 기업들에서 실수를 빨리 인정하고 다 같이 공유할 수 있는 문화가 마련된 바탕에는, 이와 같은 통찰이 경험을 통해 깔려 있다.

사고를 누군가 냈더라도 그 사고를 낸 사람은 어쩌다 그 자리에서 그 일을 하고 있었던 것 뿐, 그 사람의 책임은 아니다. 하지만, 사고가 반복되어 일어나는 곳에서 시스템을 개선하지 않았다면, 그 관리자에게 분명히 책임이 있다.

훌륭한 관리자일수록 책임을 빨리 자신의 것으로 인정하고 (own it), 모든 사람들로부터 정보와 아이디어를 모아서 비슷한 사고가 반복되지 않도록 시스템과 프로세스를 개선하는데 열중하는 것이 사고 예방 캠페인을 벌이는 것보다 효과적이다.


두 사람 이상이 같은 목적으로 모여서 일하는 곳에서 나쁜 일이 일어났을 때 누구나 책임을 회피하고 싶은 유혹을 느낀다. 이 때 책임을 회피하는 행동은 전체 조직에 이로울 수 없다. 마치 몸 어느 한 부분이 병에 걸렸는데 통증을 느끼지 못한다면 제 때 치료를 받지 못해 전체 조직의 생명이 위태롭게 될 수 있는 처럼, 조직의 문제는 빨리 공유하고 빨리 치료하는 것이 최선의 방법이다.

이를 위해 실리콘밸리의 기업들은 큰 문제가 발생하면 다 함께 회의실에 모여 화이트보드에 timeline을 써 나가는 것으로 일을 시작한다.


포스트모템을 작성하고 배포하는 과정에서 중요한 것은 포스트모템에 관련자를 색출하여 처벌하거나 비난하려는 의도가 없다는 것이다. 실수에 대해 비난하는 문화에서는 실수를 안 하려고 노력도 하는 반면 실수가 생기면 숨기려고 할 수밖에 없다. 이러한 심리적 위축으로 실수에 대해 정확히 조사하고 그 문제의 해결책을 공론화하지 않으면 실수는 반복될 수밖에 없다.

그래서 실리콘밸리 기업들에서는 “Blameless” Postmortem, 즉 서로 비난하지 않고 혼내지 않는 사유서 작성을 강조한다. 







글: Aiden. 엔지니어링 매니저. 데이터 수집을 통한 프로세스 개선에 관심이 많음.



그림: Chili. 디자이너. 생각을 그림으로 요약하는데 관심이 많음.




실리콘밸리를 그리다 (https://brunch.co.kr/@svillustrated/13  )


6
2
  • 댓글 1

  • muing
    44
    2018-02-16 19:30:56

    공감갑니다... 좋은 회사는 잘못된 부분을 인지하고 고치려하는 반면 나쁜 회사는 체계의 문제보다 문제를 일으킨 사람이 문제라고 하는 것 같아요.

    1
  • 로그인을 하시면 댓글을 등록할 수 있습니다.