일정에 대한 소소한...

프로젝트를 하다보면, 일정 딜레이라는 것이 일상다반사지요. 처음에 참여했던 아래아한글은 출시예정일보다 일년반쯤 뒤에 나왔었고, 그 뒤로 참여한 프로젝트들도 일정에 맞춰서 끝낸 적은 별로 없었습니다. (자랑은.. 아니지만 말입니다.)

대부분의 프로그래머들은 출시가 연기되거나, 혹은 프로젝트가 드롭되면, 내가 못나서 그런갑다. 라고 생각하게 됩니다. “작업방식의 실패”를 “개인적인 실패”로 받아들이기도 해서, 우울해집니다. 저도 그럽니다. 사실 돈은 받았는데 하기로 한일을 못했으니, 무슨 의미로든 실패는 실패죠.

왜 매번 그렇게 늦어지는지 처음엔 잘 몰랐더랬습니다만, 미국사람들이 “unknown issue” 때문이라고 답을 주더군요. “ ‘A,B,C’ 만 처리하면 끝나겠군. 그럼 각각 하루씩 3일 걸릴꺼야.” 라고 추정을 했는데, 작업하다보니 “ A1, B1, C1” 이라는 문제가 등장하기도하고(그럼 3일추가), 전혀 예상할수 없던 “Z” 가 나오기도 하는..(이건 5일짜리네!) 그런 식이라는 거죠. (결과적으로는 3일이라고 추정했던 녀석이 11일만에.. ㅜㅜ)

unknown issue 는 대략 known issue 의 3배정도 된다는 이야기도 쓰여있었습니다.

유레카였습니다요. 그래서, 저는 그 후로는 약간 잘난체를 하면서 “머리속에 떠오르는 일정x3”을 부르곤 했습니다. 그렇게 하면 대략 들어맞는 경우가 많았습니다.

게시판 하나 만들어달라는데, 3주걸립니다, 라고 하는 식이었습니다. 어떤 분들은 수긍하기도 했지만, 어떤 분들은 다른 데로 가버리더군요. 그래도 일용할 양식을 구할만큼은 벌수 있었습니다.ㅎㅎ

헌데 혼자서 진행하는 프로젝트중에는 “곱하기3” 기법이 안먹히는 경우가 가끔 있었습니다. 처음에는 그냥 휩쓸려 지나가고, 결론을 얻지 못했었는데요. 지금 돌이켜보니 짐작되는 원인이 있습니다. 단순하고.. 개인적인 원인이.

문제의 핵심은 아마도 개인적인 성실도였던 것 같습니다.

무슨 십대도 아니고, 직장생활 10년넘게 한사람이 늘어놓기에는 좀 쪽팔린 이야기같습니다만, 솔직히 혼자서 일해보니 그런 현상이 있네요.

파티션이 갖춰진 사무실로 매일 출근하는 사람의 업무집중도에도 어느정도 기복은 있을텐데, 혼자서 일하면 이게 더 심해지는 것 같습니다. 어떤날은 하루종일 책상앞에 붙어있지만, 어떤날은 하루종일 커피만 마시는거죠.

전에 번역하기 힘든 문단을 만난적이 있었는데요. “개발자의 개인 능력 관리가 앞으로의 과제”라는 문단이었습니다. 단어들은 쉬웠는데, 어째서 프로그래밍서적에 개인 능력관리가 등장할까, 궁금했었습니다. 아마도, 이런 상황이 미국에서는 이미 이슈가 되고 있는지도..

밤새워 코피를 쏟으면서 일정을 지켜내시는 분들도 있었습니다. 저보다 나이많은 형님께서… 며칠이고 밤을 새우시더니, 일정을 지켜내는 장면을 보거나, 지하창고에 놓인 철제 책상아래에 스티로폼깔고서 자다가 작업하다 본사로 복귀한 후 담배피우는 모습이라던가..

어쨌든, 어려움이 있어도, 일정을 지켜내기만 한다면, 나름대로 멋진 일을 했구나, 라고 생각할 수 있었습니다.

최근에 “드리밍인코드”를 읽다가 발견한 구절인데요.

“야구 감독은 타고난 재능과 체력 외에도 경기 중에 얼마나 파이팅할 수 있는지가 위대한 선수나 팀의 핵심 요소라는 사실을 알고 있다. 필요한 만큼보다 좀더 빨리 뛰고, 좀더 일찍 움직이기 시작하고, 조금 오버해서 열심히 해야한다. 이는 위대한 개발팀에 있어서도 핵심적인 요소다” - 드리밍 인 코드, 에이콘, 황대산, 48p

역시… 그게 핵심일지도…

사무실 책상에서 엎드려 자지는 않겠다고 결심한 후에, 좌우명처럼 떠들고 있는 문구. “주당 20시간 업무” 와 양립할 수 있는 주장인지.. 고민입니다.