&&

[나는 왜 방황했는가] 2023/11/06

할 일이 쏟아졌다. 잘 해내는지가 문제가 아니라, 일단 쏟아지는 것들이 너무 많았다. 각종 조별 과제, 살아남기(=졸업하기) 위한 시험 준비, 그런데 성취했다는 느낌은 없는, 그러다 보니 껍데기 인생을 산다는 느낌이 스스로를 잠식했다."네가 선택한 거에 집중해", "나

2023년 11월 6일3min read

할 일이 쏟아졌다. 잘 해내는지가 문제가 아니라, 일단 쏟아지는 것들이 너무 많았다. 각종 조별 과제, 살아남기(=졸업하기) 위한 시험 준비, 그런데 성취했다는 느낌은 없는, 그러다 보니 껍데기 인생을 산다는 느낌이 스스로를 잠식했다.

"네가 선택한 거에 집중해", "나머지는 기대치를 낮춰"... 말은 쉽다. 개발을 잘 하기 위해서 900페이지가 넘는 자바스크립트 서적도 읽어야 될 거 같고, 전반적인 CS 지식을 습득하기 위해 정보처리기사도 공부해야 될 거 같고, 더 좋은 코드를 짜기 위해 관련된 책도 읽어야 될 거 같고, 그 와중에 내가 배운 지식들로 포트폴리오급 서비스도 구현해야 할 거 같고... "XX 나보고 어떡하라고..." 이런 생각이 들었다, 솔직히.

하나하나 풀어나가는 것만이 유일한 방법이라고 여기고 천천히 다시 돌아봤다.

정보처리기사 : 자격증을 취득했다는 사실 자체만으로는 더 이상 경쟁력이 없는 시대이다. 그런데 나는 왜 정보처리기사를 공부할까? 비전공자로서 CS 지식을 얇고 넓게 배울 수 있는 가장 효과적인 수단이라고 판단했기 때문이다. 그런데 범위가 넓다. 그래서 문제를 통한 학습을 하기로 결정했다. 최근 10회의 시험에서 문제에 나온 선지를 모두 기본서에 표시한 뒤, 해당 부분을 벨로그에 정리하기로 했다. 그렇다면 나는 결국 두꺼운 책에서 시험에 나오는 부분을 위주로 공부할 수 있게 된다. 결과를 만들어나가는 공부를 할 수 있게 된 것이다. 출제되지 않은 부분에 대한 두려움은 내려놓을 수 있게 됐다. 이 시험은 기본적으로 60점만 넘으면 되는 시험이고, 10회 간 출제되지 않은 개념은 그리 중요하지 않다. 모든 징검다리를 밟아야만 길을 건널 수 있는 것은 아니다.

모던자바스크립트 Deep Dive & 함수형 코딩 : 개발 서적을 왜 읽어야 할까? 장기적으로 실력을 향상시키기에 가장 검증된 방식이 '책을 읽는 것'이기 때문이다. 실력 향상이란 무엇일까? 많은 단어를 수집하는 것이다. 인풋이 적은데 많은 아웃풋을 바라는 것은 논리적으로 맞지 않다. 문제는 너무 두꺼워서 부담이 된다는 것이다. 한 페이지에서 한 단어만 수집하자. 이해하자는 것이 아니다. 이해는 '하는 것'이 아니라 '오는 것'이다. 수집하고 읽어보고 넘어가자. 다음에 또 읽을 때 이해하면 된다. 이해됐다면 한 페이지에서 또 다른 단어를 수집해서 공부하면 된다. 정보처리기사와 마찬가지로 모든 징검다리를 밟아야만 길을 건널 수 있는 것은 아니다.

서비스 구현 : 서비스를 직접 만들어보는 학습 방식은 논란의 여지없이 가장 효율적인 개발 학습 방법 중 하나이다. 그런데 왜 직접 만드는 것이 중요하고, 동시에 어려울까? 정보처리기사, 모던자바스크립트 Deep Dive, 함수형 코딩과 같은 책을 읽는 이유는 단어 수집이다. 다른 표현으로 점을 찍는 과정이다. 문제는 단어를 제대로 이해했다는 것은 자유롭게 활용할 수 있다는 것을 전제로 한다. 점과 점을 연결하는 과정이 바로 '만들기'다. 만들기를 통해 매일 수집한 점들이 이어질 수 있다. 그래서 중요하고, 그렇기에 어렵다. 문제는 지금까지의 TIL은 "나 이만큼 만들었어요"라는 식의 일기에 불과했다. 트러블 슈팅, 파일 구조 설정, 로직 설명과 같은 굵직한 이유가 없다면 더 이상 일기를 작성할 이유는 없다고 판단했다. 구현만이 개발이라는 편협한 관점을 내려놓고 본질적인 것들에 집중해야겠다는 결정을 했다. 구현이 중요하지 않다는 게 아니다. 개발의 최종 목적이기 때문이다.

학교는? :빅데이터 분석가 송길영 박사님의 "그냥 하지 말라"라는 책을 읽게 되었는데, 앞으로 남을 직업은, 큰 틀에서 '플랫폼 프로바이더'와 '콘텐츠 크리에이터' 두 가지라고 한다. average는 이제 AI가 쳐내는 시대가 됐다. 굳이 고르자면 나는 '플랫폼 프로바이더'가 되기로 결정한 셈인데, 문제는 AI 때문에 한 분야에서 Outlier가 되어야만 하게 됐다. 그러려면 남들보다 많이 해야 되고 많이 하려면 오랜 기간 해야 된다. 시대의 흐름 자체가, 다 챙기는 제너럴리스트를 더 이상 원하지 않는다는 뜻인지도 모르겠다.(=한 분야에서 육각형이 되는 것과는 결이 다른 얘기이다.) 공채의 종말, 경력 채용의 확대... 다 같은 방향을 보고 있는 게 아닐까.

결론은, 나의 주의력과 시간이라는 자원은 한정적이기 때문에 Outlier가 되려면 더하기보다 빼기에 집중해야 된다. 살아남을 정도로만 하겠다. 이 결정이 나중에 발목을 잡아도 어쩔 수 없다. 이 정도 깡다구도 없으면 무슨 일을 할 수 있을까 싶다.

그래서 1. 정처기는 주 2회 공부한다. 한 번에 6챕터를, 결론으로(=문제로)부터 공부한다. 3-4시간 정도가 좋겠다. 정처기 하는 날에는 정처기만 한다. 2. 모던자바스크립트 Deep Dive와 함수형 코딩은, 각각 주 1회 3-4시간 정도 읽는다. 이때, 모든 걸 이해하겠다는 압박을 내려놓고, 여러 번 읽으며 단어를 수집하겠다는 마인드로 접근한다. 3. 이렇게 하면 평일 하루가 비게 되는데 이때 React 공식문서를 읽는다. 마찬가지로, 그날 눈에 보인 단어를 수집한다는 느낌으로 접근한다. 공식문서 역시 3-4시간 정도만 읽는다. 4. 평일에 할당된 것들을 하고, 점을 연결해야 할 필요를 느낄 때 서비스를 구현한다. 주말은 당연히 구현에 집중한다.

언젠가 또다시 바빠서 지치고, 새로운 과업에 방황할 수 있지만, '궁리하는 성실함'은 놓지 말도록 하자.