본문 바로가기

계획(꿈)

컴퓨터 연구 분야, 석/박사

반응형

학부졸업생 - 실질적으로 연구를 할 능력이 없다고 생각합니다. 그래서 개발을 위주로 하지요. 보통 님이 사용하시는 윈도우즈라든가 MS워드, 한글, 인터넷 익스플로러, 오피스.. 그리고 컴퓨터 게임등등을 개발하게 되지요.

석사졸업생 - 학부생보다는 조금 더 학문적인 역량을 쌓은 고등엔지니어로 생각합니다. 물론 졸업 후 취업을 할 때는 경력직으로 들어간다는 말은 아닙니다. 신입으로 들어가지요. 하지만 보통 2년 정도의 업무 경력을 인정해줍니다. 보통 학부졸업생들과 박사졸업생들 사이에 어중간하게 껴있는데요.. 보통 학부생들과 함께 개발에 임하기도 하고.. 님이 하고싶어하실만한 연구를 하는 것을 서포트하는 역할을 하기도 합니다. 연구능력을 인정받으면 때론 박사졸업생들과 동등한 위치에서 연구를 수행하기도 하지만 드문 케이습니다.

박사졸업생 - 이제 님이 생각하는 그런 걸 하는 겁니다. 새로운 것을 만들기 위해서 계속 연구를 수행하는 업무를 주로 수행하게 됩니다. 슈퍼컴퓨터도 연구하고.. 인터넷도 연구하고 그러지요.

..

그리고 물리학과와 컴퓨터과학 혹은 컴퓨터공학과는 다소 괴리가 있습니다. 학부에서 물리학을 전공할 경우 대학원에서 이어서 컴퓨터과학/공학을 전공할 때 도움이 됩니다. 왜냐하면 수학적인 이해력이 상대적으로 더 뛰어날 수 있기 때문이지요. 컴퓨터과학 내에서도 정말로 어려운 부분.. 즉 수학이 중심이 된 이론을 하는 분들은 보통 학부를 컴퓨터학과와 수학과를 복수전공을 한 분들이 많습니다. 그리고 박사로 올라가서 순수하게 컴퓨터를 하는 거지요. 아닌 사람들도 있습니다. 저희과의 K모 교수님은 제가 알기로 학부부터 박사까지 계속 컴퓨터만 하셨고 23살에 박사 따시고 교수가 되셨는데.. 순수 이론뿐만 아니라 Computer Vision이나 Bioinformatics 쪽의 응용에서도 명성을 날리시고 계시죠.

그럼 이제 슈퍼컴퓨터를 이야기 해 봐요.

아니 그냥 우리가 일반적으로 쓰는 PC를 얘기해보죠. 사실 예전에는 PC의 중심이 되는 메모리라든가 CPU.. 등등을 대학에서 연구를 하고 만들고 그랬었어요. 하지만 사실 이제는 너무 복잡해져서 불가능합니다. 그래서 대학에서는 보통 자그마한 한 부분을 연구하고 시뮬레이션으로 실험을 해서 그걸로 연구결과를 보고합니다. 이건 사실 소프트웨어쪽이라기보다는 다소 하드웨어쪽에 가까운데요. 이런 걸 하는 건.. 전기저자공학, 컴퓨터공학 그리고 컴퓨터과학 쪽의 Computer Architecture라는 쪽에서 많이들 연구합니다. 그리고 실제로 만드는 것은 이제 회사에요. CPU를 만드는 것은 보통 Intel이나 AMD같은 곳들이고.. 메모리쪽은 이제 삼성이 잘 하지요.

그리고 컴퓨터가 돌아가는데.. 그냥 대충 기계들만 가져다 붙였다고 돌아가는 게 아니에요. 그래서 그 위에 시스템 레벨의 소프트웨어가 올라갑니다. 그냥 윈도우즈가 설치된다고 생각하면 되는데요. 이게 무엇을 하냐면 하드웨어를 실질적으로 제어를 합니다. 그냥 단순히 프로그래밍만 하면 되지 않느냐? 아닙니다. 수십년동안 연구되어온 굉장히 어려운 학문입니다. 특히 이게 군사용이나 로봇용으로 쓰이는 실시간 운영체제 쪽으로 넘어가면 더 어려워지구요. (사실 일반 컴퓨터에 올라가는 것도 어렵기는 매한가지긴 합니다)

그 위에 애플리케이션이 올라가야 하는데.. 바로 못 올라갑니다. 왜냐하면 사람들이 흔히 사용하는 C/C++ 프로그램 언어를 컴퓨터는 이해를 못 해요. 그래서 중간에 통역사가 필요합니다. 그게 바로 컴파일러라는 건데.. 이게 사람들이 구현하는 프로그램을 컴퓨터가 이해하는 프로그램으로 변환시켜주지요. 그런데 이것도 굉장히 힘든 분야에요. 이건 흔히 컴퓨터과학과의 Systems 쪽 분야에서 하는 겁니다.

그리고 이런 정도가 갖추어지면 그 위에서 다양한 걸 하죠. 일단 글자들만 보이는 것보다 그림도 같이 보는 걸 사람들이 좋아하죠? 그래서 그래픽이라는 걸 하는데.. 이게 어떻게 돌아가는 원리인지 궁금하지 않나요? 이게 90%가 수학이고 10%가 프로그래밍입니다. 결국은 주어진 조건에 맞추어서 어떻게 화면에 서로 다른 색의 점들을 찍을 건지를 결정하는 건데.. 매우 복잡하고.. 이게 결국엔 컴퓨터 게임의 그래픽이나 영화에 사용되는 거지요. 이걸 컴퓨터과학과의 Graphics라는 분야에서 합니다. 그리고 여기서 파생되어서 Real Computing이라는 것도 있구요. 또 다른 것들과 접목이 되어서 HCI (Human-Computer interaction)이라는 분야도 있습니다.

또 님 인터넷 사용하시죠? 이건 Networking이라는 분야인데요. 요즘 추세는 단순한 Wireless를 넘어서서 자동차를 타고 빠른 속도로 이동하면서도 빠르고 안정된 서비스를 이용하는 Vehicular Network이나.. 새롭게 변하는 Networking 환경에서 보안을 강력하게 하는 등.. 그런 연구들도 많이 이루어지고 있습니다. Systems에 흔히 포함시키기도 하는데, 때로는 Networking이라고 따로 부르기도 합니다.

그리고... 또 뭐가 있을까요. 뭐 요즘 로봇로봇.. 말이 많죠? 여기에 컴퓨터과학과의 Artificial Intelligence 분야에서 많은 연구를 합니다. 가장 대표적인 예가 DARPA Grand Challenge같이 무인 자동차의 인공지능을 만드는 거죠. 이건 미국의 CMU와 Stanford University에서 잘 하고 있지요. 모두 컴퓨터과학입니다. 그 외에 2족보행 로봇. 한국은 기계과에서만 하지만 미국에서는 2족보행 로봇의 인공지능을 컴퓨터과학과에서 담당합니다. 그런데 이 내부적으로도 굉장히 많이 나뉜답니다.

그 외에도 또 다양한 분야들이 있어요.

..

그리고 물리학과는 이런 것과 전혀 다른 것을 연구합니다. 정말정말 더 밑바닥으로 내려가서.. 오히여 컴퓨터과학/공학에 직접적으로 연관이 되기 보다는.. 재료공학과에 더 직접적으로 연관이 될 수도 있을 것 같네요. 물론 사견입니다. 예를 들자면 LCD를 판넬을 만든다거나 반도체를 만들 때.. 물리학적인 배경이 매우 중요하거든요. 제 친구가 학부를 물리학을 하고 지금 석/박사를 재료공학을 하고 있습니다.

..

고등학생들이 미래의 진로에 대해서 미리 엿볼 수 있는 기회가 매우 적은 것이 현실이라서.. 좀 안타깝습니다. 저도 사실 컴퓨터과학과로 진학하기 전까지 컴퓨터과학이라는 게 도대체 뭘 하는건지를 정확하게 몰랐으니까요.

뭐 어쨌거나.. 만약에 님이 정말 기본 원리에 관심이 많으시다면.. 전 수학과나 물리학과, 혹은 통계학과에 진학하기를 권합니다. 그리고 부전공이나 이중전공으로 컴퓨터, 전기전자 등을 전공할 수 있겠지요. 그리고 연구를 수행하기 위해서는 해당 학과로 직접 진학을 해야합니다. 수학이나 물리학을 좋은 성적으로 공부할 능력이 된다면.. 그 배경으로 컴퓨터과학과같은 전공의 석사로 진학해서 컴퓨터 이론의 배경을 좀 더 강하게 하시고.. 궁극적으로 박사를 지원하세요. 그러면 제가 위에서 언급한 저런 분야들 중에서 하나를 고르고.. 또 그 중에서 특정 세부 이론을 하나 찍어서 계속 연구하게 될 겁니다.
반응형