2009년도쯤 이야기입니다.
아마 Visual Studio 2008을 이용해서 C++ 로 뭔가 하고 있었을 겁니다.

요즘 언어와 도구들은 정적 언어라 할지라도 자동으로 빌드가 되는 것 같지만 당시에 제가 쓰던 도구는 Ctrl+Shift+B 를 눌러서 빌드를 했습니다.

저는 뭔가를 고치기 위해 이것저것 해보고 있었고 팀장님은 제 옆에서 모니터를 바라보며 함께 문제를 찾아주고 계셨습니다.

몇 글자 고치고 Ctrl+Shift+B
앗 컴파일이 안되네.

또 몇 글자 고치고 Ctrl+Shift+B
컴파일됐다!

이제 Ctrl+F5로 실행.
젠장, 잘 안 고쳐졌잖아?

또 몇 글자 고치고 빌드.
제 왼손은 언제라도 Ctrl+Shift+B 를 누를 준비가 되어있었습니다.

팀장님이 옆에서 가만히 보고 계시다가 한마디 했습니다.
“왜 자꾸 그렇게 서둘러서 컴파일을 해요?”
“빨리 고치고 싶어서요.”

팀장님은 신사다운 분이셨습니다.

그런다고 잘 되지 않을 거예요. 자꾸 습관적으로 손이 나가지 말고 머릿속으로 찬찬히 컴파일을 해보세요.
빌드를 하고 싶은 마음을 참아내고 최대한 많이, 할 수 있는 만큼 코드를 짜 보세요.
그리고 진짜 다 됐다 싶을 때 빌드를 해보는 거예요. 그렇게 하면 훈련 효과도 있을 거예요.

막 신입사원을 벗어나 자신감에 가득 차 있던 저는 크게 부끄러움을 느꼈습니다.
제가 전형적인 초보 프로그래머의 행동을 하고 있었다는 생각이 들었거든요.
이 일 이후 제 성급한 손을 경계하려고 노력했습니다.

커밋한 후 곧바로 ‘오타 수정’ 이라고 다시 커밋하는 실수들을 하게 되면 저는 스스로를 많이 질책했던 것 같습니다.
“이 바보 녀석, 또 성급했잖아. 너는 아직도 초보야.”

뛰어난 두뇌 능력, 무거운 엉덩이는 프로그래머에게 중요한 능력 요소입니다만
신중함, 꼼꼼함 또한 그에 못지않게 중요한 것 같습니다.
실수 없이 일을 마무리해내는 것은 실력입니다. 이렇게 일하는 사람은 믿음이 갑니다.

은퇴 후 맘 편하게 혼자 코딩을 하다 보니 요즘 다시 이런 기초적인 실수를 하고 있습니다.
좀 혼나 봐야 정신차릴 텐데 이제 옆에서 혼내줄 사람이 없어서 슬프네요.

함께 읽으면 좋은 글: