'나는 비전공자인데 전공자랑 차이가 많이 나겠죠?' 주변에서 개발을 시작한다는 사람들이 꼭 내게 물어보는 리스트 중 하나이다. 물론 취업할때는 아주 조금의 불이익(?)이 있을 수도 있지만, 내 대답은 항상 그렇지만은 않은 것 같다였다. 아무래도 한국의 정서상 대학을 졸업하면 그 학과에 맞는 분야로 취업을 해야하는 분위기가 있기 때문에 관성으로 그렇게 생각하는 경향도 있고, 전공자가 비전공자보다 관련된 것을 더 많이 배운 건 사실이기 때문에 비전공자 입장에서는 움츠려들 수 밖에 없다고 생각한다.
그럼 컴퓨터 공학과를 다녔던 전공자 입장에서 비전공자와 전공자의 차이는 무엇이고, 왜 나는 비전공자도 충분히 개발을 잘 할 수 있다고 생각하는지 짧은 내 생각을 적어보려고 한다.
- 접했던 시간이 많았을 뿐이다
내가 생각하는 비전공자와 전공자의 가장 큰 차이는 접했던 시간이 얼마나 길었냐, 짧았냐의 차이인 것 같다. 포괄적으로 많은 의미를 지니지만 코드를 얼마나 많이 보고 끙끙거렸는가에 차이인 것 같다. 학과 수업을 들으면서 과제를 제출하기 위해, 중간 기말 고사에서 높은 점수를 받기 위해, 취업 준비를 위함과 같은 다양한 이유로 전공자들은 코드를 들여다 볼 수 밖에 없는 환경에 있다. 그게 좋던 싫던 간 코드에 노출되었던 시간은 절대적으로 비전공자보다 전공자가 많을 수 밖에 없다.
- 이해하는 속도
앞선 이야기와 이어질 수도 있는 이야기이다. 비전공자는 변수, 반복문, 조건문 등의 예제코드를 보고 이해하는데 시간이 전공자보다는 느릴 수 있다. 프로그래밍 언어는 문법도 제각기 다르지만, 일정 패턴을 띄고 있는데 여러 과목을 들으면서 다양한 언어를 배우게 된다. 필자의 경우 학과에서 배웠던 언어만 해도 C, Java, Javascript, python, matrab, ocamel 등 정말 많다. 수박 겉핥기 수준이지만. 이런 생소한 언어들을 많이 접하여 읽고 고민하는 시간이 있기에 새로운 언어를 학습하거나, 이미 알고있는 언어를 깊게 이해하고자 할때 비전공자보다 더 빠르게 학습할 수 있다고 생각한다.
그럼 완전히 출발선이 다른것이 아닌가?
당연히 출발선은 다르다. 어쨌던 시간은 그들이 더 많이 투자한것은 사실이니. 하지만 차이가 많이 있냐는 질문을 받았을때 아니라고 대답하는 이유를 이제 이야기하려고한다. 모든 학과가 그렇지만, 학생 개개인이 원하는 커리큘럼대로 돌아가지 않는다. 아직 진로를 정하지 못한 학생들 입장에서 웹개발, 앱개발, 데이터처리, AI모델링 등 흥미있어 하는 분야는 정말 다양하다. 그러나 학생들의 입맛에 맞게 하나하나 깊게 다뤄주지 못하고, 학교마다 다르겠지만 어떤 과목들은 트렌드가 지난 기술을 학생들에게 가르쳐주기도 한다. (어쩔 수 없다고 생각합니다. 자료도 다시 만들어야하고 인적자원도 부족하니)
그리고 가끔 내가 정말 코딩을 배우러 가는건지, 수학을 배우러가는건지 모를 정도로 수학에 정말 진심이다. 실무에서 사용하는 기술보다는 계산이론, 수치프로그래밍 등 이론을 중점으로 한 수업들이 정말 많다. 나는 웹개발에 흥미가 있었지만 정작 학교에서 웹개발과 관련해서 배운것은 4년 통틀어 2과목밖에 되지않는다. (시간으로 따지만 6개월)
즉 스펙트럼은 넓은데 정말 넓기만 하다는 생각이 강했다. 자신이 원하는 분야에 대해 스스로 공부하지 않는다면 4학년이 되서 본인만의 프로젝트 혹은 포트폴리오를 만들 수 있는 학생은 손에 꼽을 것이라 생각된다.
전공자가 배우는 것 중에 비전공자도 알면 좋은것은 어떤게 있나?
알고리즘과 자료구조는 꼭 시간을 들여 배웠으면 좋겠다고 생각한다. 그렇다고 처음부터 알고리즘과 자료구조를 배우라는 것은 아니다. 분명 그전에 흥미를 잃게 될테니. 본인이 어느정도 주어진 문제를 코드로 짤 수 있는 수준이 된다면 혹은 코드가 조금은 익숙해진 상태라면 조금씩 시간을 내어 위의 두 과목 정도는 공부해두면 좋다고 생각한다. 공부를 하게 되면서 논리적으로 코드를 작성하는 방법, 왜 효율적으로 코드를 작성해야 하는지에 대해 알 수 있게 될 것이다.
마치며
전하고 싶은 이야기는 비전공자도 전공자와 실력으로 나란히 설 수 있거나, 훨씬 더 나아갈 수 있다는 이야기이다. 그렇게 되기 위해서 필요한 것은 수학을 잘하거나, 논리적으로 생각하는 것이 뛰어난 똑똑한 머리도 아니고, 혼자 얼마나 끙끙 거릴 수 있냐에 달려있는 것 같다. 이 부분에서 비전공자들이 어려움을 느껴하며, 나 역시 동감한다. 전공자들은 과제 혹은 시험이라는 강제적인 요소때문에 메달려있을 명분이 있지만 비전공자들에게는 이런 명분은 없고 본인의 의지에 의해 움직여야하기 때문에 불리한 입장이라고 생각한다. 끙끙거려야 하는 이유를 스스로 만들고, 본인이 납득할 수 있는 코딩을 공부해야하는 이유를 가지고 있었으면 좋겠다.
마지막으로 비전공자들이 공부할 때 기죽지 않았으면 좋겠다. 다 그런 '내가 공부머리가 없나?' 라는 생각을 하는 시기가 누구에게나 있었다. 나 역시 지금 생각해보면 간단한 장바구니 만들기 예제를 그때 당시 구현하는데 2주가 넘는 시간이 걸렸던 기억이 있다. 고민하는 시간을 꾸준히 늘린다면 당신도 스스로 개발자라고 말할 수 있는 시간이 반드시 올거라 생각한다.
'개발관련 > 마인드' 카테고리의 다른 글
내가 생각하는 웹 개발자의 장점 (0) | 2023.10.13 |
---|---|
웹사이트 처음부터 끝까지 스스로 만들 수 있을 때 | 풀스택 개발자 장점 (0) | 2023.09.04 |
1인 개발을 준비하고 있다면 알고가야 할 점 (0) | 2023.08.03 |
풀스택 개발자 - J커브로 코딩실력이 늘었던 내 이야기 (0) | 2023.07.20 |
개발자 동기부여 - 자신만의 프로젝트를 만들어보자 (0) | 2023.06.29 |