송창걸 '실리콘밸리를 그리다' 필자
실리콘밸리 기업들도 실수는 피할 수 없다
우리는 모두 크고 작은 실수를 경험한다. 기업의 활동 역시 구성원들의 크고 작은 결정들로 이루어지다보니 작은 실수로 인한 큰 손실이 발생하는 일을 완벽하게 막을 수 없다. 어느 증권회사에서 1000달러짜리 1주를 판다는 것이 1달러에 1000주를 팔았다면 말 그대로 밀리언 달러의 손실을 입게 된다. 가끔씩 이런 팻핑거에러(Fat-Finger Error)가 실제로 일어난다. 그리고 이런 실수는 필자가 다니던 회사에서도 발생한 적이 있다. 한 엔지니어의 단순한 실수로 데이터베이스가 복구 불가능한 상황이 돼, 클라우드 서비스가 24시간 가까이 정지된 일이 있었던 것이다. 이 일로 회사에서 추정한 손실은 6억 원 정도였고, 회사 신뢰도 손상까지 고려한다면 기업가치의 하락은 그것보다 더 크지 않았을까 싶다.
한 사람의 의도하지 않은 단순한 실수가 큰 손실을 초래하기도 하지만, 여러 사람이 의논을 통해 결정한 내용이 천천히 시간을 두고 좋지 않은 결과로 나타나는 경우도 있다. 이러한 일을 방지하기 위해 '실수는 병가지상사(兵家之常事)이니 다음에 잘하자'라고 다짐을 하는 것으로 충분한 것일까? 또는 책임자를 문책하는 것이 재발을 효과적으로 방지하는 방법일까?
실리콘밸리 기업들은 이를 '포스트모템'이라 부른다
포스트모템(Post-mortem) 우리말로 부검 또는 검시라고도 한다. Post는 '후', 모르템은 '죽음'이라는 뜻으로, 피해자를 사망에 이르게 한 직간접 원인을 사후에 총체적으로 알아내기 위한 방법을 말한다. 실리콘밸리 기업들은 포스트모템을 통해 왜 문제가 일어났는지 분석하고 그 대책을 수립한다.
회사에서 일어나는 사고를 분석하고 예방하기 위한 방법론을 가리키기 위해 왜 이런 차가운 느낌의 단어를 가져와 쓰는지 잘 모르겠지만, 비교적 캐주얼한 분위기의 실리콘밸리 기업들에서 엄중한 분위기의 미팅을 하기에 알맞은 이름이다. 위키피디아의 포스트모템 페이지에 링크돼 있는 ZDNet의 기사에 성공적인 포스트모템의 포인트들이 잘 설명돼 있는데, 간략히 설명하면 다음과 같다.
① 모든 관계자를 초대하는 회의로, 관리자들만 모이거나 팀의 일부만 모일 경우 핵심적인 정보나 통찰을 놓칠 수 있다. 중요도가 높은 공식 미팅으로 일정을 잡되 가급적 사고 수습이 이루어진 직후에 한다.
② 시간 분석(timeline)으로, 사고가 일어난 과정과 그 대응 과정을 상세하게 기술하고, 언제 누가 어떤 정보를 접하고 어떤 결정을 내렸는지, 각 결정을 내리게 된 배경에 어떤 이유가 있었는지를 기술한다. 시간을 점차로 거슬러 올라가면 근원적 문제점(root cause)을 찾아내거나 복합적인 원인 분석을 하는 데 한발짝 더 가까이 다가가게 된다.
③ 잘된 일과 잘못된 일 모두 중요하다. 잘된 일은 모범 사례(best practice)로, 잘못된 일은 보완해야할 시스템의 약점을 찾아내는데 꼭 필요하다.
④ 책임자를 문책하는 회의가 아니다. 만약 실수한 사람 또는 문제의 책임자에게 비난의 화살이 돌아간다면, 그 조직은 점점 책임을 회피하기 위해 정보를 각 부서(혹은 각 개인)의 입장에서 해석하게 돼 결국 진정한 원인분석을 통한 다음 사고를 예방하거나 개선하는 일이 힘들게 된다.
⑤ 개선책을 도출하는 것으로, 단순히 피상적인 개선책만 세운다면 다음 사고를 앉아서 기다리는 것과 같다. 근원적 문제점을 찾기 위해 '5 Why'라고 하는 비교적 간단한 기법을 쓰기도 하는데, 요는 계속해서 다시 묻는 것이다. '그렇다면 그것은 왜 일어났는가?' 껍질을 다섯 번 정도 벗기고 나면 우리는 양파의 속에 무엇이 있는지 알아볼 수 있다. 이렇게 해서 찾아낸 가장 근저에 있는 원인에 대한 개선책을 내는 것이다.
⑥ 결과는 공개한다. 가능하다면 회사 전체와 공유하는 것이 좋다. 어떤 실수의 위험에 노출돼 있는지, 그를 예방하기 위해 어떤 노력을 하고 있는지, 여러 사람이 알수록 업무 프로세스나 시스템을 개선하는데 정보 공유나 협조를 구하기 쉽다. 실수를 조직 전체가 지성적인 방법으로 간접경험하는 그 자체로 그 값어치가 있다.
포스트모템을 하지 않은 실수는 좀비가 돼 되돌아온다
구글이 공개한 'Site Reliability Engineering' 책에서는 더 전문적으로 포스트모템에 관한 정보를 찾을 수 있다. 그런데 이 책에서 기술된 사례를 보면 구글은 단순히 버그를 잡는데 그치지 않고, 시스템 다운에 대한 체계적인 테스트를 하는 등의 프로세스 개선노력과, 비슷한 사고가 일어났을때 증상을 완화할 수 있는 시스템 개선안도 마련한다.
구글에서 만약 검색 시스템 패치가 적용 완료된 순간, 시스템 다운 현상이 해결됐고, 이 때 '문제 해결'이라고 손털고 일어났다면 어찌 됐을까? 처음에는 운이 좋아 빠르게 해결할 수도 있지만, 그 다음 번에 벌어질 수 있는 시스템 다운의 대응에는 운이 없을 수 있다. 오류가 발생했을 때 시스템이 부하를 능동적으로 해결하고 사용자에게는 정상적인 대응이 될 수 있도록 고안된 장치들이 정상적으로 작동하는지, 시스템 테스트를 정기적으로 반복하고 있다면 이와 같이 상황이 악화되지 않을 것이다.
좀비는 영화관이나 TV에서만 볼 수 있는 것이 아니다. 같은 증상에 대증적 요법으로 위기를 넘어가면, 그래서 잊을 만할 때 다시 나타난다면, 좀비를 마주치는 일보다 더 고통스러운 일이다. 근원적인 문제점을 찾아내고 그를 예방하는 일은 HBO 인기TV프로그램 '왕좌의 게임'의 Ned Stark의 입버릇처럼 반복돼야 한다. 'Winter is coming'.
모두와 공유한다
실수를 회사의 모든 사람들과 공유한다는 것은 어찌 보면 꽤 큰 위험을 감수하는 일이다. 어떤 포스트모템은 고객사 또는 일반 대중과 공유하기도 하는데, 회사의 프로세스나 기술의 취약점을 드러내서 경쟁사에 반사이익을 주지 않을까 걱정될 듯도 싶다. 공유의 범위를 넓혀 얻는 장기적 이익이 단기적 손실보다 크다는 것을 실리콘밸리의 기업들은 경험을 통해 알아낸 것이 아닐까 한다.
회사 전체와 공유해야하는 이유는 분명해 보인다. 복잡한 업무를 반복적으로 수행하다보면 언젠가 누군가는 실수를 하기 마련이다. 어떤 실수가 얼마만큼 손실을 가져올 수 있는지 다같이 이해한다면 실수를 예방하는 일 역시 모두의 것이 된다. 부서 A에서 일어난 실수에 대해 예방책을 세워두었을 때, 이를 공유하지 않는다면 비슷한 일을 하고 있는 부서B와 C는 고스란히 같은 위험에 노출되고 있는 것이다. 더 많은 사람들이 참여할 때 원인을 분석하는 일도 더 깊이 있게 파고들 수 있다.
전에 다니던 광고 플랫폼 회사가 한참 성장하고 있던 시절 Overspend라 불리우는 사고가 자주 있었는데, 수천 명의 광고주들이 설정한 수십만 개의 광고 아이템들이 실시간 옥션에서 각 아이템에 설정해 놓은 사용 금액 한도를 조금씩 넘기는 현상이 발생했다. 이는 마치 수십만 대의 차량이 움직이고 있는 도로 시스템에서 각 차량의 브레이크를 중앙 통제실에서 조정하는 것과 비슷한 일로, 모든 차량의 속도와 위치를 정확하게 파악하기 위한 복잡한 시스템 중 하나만 잠시 느려지면 수많은 교통사고를 일으키게 되는 일과 비슷했다.
Overspend가 이런저런 이유로 일어날 때마다 각 부서에서는 사고 예방책을 세우고 안정성에 문제가 있는 소프트웨어 부품을 개선했지만 작은 사고들이 계속 되던 중, 약 1억 정도를 손해보게 된 큰 사고가 일어나자 모든 부서의 시스템 담당자들이 모여 '포스트모템'을 실시했다. 여러 엔지니어가 모여 토론을 하고 그동안 일어난 모든 사고를 정리하다 보니, 이 제어시스템의 설계를 다시 해야 한다는 것이 분명해졌고, 단계적으로 설계를 변경하는 동안 다양한 방법으로 각 단계의 안정성을 모니터링하는 아이디어들이 속출했다. 약 2개월 후, 월별 2~3% 정도 발생하던 Overspend는 0.01% 수준으로 제어되는 성공으로 이어졌다.
외발 자전거로 피자를 배달하다 떨어뜨린 배달원은 잘못이 없다
우리가 알지 못하는 어떤 세상에서는 모든 피자 배달원들이 외발 자전거를 사용한다고 상상해 보자. 충분한 훈련을 통한다면 불가능한 일은 아니다. 문제는 가끔 배달원들이 넘어진다는 것인데, 더욱 확실한 훈련을 통해 극복할 수 있다. 이런 상황에서 피자집 주인이나 피자를 시킨 고객이 실수를 한 배달원에게 화를 내는 것이 당연한 것일까?
반복되는 사고나 실수가 일어나는 환경을 자세히 관찰하면, 그 시스템이 마치 사고가 쉽게 일어날 수 있도록 디자인된 것처럼 보인다. 실리콘밸리의 기업들에서 실수를 빨리 인정하고 다같이 공유할 수 있는 문화가 마련된 바탕에는, 이와 같은 통찰이 경험을 통해 깔려 있다. 사고를 누군가 내었더라도 그 사고를 낸 사람은 어쩌다 그 자리에서 그 일을 하고 있었던 것 뿐, 그 사람의 책임은 아니다. 하지만 사고가 반복돼 일어나는 곳에서 시스템을 개선하지 않았다면, 그 관리자에게 분명히 책임이 있다. 훌륭한 관리자일수록 책임을 빨리 자신의 것으로 인정하고, 모든 사람들로부터 정보와 아이디어를 모아 비슷한 사고가 반복되지 않도록 시스템과 프로세스를 개선하는데 열중하는 것이 사고 예방 캠페인을 벌이는 것보다 효과적이다.
두 사람 이상이 같은 목적으로 같이 모여서 일하는 곳에서 나쁜 일이 일어났을 때 누구나 책임을 회피하고 싶은 유혹을 느낀다. 이 때 책임을 회피하는 행동은 전체 조직에 이로울 수 없다. 마치 몸 어느 한 부분이 병에 걸렸는데 통증을 느끼지 못한다면 제때에 치료를 받지 못해 전체 조직의 생명이 위태롭게 될 수 있는 것처럼, 조직의 문제는 빨리 공유하고 빨리 치료하는 것이 최선의 방법이다. 이를 위해 실리콘밸리의 기업들은 큰 문제가 발생하면 다 함께 회의실에 모여 화이트보드에 타임라인을 써가며, 일을 시작한다.
포스트모템을 작성하고 배포하는 과정에서 중요한 것은 포스트모템에 관련자를 색출해 처벌하거나 비난하려는 의도가 없다는 것이다. 실수에 대해 비난하는 문화에서는 실수를 안 하려고 노력도 하는 반면, 실수가 생기면 숨기려고 할 수밖에 없다. 이러한 심리적 위축으로 실수에 대해 정확히 조사하고 그 문제의 해결책을 공론화하지 않으면 실수는 반복될 수밖에 없다. 그래서 실리콘밸리 기업들에서는 'Blameless Postmortem', 즉 서로 비난하지 않고 혼내지 않는 사유서 작성을 강조한다.
※ 이 글은 외부 글로벌 전문가의 기고로 작성된 것으로, KOTRA 및 실리콘밸리의 공식 의견이 아님을 알려 드립니다.
* 실리콘밸리 무역관에서 본 기고를 기고자에게 부탁한 이유
송창걸 님은 현재 오라클 본사에서 근무중으로, 실리콘밸리에 관한 글들이 쏟아져 나오는데, 과연 그러한 내용이 정확한 것인지, 개인적 경험에 한정된 것을 일반적으로 확대한 것은 아닌지 자문하게 되면서, 비슷한 생각을 하는 사람들을 모아서 "실리콘밸리를 그리다"라는 글을 연재중이기도 합니다.
실리콘밸리에서는 Fail Fast, Fail Forward 라는 말이 유행하는데, 이 말은 도전하는 것을 멈추지 말라라는 뜻으로 해석되고, 그 만큼 실리콘밸리가 성공할 수 있는 배경이 되었다고 분석하는 이들도 많습니다. 이에 대해서 자칫 무모한 도전이나 반복적 실수를 하라는 뜻으로 우리 한국국민에게 실리콘밸리가 비춰지지 않는가라는 문제의식을 갖고, 이를 좀더 분석하여 파헤친 글이 본 기고입니다.
실리콘밸리에 창업을 하는 한국인이나, R&D 법인을 세우는 것을 고려중인 기업에 대해서, 진정한 실리콘밸리 기업들의 실패 대응법을 소개함으로써, 자칫 소홀하게 될 수 있는 Risk 관리를 강조하고, 실제 구글 등의 사례를 조사하여 소개하였습니다.
실리콘밸리 회사들은 세계의 인재들이 모여들어 일하는 곳이고, 그들이 상대하는 회사들도 수준이 상당하다. 바이어나 투자자를 상대하였다가 원하는 결과를 얻지 못했을 때, 이를 차근 차근 분석하는 일을 하는 것이 "포스트 모템"이라고 생각됩니다. 마케팅을 해야 하는데, 단순히 홍보만 하는 것을 반복할 경우, 그 접점을 아예 잃어버리는 곳이 실리콘밸리이고, 잘되었던 잘못되었던 그 결과를 덮어버리기 보다는 관계자를 불러 실리콘밸리 바이어와 대응했던 과정을 되짚어보는 것이 실패대응을 통한 성공에 이르는 길이 될 것입니다. 앞으로도 실리콘밸리 산업과 기업행태를 좀더 이해할 수 있는 글을 기고받도록 노력하겠습니다. - 박형돈 차장 올림 -