10월 282011
 

요즈음 아이티 업계에서 들리는 소리는 내가 느끼기에 거의다가 아이티업계의 환경에대한 이야기가 많다.

대학교에 대해서 커리큘럼이 실무를 잘 반영하고 있지 못하다라는 말도 많이 나온다. 이 포스텡을 작성하는 시점에서 컴퓨터과학과 대학원생인 내가 생각하기에 두가지 연구 테마로 나뉘는 것 같다. 문제를 해결하는 것과 기존것을 합치고나 정말 새로운 것을 만드는 등의 새로운 분야를 개척하는 것이다. 물론 나는 문제해결쪽에서 더 일하고 있다.

우리가 역사를 배우는 목적은 기존에 일어났던 사건들을 리뷰하여 앞으로 있을 사건의 해결책을 볼 수 있지 않을까라는 생각일 것이다. 역사 자체를 연구하는 것과 배우는것은 다른 문제이다. 어쨌든 대학교 컴퓨터과학 커리큘럼은 아마 컴퓨터과학사를 배우는거랑 비슷한 것일 것이다. 예를들면 많은 연구 끝에 집대성된 분야에 대해 어떻게 발전해왔는지, 어떤 문제가 있어서 그것을 해결해왔는지에 대해서 배우는 것이다. 실제로 내가 회사에서 프로그램 만들때 고민했던 문제는 보통 이미 전산학 역사에서 이미 해결됬던 어렵다라던지 어느정도 해결 방향이나 결론은 나와있는 것이였다. 우편물을 자동 구분하기 위한 시스템에서 사람들이 직접 우편번호를 쳐서 구분해주는 부분이 있다. 그러면 각각 사람들에게 어떻게 우편물을 배분해 주어야 하는가? 라는 질문이 나온다면 대기열이론에서 이미 그런 비슷한 문제의 해결책이 제시되고 있다. 번역 프로그램을 가져다쓰는 것은 문제가 없지만 그 프로그램을 만든다면 이는 분명 컴파일러를 만들때 나왔던 해결책이 쓰일 것이다.

이렇듯 사실 프로그래밍 과목이아닌 것들은 기존에 것들이 이렇게 문제를 풀었음을 배우는 역사를 공부하는 것이다. 그런 주요 과목들이 없어진다고 생각해보자. 보통 한번이라도 공부했던 것들은 기억은 잘 안나더라도 “어느방향으로 찾아야 하는가?”라는 질문의 해답을 제시해준다. 물론 딜레마는 너무 역사에 사로잡혀 새로운 것을 만들기 힘들다는, 생각의 폭이 좁아진다는 문제를 들 수 있겠다. 그래서 가끔씩 쌩뚱맞은 분야의 사람이 컴퓨터과학의 발전에 이바지하는 경우가 있는지도 모르겠다.

대학교가 취업을 위한 관문 역할만 하는 것이 아니아 석사와 같은 다음 학위과정을 준비하는 것이라는 측면으로 생각해 봤을때 무작정 회사에 맞춰서 커리큘럼을 짜라는 것도 좀 생각해볼 문제인 것 같다. 이 세상에서 실무자만 중요한 것이 아니라 연구자도 그 만큼 필요하다. 모든 것을 돈 되는 것만 관심을 가진다면 어떻게 될지 뻔하지 않은가? 너무 회사쪽으로만 끌어가는 것도 연구자들 입장에서는 반론을 제기 할 수 밖에 없다. 물론 현실 자체가 대학교 진학 목표 끝에 취업이 있으니 무시할 수도 없는 것 같다는 이해는된다. 안타깝게도 나는 아직 해결책을 모르겠지만 이러한 점이 있다는 것도 이해를 해 주었으면 좋겠다.

회사 사훈이나 목표만 외우지 말고 자기가 속한 학과나 대학의 목표가 무엇인지도 한번 확인해볼 필요가 있겠다.