이쪽 길로 가자니 준비가 덜 됐고
저쪽 길로 가자니 괴롭고 무섭다.
그리고 뭐 어쨌거나 어느 길로 가야할지 모르고
선택한다고 갈 수 있는 것이 보장된 것도 아니다.
지금 내가 이런 상태다보니 자연스레 예전에 다니던 회사 생각. 그 곳에서 회사생활하던 생각이 난다. 그리고 무엇보다 참여했던 프로젝트 생각이 많이 난다. 조금만 더 잘했더라면 했던 기억들. 좀 많이 늦었지만 그 기억들을 꺼내어 정리를 조금 해두려고 한다. 나름 의미도 있고 배운 것도 있을텐데 그 때 그 작업을 하지 못했다.
첫번째 프로젝트는 모기업체 의약중간체사업부문의 내부프로세스를 위한 웹싸이트를 개발하는 것이었다. 회사 선배가 PM으로 들어갔고 난 코더 그리고 외주개발인력 두명이 더 투입되었다. (이 바닥 고생을 그만두고 고향내려간다던 윤과장님 잘 계시는지 궁금해진다.)
아직 asp.net이 나오기 전이었는데다가 회사 인프라스트락처가 모두 MS제품이라 ASP로 개발했었다. 이런 얘기하면 개발고수분들에게 돌맞겠지만 뭐 초보코더에겐 ASP나 PHP나 Jsp나 다를게 거의 없었다. 어차피 개발언어의 심오한 부분까지는 들어가보지도 못했고 그저 문법적 차이만 인지하고 있을 따름이었으니...
개발중에는 공수에 계산되는 서버사이드보다 공수에 계산되지도 않은 UI 자바스크립트 개발에 시간이 다 들어갔다. 그것도 코딩보다 디버그에... 당시에는 HTML에 버전이 있는지, XHTML이 뭔지 DOM이 뭔지, CSS와 HTML을 분리시키는 의미가 뭔지, 알지 못했던터라 코드 내에는 DOM함수와 IE 내부지원 함수와 인라인 CSS가 난무했었다. (이거 지금도 사용하고 계시다면 유지보수하시는 분께 심심한 사의를 표한다.) 뭐 어쨌거나 사용자 스토리에 따라 각 UI Component가 동적으로 움직여야했기에 내겐 완전 도전의 영역이었다. 당시엔 Ajax란 말조차 없었다. 동적으로(인것처럼?) 보여주기 위해서 미리 HTML을 다 가져온다음 경우에 따라 감추거나 보여주었다.
열심히 하는 품을 보고 그랬는지 내게 전체 네개 파트중 비교적 작은 파트였던 QA 파트의 개발이 통째 덜컥 맡겨졌다. 해보다 안되면 나눠서 하자고 하셨는데 훗훗 그럴수야 있나. 덕분에 회사앞 고시원에 방을 잡고 코드와 밤새워 씨름하다 방에가서 잠깐 눈을 붙이고 다시 회사에 나와서 코드와 싸움을 했다. 즐겁기는 했는데 총각때였기에 가능했다 싶다. 당시 PM이던 선배는 그런 내게 일정이 너무 빡빡한거냐고 작업량을 줄여줘야하냐고까지 물었었다. ^^;; 그리고 그런 나를 베테랑 윤과장님은 약간은 대견하게 약간은 안쓰럽게 보셨던 것 같다.
개발팀으로 말할 것 같으면, PM은 대리급이었고 프로젝트 관리 전반을 맡아서 진행했다. 코딩은 별개. 그리고 개발자 셋. 두분다 과장급이었는데 그 중 한분은 베테랑 개발자로 나와 전혀 다른 차원에서 개발언어에 영향을 많이 받지 않는 분이셨다. 미국에서 프로젝트를 하시기도 하셨고, 손을 대면 프로젝트가 막 굴러갈 것 같은 포스의 소유자. 그리고 다른 한분은 뒤늦게 이렇게 말하긴 뭐하지만 일을 쉽게 하시는 스타일은 아니셨다. 지금은 기억나지 않지만 내가 보기에 중요하지 않은 문제로 오랜 시간 개발팀을 마라톤 회의로 이끄셨던 분.
프로그램 개발일이 그렇듯 일이 순탄치는 않았다. 고객이 초기단계에서 설렁설렁 요구사항을 체크해주다가 중간쯤 가서는 자기네들끼리 싸우기 시작한 것이다. 고객의 부장님과 실무대리가 바라보는 프로그램의 목적이 서로 달랐다. 두 사람이 요구하는 기능을 모두 만들어주면 좋았겠지만 이미 초기기획 단계에서 공수를 줄이기위해 고객이 스스로 가지를 쳐왔었다. 그런데 막상 프로젝트가 진행중인데 그 모양이 된거다. 덕분에 요구사항 정의서에 싸인받아 오려고 갔던 개발팀은 고객 부장과 대리의 싸움을 구경하며 회의실에 앉아 꿀먹은 벙어리가 되었다.
결국 어찌어찌하여 진행이되긴 했지만 이건 뭐... 어떻게 보면 최악의 시나리오가 된 셈이다. '일단 여기까지 개발하고 나머진 2차개발로 갑시다.' 이런 식이었는데... 개발이 종료되고 내가 회사에 있는 동안 해당 시스템의 2차개발은 없었다. 하지만 유지보수를 빙자해서 페이지는 계속 늘어났던 것으로 보인다. 그렇게 함으로써 고객측은 예산을 아꼈을지 모르겠으나 프로젝트 종료후 사용자들의 시스템 만족도는 그다지 높지 않았던 것으로 기억된다.
이 때 어렴풋이 확장가능한 프로그램을 설계한다는 것이 얼마나 어려운 것일지 감잡았던 것 같다. 더불어 수없이 찍어댔던 response.write와 response.end의 감각은 아직도 손끝에 남아있는 것 같다. 이로써 내 생애 첫번째 프로젝트는 약간의 체력적 타격과 함께 슬그머니 종료되었었다.
Posted by 망고

