컴퓨터 싸이언스와 다른 듯 비슷한 듯
대학원 2년이라는 시간이 길 수도 있지만 짧을 수도 있기 때문에 부디 시행착오 많이 없이 애초 계획한 것과 얼추 한 방향으로 무던히 흘러가길 바라는 마음으로 글을 쓴다.
내가 시작하는 ITU MSc Software Design(Development)의 커리큘럼은 아래와 같다.
필수과목에 더해 세부 전공을 골라야 하는데 스스로 프로그램을 짤 수도 있지만 나 같은 범인은 대략 세 가지 중에 하나 골라야 할 듯하다. 여기에 더해 2학기, 3학기에는 한 과목씩 선택과목을 고를 수 있다.
세부 전공을 먼저 살펴보면 이렇다.
1) Business Analytics
Introduction to Artificial Intelligence (7.5 ECTS)
Big Data Management (technical) (7.5 ECTS)
Data Mining (7.5 ECTS)
: 경제, 사회 쪽 배경이 있는 사람에게 적합
2) Technical Interaction Design
Mobile App Development (7.5 ECTS)
Applied Information Security (7.5 ECTS)
Technical Interaction Design (7.5 ECTS) :
: 인문 쪽 배경이 있는 사람에게 적합
3) Software Development & Technology
Functional Programming (7.5 ECTS)
Practical Concurrent and Parallel Programming (7.5 ECTS)
Applied Algorithms (7.5 ECTS)
: 자연과학 쪽 배경이 있는 사람에게 적합
1학기에는 자바를 위주로 객체지향 프로그래밍 언어를 배운다. 딱히 선수 요건은 없었다. 이외에 Discrete Mathematics와 Software Engineering 수업이 있다. 아무래도 첫 학기에 가장 중요한 과목은 단연 프로그래밍일 테다. 덴마크의 대학교육 시스템은 매년 9월에 시작하고 10월 중간에 한 주 가을방학이 있으며, 시험은 12월 1월에 걸쳐 있고, 1월 마지막 주에 다음 봄학기가 시작한다. 겨울방학이 따로 없는 대신 여름방학이 길다. 미리 학사일정을 살펴보니 1월 20일이 있는 그 주에 1학기 마지막 시험이 있던데, 그 말인즉슨 한 주도 마음 편히 쉬지 못하고 바로 2학기가 시작된다는 뜻이다.
2학기를 살펴보면 1학기보다 훨씬 강도 높으리라 쉽게 짐작할 수 있다. 알고리즘 데이터 구조와 데이터베이스를 동시에 배우는가 하면 2학기부터 세부전공과 선택과목을 들어야 한다. 1학기 중에도 스스로 데이터 구조나 데이터베이스를 맛보기로 해놔야 2학기에 와르르 무너지지 않을 것 같다.
아래 표는 같은 학교(ITU)의 Software Development 학사 프로그램이다. 학사 과정은 덴마크어로 진행되어 과목 명도 덴마크어지만 영어 대비 쉽게 유추할 수 있다. 3년이다 보니 알고리즘/데이터 구조를 2학기에 배우고 3학기에 데이터베이스를 배우는 것도 알 수 있다.
Software Design 석사과정은 솔직히 Computer Science 석사와는 레벨이 완연히 낮다. 오히려 Software Development 학사 전공과 커리큘럼이 거의 유사한 것으로 보인다. 당연히 비전공자를 한데 모으고 남들 학사 3년간 배울 내용을 2년에 몰아 가르치는 것이니 숨 돌릴 틈은 없을 듯하다.
학교에 지원할 때는 학교 추천대로 인문 쪽 백그라운드를 가졌으니 막연히 Technical Interaction Design 세부 전공을 고르고 선택과목으로 웹을 더 공부해서 프론트엔드 쪽으로 직업을 갖고 싶다고 생각했다. 아무래도 비전공자가 개발자가 되는 경우에 웹 개발이 가장 진입장벽이 낮아 보이기도 했다.
그런데 학교를 갈 날이 다가오면서, 생각이 계속 바뀌고 있는데 이마저도 파이널 버전이 아니다. 막상 학교를 가서 이 분야의 사람들도 만나보고 여러 경험을 하다 보면 더 안목이 넓어지리라 믿는다. 그리고 아무래도 학교 입학이 확정되지 않았을 때는 나 스스로를 "비전공자"로 분류했다면, 학교 합격이 확정된 이후부터는 2년 공부의 대가로 나름 "전공자"가 될 것이기 때문에 최대한 학교 안에서만 배울 수 있는 고급 지식을 배우고 싶다는 욕심이 생겼다. 인터넷에 널린 양질의 자료가 대체할 수 없는 학교에서의 지식, 그런 게 요즘 세상에도 과연 있을까 의구심도 들지만, 이런 생각 끝에 Software Development & Technology 세부 전공을 고르면 어떨까 고심하고 있다. 이 고민은 1학기를 무사히 마치고 더 해보는 걸로 하자.
나는 두루뭉술한 문과 전공과 직업을 가졌었기 때문에 덴마크에서 마땅한 직업을 찾는 데 어려움을 겪었다. 그래서 이번에는 정말 구체적이고 확실하게 드러낼 수 있는 것을 배워서 내세우고 싶다. Technical Interaction Design의 경우 다시 한번 애매한 포지션에 놓이게끔 할 것 같다는 생각. 또한 졸업 후 잡을 구할 때, 내가 경쟁할 사람이 누가 되나 생각해보면, UX/UI를 전문적으로 배운 사람, 멀티미디어/웹 개발을 전문적으로 배운 사람, 또는 부트캠프를 졸업한 사람 등 상당히 많을 것 같다. 커뮤니케이션 공부에 실패했는 패인 중 하나가, 내가 덴마크인 고객과 면대면 하는 데 이득이 없기 때문이었다고 생각한다. 같은 맥락으로 내가 UX/UI를 하고 유저에 가까운 프론트 쪽 일을 하면 클라이언트와 면대면 할 일이 많을텐데, 별로 나와 맞지 않을 것 같기도 하다.
Business Analytics는 글쎄, 막연하게 수치와 통계가 주된 일이 될 것 같아서 확 끌리는 게 없다. 하면 또 하겠지만 별로 즐겁지는 않을 것 같다.
그렇다면 Software Development & Technology인가... 이 세부 전공에서 배우는 내용이 어떤 것인지 감을 잡을 수도 없다. 'Functional Programming 배워서 뭐에 쓴담?' 이런 수준 낮은 궁금증만 들뿐이다. 졸업할 즈음 미래의 내가 다시 이 글을 본다면, 지금보다는 더 해박한 지식과 내 선택에 당위성이 있기를.
선택 과목 두 개는 Frameworks and Architectures for the Web와 Scalability of Web Systems 연계 과목을 차례대로 듣고 싶다. 아무래도 내 진로로 웹 서비스 개발 쪽으로 가장 마음이 기울고 있는데 많은 도움이 될 것 같다.
학교 수업을 통한 프로젝트 자체가 내 포트폴리오가 될 수 있다는 점이 어떤 의미로 마음이 놓인다. 대학 졸업 즈음 취준생일 때나, 지난번 경영대학원에서 커뮤니케이션을 공부할 때는 회사의 인재상, 회사에서 필요로 하는 능력에 나를 갈아 넣어야 겨우 맞춘다는 느낌이 있었다. 자소서를 이런 의미에서 자소설이라고들 하지 않나. 학교 수업에 더하기로 무엇을 해야만 하나의 이야기를 만들어낼 수 있었다면, 이번 전공에서는 학교 수업에서 맥락만 놓지 않는다면 분명 얻을 수 있는 게 많을 것 같다. 다시 한번 내게 공부할 기회가 왔다는 점이 정말 소름 끼치게 감사한 순간이 하루에도 몇 번씩 있다. 그 감사함을 잃지 말자.