가장 빠르게 성장하는 개발 공부법
이 글을 쓰는 이유
최근 꽤 많은 중학생, 고등학생들에게 진로 멘토링을 할 기회가 있었다. 질문을 받으며 항상 느끼는 생각은 이렇다. “왜 직접 찾지 않을까?”, “왜 지금 시작하지 않을까?”
우리나라에서 학창 시절을 보낸 분들이라면 공감할 것 같다. 12년 교육은 대부분이 ‘대학 입시’ 구멍을 통과하는 것에 맞춤화 되어 있다. 그 구멍은 아주 특정 분야의 지식에 관련한 문제를 빠르고 정확하게 풀기를 학습시킨다. 수많은 반복 훈련을 통해 우리는 국어 45문제, 수학 30문제, 과탐 20문제를 짧은 시간안에 정확하게 풀 수 있는 사람으로 키워진다.
그런데 혹시, 이런 생각 해본 적 있는가? ‘몇년동안 배우는 것 치고는 양이 적지 않나?’ 실제로 돌이켜보면 각 수능 과목의 ‘개념 자체’는 그렇게 방대하지 않다. 물리라면 물리 전체 학문의 매우 일부분, 국어 문법이라면 국어 문법의 매우 일부분을 배운다. 다만, 그 일부를 ‘자동 재생’ 될만큼 반복하는 것이다.
근데 문제는, 특히 ‘개발자’를 꿈꾸는 이들에게 문제가 되는 것은 바로 ‘배우는 내용이 적다.’라는 것이다. 마치 파이썬으로 예를 들면, 조건문-반복문-함수까지 배운 후에 그것을 미친듯이 반복하며 마스터하려고 노력하는 것 같다. 그런데, 저것들만 알아서 무엇인가를 완성할 수 있는가? 많은 분야가 그렇겠지만, 개발은 특히 아니다. 파이썬 문법을 아무리 잘해도 매번 새로운 라이브러리의 사용법을 익혀야 한다. 머신 러닝을 하려면 pandas는 기본이요 numpy, scikit-learn, scipy 등도 알아야 하고 pytorch에 요즘은 peft나 LLM 사용법도 알아야 할 것만 같다. 이러한 라이브러리의 공식 문서를 들어가 보았는가? 이런 라이브러리는 매우 방대한 문서를 가지고 있다. 그만큼 기능도 많고 복잡하다. 이것들을 학생 때 하려던 것처럼 학습할 수 있을까? 불가능하다.