 |
장난감과 애인 그리고 프로젝트 |
 |


김성우 sinabrlo@hanmail.net
짧지 않은 뜨거운 현업 프로그래머 생활을 잠시 접고 학교로 돌아와 컴퓨터 네트워크 분야의 학위 과정을 밟고 있다. 연구 이외에 '따뜻한 디지털 세상', 'IT 갤러리' 등의 월간지에 정보통신 관련 컬럼을 정기적으로 쓰고 있으며, 근래 개발자와 이공계를 위한 글쓰기 책을 퇴고하고 있다.
2007년 5월 29일
|
|
 |
|
과학 vs 공학
과학과 공학의 가장 두드러진 차이점은, 과학은 자연 법칙을 ‘발견’하는 것이고 공학은 이 발견된 법칙을 토대로 인간에게 유용한 무언가를 ‘만든다’는 것이다. 이는 마치 광부가 원석을 캐주어야 세공사가 보석으로 다듬을 수 있는 것처럼, 뭔가 유용한 것을 만들어내기 위해서는 과학이 그 발판이 되어야 한다. 그런데 문제는 이 발견된 자연 법칙이라는 것이 절대적이지 않다는 데 있다.
중세 유럽에서는 전염병이 돌면 마녀의 짓이라며 혼자 사는 반반한 과부들을 산 채로 불 장작 더미로 밀어 넣었다. 그렇지만 과학은 전염병이 지저분한 환경과 관련 있음을 발견하고 소독과 위생을 강조하게 된다. J.J. 톰슨은 모든 물질이 원자로 이루어져 있다는 기존 발견을 뒤엎고 원자보다 더 가벼운 녀석이 있다고 생각했다. 전자가 발견되는 순간이다. 이후 원자는 전자, 양성자, 중성자로 이루어져 있음이 발견되었고 심지어 이들도 쿼크라는 입자로 이루어져 있음이 발견되었다. 이제는 누구도 물질을 이루는 가장 작은 녀석이 무엇이다라고 이야기하지 않는다. 쿼크보다 더 작은 녀석이 발견되지 말라는 보장이 없기 때문이다. 100년 전 만해도 누구나 뉴턴의 운동 법칙을 절대 진리라 의심하지 않았지만 아인슈타인이 등장하면서 이 절대적 세계관을 덮어 버렸다. 빛과 질량 그리고 에너지가 상관관계가 있다는 놀라운 발견을 토대로 우리는 비교적 저렴한 가격에 TV와 컴퓨터를 종일 켤 수 있게 되었고 그 덕에 S1과 MOODYZ의 따끈따끈한 신작을 언제든 다운로드할 수 있는 것이다. 브라보!
거인의 어깨 위에 서서
1 더하기 1이 2라는 것은 기원전 전에 발견되었지만, 2000년이 지난 지금도 1 더하기 1이 2라는 사실에는 변함이 없고 2000년 후에도 마찬가지일 것이다. 이같이 한번 발견되면 영원한 수학과 달리 우리가 알고 있던 자연 법칙은 늘 새로운 발견으로 덮어써져 버리고 만다. 이같이 언제든 후배에게 덮어써질지 모르는 과학의 가련한 운명을 뉴턴은 ‘거인의 어깨 위에 서서(Stand on the shoulders of giants)’라며 후배에게 어깨를 내어준다는 말로 풍미했다.
그렇지만 다행인 점은 참치인 줄 알았던 생선이 기름치였더라 하는 식으로 뒤통수를 맞는 것과는 다른 차원이라는 것이다. 앞으로 예외가 발견되거나 더 근원적인 자연 법칙이 발견될 확률이 0이 아니라고 해서 지금의 발견의 중요성이 떨어지는 것은 아니다. 또 오랜 기간 예외가 발견되지 않아 절대성을 인정 받는 법칙들도 얼마든지 있다. 대표적인 것이 열역학 법칙이다.

그림. 거인의 어깨 위에 서서, scholar.google.com
뭘 해도 결국 빵이다
마대전자는 최근 정부로부터 2억 원짜리 공공 프로젝트를 하나 수주하였다. 경영진은 어떻게든 비용을 절감해 이익을 많이 남기려고 한다. 빠듯하게 프로젝트를 운영한 끝에 짧은 기간과 적은 인원을 투입해 아낀 인건비, 연동 테스트와 스트레스 테스트를 줄인 시간과 비용을 모두 돈으로 일원화하니 회계 장부상의 이익이 4000만원이 됐다. 그렇지만 배포 이후에 버그를 잡기 위해 고객사에 찾아가는 교통비, 고객 담당자에게 운영체제가 이상한 것 같다며 둘러대는 데 소비된 칼로리, 사용량이 많아지면 죽어버리는 프로그램에 로그를 걸어 놓고 종일 대기하는 인력의 인건비, 떨어진 신뢰도 때문에 야기되는 추후 영업력 감쇠 등을 비용으로 환산해 합하면 역시 4000만원이 되더라 하는 것이다.
만약 마대전자가 프로젝트 한번 제대로 해보자며 개발자들을 대거 투입하고 엄격하게 일정을 관리했다면 어땠을까. 늘어난 개발자 인건비와 야근수당 그리고 단위 테스트부터 최종 스트레스 테스트까지 제대로 하느라 추가로 소요된 시간과 비용, 여기에 컴퓨터를 켜느라 든 전기세, 물세, 통신료, 납품 기한을 맞추느라 여자친구와 한 약속을 파기해 시달린 개발자들의 정신적 스트레스 등을 모두 비용으로 환산해 합하니 결국 1000만 원의 손해가 났다. 그렇지만 배포 이후 올라가는 회사 및 참여 개발자들의 신뢰도와 명성, 그리고 별로 손댈 일이 없는 유지보수 그리고 고객사에 시달리지 않아 줄어든 비용을 환산하면 결국 1000만 원 이익이더라 하는 것이다.
이는 개발자 개인에게도 마찬가지이다. 인터페이스를 설계하고 문서 쓰는데 줄인 시간만큼 고객의 불편하다는 불평에 문제를 수정하는 데 시간을 들이게 될 것이고 테스트를 안 해 아낀 시간만큼 배포 후 해당 버그를 고치는데 결국 비례해서 시간을 들이게 될 것이다라는 것이다. 마찬가지로 미리 신경을 많이 쓰고 열심히 프로젝트를 해서 더 들인 에너지만큼 배포 후 그 에너지만큼 덜 신경 써도 되는 것이다. 결국 어떤 전략을 택하건 합하면 빵이 되는 것이다.
해도 안 해도 결국 똑같다는 허무주의가 깊이 내포된 열역학 제1법칙 이야기가 개발자인 우리에게 주는 교훈은, 지금 쏟고 있는 에너지가 배포 이후 결국 어떤 형태로 나타날 것인지 힌트를 준다는 것이다.
 |

|
그렇지만...
그런데 여기서 간과해서는 안 될 것이 두 가지 있다. 첫째, 장기적으로는 어떤 전략을 취하건 합하면 빵이 되지만, 단기적으로 관찰했을 때는 내가 택한 전략에 따라 이익이 될 수도 손해가 될 수도 있다. 둘째는 에너지와 돈 그리고 스트레스에도 질이 있어서 좋은 것이 있고 나쁜 것이 있다는 것이다. 세계대회에서 우승해 상금으로 받은 1000만원과 하기 싫은 일을 몇 개월 밤새가며 해서 받은 1000만원의 질은 분명히 다르다.
반복되는 일만큼 지겨운 것도 없다. 지겹다 노래를 부르던 프로젝트가 끝나면, 이내 새로운 프로젝트에 근질근질한 것이 개발자들이다. 새 장난감과 새 애인 그리고 새로운 프로젝트는 언제나 아드레날린을 쭉쭉 뿜게 해주기 때문이다. 어떻게 하건 빵이라지만, 이왕이면 같은 기간 내에 새로운 일에 더 도전하는 것이 행복지수를 높이는 데 도움이 될 것이다.
열역학 제1법칙에 의하면 프로젝트 기간 내에 좀 더 스트레스 받고 제대로 하는 것이 같은 기간 내에 새로운 일을 더 많이 하게 해 줄 것이다. 들인 시간만큼 결국 아끼게 될 테니 말이다.
[지난 developerWorks Column 보기]
|
 |
|
 |