실수를 줄이는 방법은?

아, 오늘도 또 대형사고를 쳐버렸습니다. 신규 서비스를 배포했는데, 바로 버그가 발견되서, 롤백해야 되는 아픈 순간이…

더더욱 문제는, 버그의 원인이, 어려운 것도 아니고, 아주 간단한 것을 실수해 버렸기 때문입니다. 그것도  두가지나!!!

첫번째는, 코드의 문제입니다. 아주 간단한 룰을 꺼꾸로 써버려놓고, 대충 테스트를 하고(딱 버그가 일어나기 직전까지만…) 아 문제없다라고 생각하고 넘어가버렸습니다. 반대로, 그 제대로 테스트를 했을 경우에는 해당 버그가 발생하지 않는 케이스 였다라는게 더더욱 문제였습니다.

QA 기간에 QA에서 버그를 발견하지 못하는 것은 QA의 책임은 아니라고 생각합니다. 개발자가 변경 사항에 대해서 더 자세히 알려주고, 테스트케이스에 대해서 고민했다면… 아마도 쉽게 발견했을지도 모르겠습니다. 일단, 저는 이번에 그러지 못했습니다.

두번째는, 배포직전에 백업을 조금 잘못해서, 롤백하는데 대략 1~20분 정도 시간이 걸렸습니다. 사실 이 부분도 큰 문제라고 생각합니다. 1번의 실수는 그래도 단지 실수일 뿐이지만… 두번째는 잘못된 행동이기 때문입니다.

물론, 어떻게 보면, 변명의 여지도 있습니다. 아주 바뻐서, 모두 다 제대로 챙기기에는 힘들었을 수도 있습니다. 하지만… 제대로 해야 하는 것들을 제대로 하지 못한 것을 단지 실수로 여기기 보다는, 여기서 개선점을 찾아내야 한다고 생각합니다.

그래서 “회고” 가 있는 것이겠죠.

이제부터는 기능을 구현하기 전에, 이것을 어떻게 테스트 해야 잘 할 수 있는가 부터, 고민을 해야겠습니다. 그리고,  할 수 있는한, 점검표를 만들어서 실제로 점검하면서 할 수 있도록 해야겠습니다.(단순 반복 작업)

그리고 귀찮다고 대충하는 것은 정말정말 피해야겠습니다.