프로그래밍 작업은 고통스럽다. 사실 프로그래밍하는 작업이 고통스러운 건 아니다. 그건 즐거운 일이며 나에게 있어 생각만으로도 아드레난린(Adrenaline)을 분비시켜 힘을 나게 한다. 하지만 그것이 일과 연관 되어있을 때는 마냥 즐거운 일일 수만은 없다. 프로그래머는 일할 때는 초현실적인 UI(User Interface: 사용자 인터페이스)를 만들어내는 기획자도 설득해야만 하고 자꾸 모호한 말만 하는 애매한 디자이너도 상대해야 하기 때문이다. 하지만 프로그래밍을 하는 사람으로써 마냥 고통스럽게 있을 수만은 없다. 고통의 연속이라면 더 이상 생산성을 떨어뜨릴 뿐만 아니라 회사의 월급도둑 역할만 하는 일은 그만두고 다른 직업을 찾아보는 것이 본인에게도 좋을 것이다. 그럼 항상 즐거울 수만 없는 이런 일들을 어떻게 즐기며 일할 수 있을 것인가?

먼저 ‘잘 쉬어야 한다.’ 일하는 모든 사람들에게 적용되는 말이다. 잘 일하기 위해서는 잘 쉬어야 한다. 하지만 이 말을 오해하는 사람들이 있다. 쉬라는 말이 집에 누워서 아무것도 하지 않은 채로 시체놀이 만으로 주말을 보내라는 그런 말은 아니다. 쉬는 것은 일 외에 다른 곳에 관심을 돌리는 것을 쉬는 것이라고 말할 수 있다. 예를 들면, 회사에서 가상 파일시스템을 개발하는 사람이 남는 시간을 통해 웹 메일 클라이언트를 만들어 오픈 소스 커뮤니티에 올리는 일을 했다라고 한다면 그 사람은 쉬었다 라고 말할 수 있다. 또는, 남는 시간을 통해 새로운 언어(Python, Perl, Lisp …) 공부하는 것도 마찬가지다. 잠시 짜증나는 업무에서 벗어나 생각을 리프레시(refresh) 함으로써 일을 더 즐겁고 잘할 수 있는 것들이 여기에 포함될 것이다.

‘원인을 분석해야 한다.’ 일이 힘들어 졌을 때는 왜 일이 힘들어 졌는지 어떤 일 때문에 즐겁지 않은지 원인을 분석해야 할 필요가 있다. 노트에 하나씩 적어보자. 예를 들면 이런 것들이 있을 수 있다. ‘기획자가 보내온 기획서가 너무 엉망이다.’, ‘요구사항이 너무 수시로 바뀐다.’, 또는 ‘상사가 나를 싫어한다.’ 등등.. 하나씩 적어보자. 만약 하나도 적을 것이 없거나 납득할만한 내용을 적을 수 없는데 일이 힘들어졌다면 그건 자신에게 문제가 있는 것이다. 모두 적었다면 하나씩 해결하려고 노력해볼 필요가 있다. 기획서가 너무 엉망이라면 왜 엉망인 기획서인지 기획자에게 알려주고 다음부터 보완하도록 얘기해볼 수 있을 것이다. 요구사항이 너무 수시로 바뀐다면 경험적으로 바뀌는 요구사항에 맞게 어느 정도 유연한 설계를 할 필요가 있을 것이고, 상사가 나를 싫어한다면 그 원인을 알고자 상사와 대화해야 할 것이다.

‘커피를 마셔라.’ 여기서 커피는 자판기 커피나 커피 믹스는 제외한 것이다. 1994년 일본 교린 대학의 연구결과에 따르면 커피 향은 뇌의 혈액량을 증가시키고 뇌파를 변화시켜서 집중력과 쾌감 기능을 높여 준다고 밝혀졌다. 자판기 커피나 커피믹스는 향이 적고 그다지 좋지 않으므로 에스프레소(Espresso)를 마실 것을 권하고 싶다. 난 카페라떼(Latte), 카푸치노(Cappuccino)를 좋아한다. 예전에 홍대 앞에서 근무할 당시 매일 한잔씩 마시던 카페라떼 향은 아직도 잊을 수 없다. 그때 회사가 참 힘들었었는데 생각해보면 그때 힘들었던 일들을 커피 덕에 조금이라도 덜 힘들게 일할 수 있지 않았나 싶다. 커피 한 모금처럼 본인에게 더 맞는 리프레시 수단이 있다면 그것을 찾을 것을 권하고 싶다.

하나씩 고통의 원인을 제거해 보면 프로그래머로써 일하는 것은 고통스러운 일이 결코 아닐 것이다. 고통은 대게 나 자신에게서 시작되고 있고 그게 해결되지 않은 채로 지속되고 있을 땐 결국엔 지쳐 쓰러지게 된다. 그때는 어떤 원인 때문에 내가 힘들어 하는지도 모르고 아무리 쉬어도 회복될 수 없는 상태가 되고 말 것이다. 프로그래밍 작업만 분석적으로 할 것이 아니라 자신의 생활도 디버깅 하듯이 혹은 ‘커피’ 같은 툴의 도움을 받아 고통의 원인을 하나씩 찾아서 해결해 보는 것은 어떨까?