떠난 자의 문서화는 남은 자의 야근을 없애준다
몇달 전 팀을 이동한 분이 남긴 문서 한장이 오늘 저를 야근에서 구해주었습니다.
최근에 구현한 상점 기능을 테스트 하던 중 버그를 발견했다는 QA팀의 이슈 티켓이 올라왔습니다.
거의 모든 상황을 다 가정하여 코딩하고 테스트 했는데 뭐가 문제일까 궁금했습니다.
서버 로그를 열어보고 QA팀에서 테스트한 시간에 어떤 에러가 남았는지 확인해 봤습니다.
하지만 거기엔 아무런 에러도 없었습니다.
제가 작성한 코드도 면밀히 살펴봤지만 특이사항은 발견할 수 없었습니다.
개발을 하다 보면 이렇게 이해할 수 없는 현상을 많이 마주치게 됩니다. 코드에도 아무런 문제가 없고, 개발 PC에서는 아주 잘 되던 기능이 테스트 서버에만 올라가면 안되는 경우가 종종 있습니다.
이런 경우는 코드에 어딘가 놓친 부분이 있을 수도 있고 다른 외부 서버에 그 원인이 있을 수도 있습니다.
오늘의 경우는 외부 서버의 이슈였으나 이걸 찾기까지는 쉽지 않았습니다. 어디에도 명확한 단서는 없었기 때문이죠. 게다가 항상 안되는게 아니라 한번은 잘 되었다가 또 한번은 안되다가 하는 상황이었기 때문에 더 혼란스러웠습니다.
문제점을 찾는 과정 속에서 전임자가 남겨놓은 문서 한장이 아주 결정적인 단서가 되었습니다.
증상도 이전하고 똑같고 로그파일에 남은 기록 모두 문서에 적힌 상황과 일치했습니다.
자칫 미궁에 빠져 언제 끝날지 모를 야근을 할 뻔 했으나 문서 한장이 저를 구해준 셈입니다.
저도 개발하면서 문서를 잘 남기려고 노력하는 편인데 이렇게 다른 이가 남긴 문서로 큰 도움을 받게 된 적은 처음이었던 것 같습니다.
게임 서비스를 오래하면 엄청난 양의 문서가 만들어 집니다. 새로운 사람이 들어오면 또 새로운 문서가 추가되면서 문서의 양은 점점 쌓여갑니다. 이 문서 더미에서 중요한 정보를 찾는것도 쉽지 않은 일입니다. 하지만 잘 적어놓은 문서 한 장은 새로 들어온 사람들에게 정말 빛과 같은 존재입니다. 기존 사람들 역시 모든걸 기억할 수 없기 때문에 그동안의 히스토리가 담긴 문서는 개발도중 마주치는 문제점을 해결할 유일한 단서가 되기도 합니다.
특히 문제의 발생부터 해결해 나가는 과정을 시간순으로 기록해 놓은 문서를 보면 마치 타임머신을 타고 과거로 돌아가는 듯한 느낌까지 받습니다. 그리고 기존에 있었던 사람들 역시 그 문서를 다시 열어보면서 예전 기억을 떠올릴 수 있습니다. 장황하게 상황을 설명할 필요 없이 문서 링크 하나를 공유하면 모든 사람을 한방에 이해시킬 수 있는 것이죠.