본문 바로가기
HOO's LIFE/HOOTips

[HOO's Q&A] 대학교 공부와 선택한 분야 공부가 다를때는 어떻게 하나요?

by Henry Cho 2021. 5. 25.
728x90

Q: 대학교 공부와 선택한 분야 공부가 다를 때는 어떻게 하나요?

Q: 학부 공부와 개인 프로젝트 중에서 무엇을 먼저 해야 할까요?

 

컴퓨터 관련 학과를 다니는 학부생 중에서도

졸업이 다가오는 3학년 또는 4학년 학부생들이 많이 물어보는 질문이다.

 

졸업이 다가옴에 따라 취업을 고민하는 학부생이나 대학원을 고민하는 학부생 모두

특정 분야에 집중해야 될 시기이다 보니 학부 공부와 분야별 개인 공부 사이에서 고민을 하게 된다.

 

또한 3학년에서 4학년 학부생이라면 어느 정도 프로그래밍에 대한 지식을 가지고 있으며,

자신이 가고자 하는 분야에 대한 방향성이 정해져 있다 보니

자신과 관련 없는 분야의 공부가 재미없어지기 마련이다.

 

특히 필자가 선택과 집중을 Bro들에게 강조하여 이야기를 나눠왔기에

일부 학부생 Bro 중에서는

"학부 공부보다 본인이 가고자 하는 분야의 공부에 더 집중해야 하는 것이 아니냐"

라는 질문을 하기도 한다.

 

컴퓨터 학과 학부생은 프로그래머가 되기 위한 준비과정이다.

컴퓨터 관련 학과를 다니는 학부생들은 대학교에서 프로그래머가 되기 위한 준비 과정을 거친다.

대부분의 한국 컴퓨터 학과의 학부생들은 이전에 프로그래밍을 접한 경우가 많지 않다.

 

반면에 요즘 초등학생들은 놀이로 코딩을 배우면서

미리 프로그래밍에 대한 적성과 흥미를 살펴볼 수 있는 기회가 있다.

 

또한 최근 들어 중학교, 고등학교 일부에서도 프로그래밍 수업이 통해

학생들에게 프로그래밍을 접할 수 있는 기회를 제공한다.

 

그렇다 보니 상대적으로 현재 한국 학부생들은 대학교에 오기 전에 프로그래밍을 접할 기회가 많지 않았다.

대학교 1학년, 2학년 때에는 프로그래밍이 무엇이며, 프로그래밍에는 어떤 것들이 있는지 알아가게 된다.

3학년 4학년 쯤이 되어서야 자신이 하고 싶은 분야를 정할 수 있게 되지만 다가오는 졸업에 마음이 조급할 수밖에 없다.

 

컴퓨터 학과 대학교 공부는 기본 베이스이며 공통적이다.

전공마다 공부하는 내용이 다르기에 전문적이라고도 볼 수 있지만

사실 필자가 느끼기에는 공통적이고 기본적인 내용을 학부생 때 배운다.

결론부터 이야기를 하자면 컴퓨터 학과 수업을 잘 들어야 한다는 것이다.

 

프로그래머라는 직업에서도 다양한 분야별 프로그래머가 존재한다.

특히 4차 산업 시대에는 프로그래머의 다양화와 전문화가 이루어지다보니

프로그래머라는 같은 직업임에도 불구하고 다른 분야의 프로그래밍 일을 하기가 어렵다.

 

이런 사회적 변화 속에서 컴퓨터 공학이라는 전공에서는 특정 분야의 교육을 학부생에게 가르치기가 어렵다.

학부생 중에서는 보안 전문가를 꿈꾸는 개발자가 있을 수도 있고

Datascience 분야 공부를 하고 싶거나 웹 전문 개발자를 하고 싶을 수도 있다.

 

그렇다 보니 대학교에서는 학부생들이 어떤 개발자를 하고 싶은지에 대해서 알 수 있도록 도와주는 역할을 하는 것이다.

여기서 도와주는 역할에는 다양한 분야에 대한 Introduction 또는 기본 수업을 통해

어떤 분야의 프로그래머 있는지에서 대해서 알 수 있다.

 

또한 기본적인 프로그래밍 교육은 분야가 다르더라도 필요한 부분이 있다.

예를 들어 파이썬 언어를 살펴보자.

파이썬을 통해서 다양한 프로그래밍 작업을 수행할 수 있다.

그런데 파이썬 언어 자체를 모른다면 어떠한 프로그래머도 될 수가 없다.

 

반대로 파이썬 언어를 완벽히 이해한다면, 추후에 파이썬을 활용한 프로그래밍 작업을 수행할 수 있다.

심지어 다른 언어일지라도 하나의 언어를 Master 한다면 다른 언어를 이해하는데 매우 매우 매우 도움이 된다.

 

또 다른 예를 살펴보자.

가끔 학부생들 중에는 "시간도 없는데 이론이나 수학적 개념을 학부 때 왜 배우는지 모른다"라고 한다.

"그냥 프로그램 개발만 가능하면 되는 것 아니냐"는 것이다.

필자도 학부생 때 특히 머리가 조금 커졌다 싶은 Junior 쯤 되니,

이론적인 부분이 왜 중요한지 이해가 되지 않았다.

왜냐하면 프로그래밍 개발을 어느 정도 할 수 있다 보니 돈 버는 능력이 충분하다고 잘못 생각한 것이다.

 

프로그래머라는 직업은 근본적으로 직접 문제를 해결하는 직업이 아니다.

치킨은 살 안 쪄요 살은 내가 쪄요처럼 문제는 컴퓨터가 푸는 것이지 개발자가 푸는 것이 아니다.

프로그래머는 컴퓨터에게 문제를 어떻게 푸는지에 대해서 알려주는 역할을 하는 것이다.

 

컴퓨터에게 프로그램을 작동하게끔 알려주기 위해서는 알고리즘 개념에 대한 부분도 필요하고

컴퓨터의 전반적인 원리를 이해해야 응용하여 적용하기가 훨씬 수월하다.

 

예를 들어 컴퓨터 이론 자체가 프로그램 개발하는데 쓸모가 있다는 것이 아니라

컴퓨터 이론을 통해 컴퓨터에 대한 원리와 개념을 파악한다면 응용이 가능해진다.

 

한마디로 프로그래머란 배우는 걸 똑같이 하는 게 따라 하는 게 아니라

응용하고 배운 것을 활용하는 것이 최종 목적인 것이다.

 

똑같은 일을 반복하는 것이 아닌 자신만의 스타일로 개발을 할 수 있어야 하는데

그러한 기본적인 공부를 바로 학부생 때 배울 수 있다.

 

학과 공부 -> 분야별 개인 공부

결론은 학과 공부를 소홀히 해서는 안된다는 것이다.

자신이 천재적인 재능과 확고한 특정 프로그래밍 분야에 대한 자신이 있다면 대학교를 포기해도 된다고 생각한다.

왜냐하면 IT 유명한 개발자들도 자신의 일에 집중하기 위해서 대학교를 포기한 경우가 많기 때문이다.

 

하지만 일반적으로 본인의 실력이 학과 수업마저도 완벽히 하지 못한다면,

자신의 분야별 공부를 하는 것도 쉽지는 않을 것이다.

대학교 수업은 프로그래밍 분야에 있어서 어느 쪽이든 도움이 되는 기본 베이스 공부이기 때문이다.

 

"그럼 학과 공부만 하나요?"

 

학과 공부를 어느 정도 이해하고 시간적 여유가 있다면 그때서야 욕심을 내서 자신의 분야 공부를 할 때인 것이다.

결국 본인이 특정 분야의 개발자로 성장하기 위해서는 대학교 공부는 기본이고

추가적으로 자신의 분야에 대한 공부를 해야 하는 것이다.

 

그것의 한 방법으로 개인 프로젝트를 하는 게 좋다는 것이다.

프로그래머는 항상 눈으로 보는 게 아니라 직접 해봐야 실력이 늘기 때문이다.

필자도 학부생 때 특히 초반에는 "이딴 걸 왜 하지"이었지만,

결국에는 대학교에서 배우는 건 프로그래머로써 일을 한다면 언젠가 다 도움이 되는 기본 지식이었다.

 

728x90

댓글