-
부트캠프를 마치며 : 5개월 간의 변화TIL (Today I Learned)/회고 2021. 2. 10. 15:39
* 이하 회고록은 부트캠프에 대한 회고가 아닌 지난 5개월에 대한 지극히 개인적인 회고입니다. 혹여나 부트캠프를 고민하시는 분들이 이 글을 읽는다면, 해당 글이 (부트캠프를 선택하는) 의사결정에 영향이 안 갔으면 하는 마음에 안내글을 먼저 적습니다.
어느 기관이든지 자신이 하기에 따라 다르겠지만, 부트캠프는 교보재가 있는 하나의 스터디 모임 정도이기에, 개인이 어떻게 하냐에 따라 결과가 크게 상이할 수 있음을 인지하셨으면 합니다. 결국 학생이 알아서 해야하는 곳입니다. 옳은 방향으로 열심히하여 뛰어난 성과를 이뤄낸 학생도 있고, 열심히는 하였지만 방향이 틀려서 아쉬운 학생, 방향도 노력도 부족하여 실망적인 결과를 낳은 학생들도 많습니다.
모든 교육기관이 그렇겠지만 뛰어난 학생들의 사례나 아웃풋을 보여주면서 홍보를 합니다. 자연스럽게 "해당 부트캠프를 수료하면 저 정도는 되겠다", "해당 부트캠프가 날 저렇게 만들어주겠다"와 같은 생각으로 접근하여 후회하거나 실망하는 친구들의 모습을 많이 보아왔습니다. 제가 뛰어난 학생은 아닐지언정, 그래도 5개월 동안 해당 부트캠프를 경험한 입장에서 감히, 조심스럽게 말씀드리자면 그것은 "해당 부트캠프 덕분"이 아닌 "자신에게 맞는 올바른 방법으로 그만한 노력을 했기에" 이룬 결과입니다.
이하 글은 지극히 개인적인 에세이일뿐이며, 해당 부트캠프의 회고 및 장단점 등은 별도 포스트로 다뤄보도록 하겠습니다.
1. 기회의 창

기회의 창이 열렸을 때, 단백질 섭취를 해줘야 한다. 처음 개발 공부를 시작할 때, 무엇부터 공부를 해야할지, 어떤 식으로 하는 것이 나에게 맞는 건지 등 모든 것이 막막했다. 공식문서나 유명하다는 강의나 책을 보아도 절반을 이해하기가 힘들었다. 입문자 수준에 맞춰 쉽고 라이트하게 설명해주는 콘텐츠 정도만 이해할 수 있었다
하지만 지금은 기술서적이나 공식문서 혹은 블로그 등 타 개발자들의 글이 읽히고 이해가기 시작했다. 마치 문맹이 글을 배워 책을 읽을 수 있는 느낌이랄까. 물론 어려운 내용들을 100% 이해하는 것은 아니지만, 새로운 스택이나 개발 관련 컨텐츠들을 이해하고 거부감 없이 수용할 수 있다는 것이 장족의 발전이라 생각한다. 단순 기능 구현에만 급급해하지 않고, 언어와 프레임워크를 좀 더 심도 깊게 이해하려고 노력했었고, 프로젝트를 진행하면서 난생처음 보는 스택들을 공부하고 직접 써보면서 큰 변화가 일어난 듯 싶다. 여기서 강의나 교육기관 없이 혼자서 성장하는 방법도 터득할 수 있었다.
많은 이들이 부트캠프를 수료하면 "OOO을 배워서 OOO을 쓸 수 있습니다." 혹은 "OOO을 활용하여 해당 프로젝트 만들었습니다" 등과 같은 성과를 가장 중요시하게 생각하는 것 같다. 물론 결과물도 너무나 중요하지만, 지식의 기회의 창을 열은 것이 개발자에게는 무엇보다 중요한 덕목이며, 5개월 동안 얻은 가장 큰 성과가 아닐까 싶다.
2. 웹과 자바스크립트, 무야~호~

그만큼 신나시는 거지~ 이미 한 언어를 마스터하고 개발자적 사고만 있다면 언제든 새로운 스택을 습득할 수 있기에, 어떤 언어와 프레임워크를 사용하는지에 대해 크게 중요하지 않다는 말이 있다. 하지만 실무에서 활용하기 위해 학습하고 익숙해지는데는 분명히 엄청난 시간과 노력이 필요하고, 심도있게 공부한 각자의 전문 분야라는 것은 필요하다고 생각한다.
그런 의미에서 프론트엔드 개발자가 되기 위해 웹과 자바스크립트, 프레임워크와 라이브러리 등을 공부하여 지식을 쌓고, 실제로 무엇인가를 만들어봤다는 것은 큰 성장이었다. 처음에는 자바스크립트의 프로토타입이나 this, 비동기 로직 등에 대해 이해하기도 급급했는데, 이제는 머리 속에 자연스럽게 그려지고 이해되는 것이 신기하다. 프레임워크나 라이브러리도 단순히 사용만 하다가, 어떠한 원리로 이렇게 구현되는지 깊게 파보는 것이 꽤나 재미있고 매력있었다. 프로젝트 당시에는 Typescript, React, Hooks, Redux, Saga 등을 직접 하나하나 찾아가며 공부하고 무엇인가를 만드는 과정들이 내 실력으로 연결되어지는 듯 했다.
덕분에 자바스크립트에 더욱 빠져버렸던 기간이었던 것 같다. 아직도 별종이라고 이곳 저곳에서 무시하는 의견들도 있지만, 개인적으로는 정말 사랑스러운 언어이다. 네이티브 혹은 일렉트론을 활용해서 모바일앱이나 데스크톱앱 개발도 가능하니, 단점이 더욱 개선되어서 파이썬과 같이 더욱 강력하고 사랑받는 언어가 되었으면 좋겠다.
3. 재미를 찾다.
(왜 개발자가 됐어? 포스트의 3번째 챕터와 중복되는 내용으로 일부분을 발췌해왔다.)

꿈에서도 잔디를 심겠다... 본격적으로 공부를 시작하고 나서는 내가 짠 코드로 무엇인가 구현되었을 때 정말 짜릿했다. 몇 시간 동안 한 번도 엉덩이를 떼지도 않고, 식사도 안 하면서 고민을 하기도 하고, 밤을 새거나, 정말 자면서도 이 기능을 어떻게 구현할 수 있을지, 이 로직을 어떻게 수정해야 할지 고민했던 것 같다.
에러가 발생하거나 도저히 이해가 안되는 부분이 나올 때는, 정말 답답하고 억울해서 눈물이나 쌍욕이 나올 정도로 화가 치밀어 오르기도 하고, 그러다가 어느 순간 번아웃이 되어서 IDE는 커녕 맥북을 키기도 싫은 날이 찾아오기도 한다. 그리고 이 루틴이 다시 반복된다. 마치 여자친구와 연애하듯이 개발과 밀땅하는 내 자신을 찾아볼 수 있었다.
그리고 개발이 더 재미있어졌다. 1번 챕터와 이어지는 내용으로 개발은 공부를 하면 할 수록, 배우고 활용할 수 있는 영역이 더 무궁무진해진다. 목 매인듯이 아리송하고 답답했던 것들이 사이다처럼 이해되고 해결될 때의 그 짜릿함은 이뤄 말할 수 없다. 그리고 할 수 있는 것들이 많아지니 당연히 더 재밌어질 수 밖에 없다.
4. 학습의 재발견

예쓰!!!! 5개월 동안 늘 페어 프로그램 및 프로젝트를 진행하면서 누군가와 함께 개발을 하였다. 이해가 안되거나 모르는 부분이 있으면 페어분과 서로 알려면서 스터디도 하였다. 이때, 누군가를 알려주는 것이 이렇게 재미있고, 학습에 큰 도움이 되는지 알게되었다. 특히, 페어분이 좋으신 분이라면 더욱더. 한 개를 알려주면 두 개를 이해하고, 서로 피드백을 주고 받고 공유하고. 또한, 이 과정 중에 놓쳤던 부분을 발견하기도 하고 새로 공부할 수도 있게 되었다.

누구에게나 초급자 시절은 존재한다... 이와는 좀 다른 케이스로 당장 문제만 해결하기에 급급하신 분들을 보면서 나도 저러지는 않았을까 하며 돌아보고 반성하는 시간도 많이 갖게되었다. 문제의 답을 모르거나 에러가 발생하면, 단순히 해답만을 찾기 위해 이 방법 저 방법 시도해보다가 해결되면 끝나는 식의 자세였다. 지금 현재 대면한 문제가 어떤 문제인지, 그 문제의 원인은 무엇인지, 어떠한 해결방법들이 있을지, 이 해결방법은 어떤 원리로 해결된거였으며 다른 문제점은 무엇인지에 대한 고민이 일체 없으신 분들이 많으셨다. 해답만을 알아내기 급급하고, 문제가 패스되거나 에러가 해결되면 끝이라는 자세는 아쉬웠다.
덕분에 5개월 동안 zoom과 meet은 매일 사용하는 서비스가 되었다. 개인적으로는 오프라인을 더 선호하기에 아쉬운 점도 많았지만 온라인으로나마 수다쟁이가 되었고, 그 많은 나의 잡담과 드립을 받아준 페어분들에게 감사하다.
5. 프로젝트 설계 그리고 협업

땅불바람물마음~ 먼저, 클론코딩이나 레퍼런스 코드가 아닌 무에서 유를 만들어낸 포트폴리오가 생겼다는 것은 큰 성과이다. 단순히 아웃풋의 퀄리티보다는 협업을 통해 결과를 만들어내는 과정을 배우고 경험하는 것에도 큰 의의를 두고 싶다.
혼자만의 프로젝트 였으면 머리속과 메모장에 그리고 상황에 맞게 즉각적으로 변경할 수도 있을 것이다. 하지만 협업 시에는 혼자 작업할 때 안해도 될만한 부가적인 작업들이 많다. 그렇기에 단기간 소규모 프로젝트에서 이러한 작업들이 과하면 배보다 배꼽이 커질 수 있는 상황이 발생할 수도 있다.
그럼에도 개발이란 것은 혼자하는 일이 아니기에, 이러한 작업과 과정이 매우 중요하며, 현업에서 실무를 하기 전까지 이렇게 해볼 기회기 많지 않다 생각든다. git과 같은 협업툴 활용 능력뿐만 아니라, 팀 및 협업툴 규칙, 코드 컨벤션, 디자인 패턴 등과 같은 일련의 협업 프로세스를 직접 설계하고 경험해볼 수 있었던 뜻 깊은 시간이었다.
또한, 서비스를 개발할 때, 기획과 설계가 이렇게나 중요하고, 이렇게나 많은 시간이 걸릴지 상상도 못했다. 기획은 기획자가 하고 개발자는 설계와 개발만 한다는 어리석은 생각을 고칠 수 있었다. 기획과 설계 그리고 개발은 함께 가는 것이고, 기획가 설계가 탄탄해야 안정적이고 효율적으로 업무가 처리될 수 있다는 것을 몸소 체감할 수 있었다.
6. 터널 속 달리기

저스트 킵 고잉 맨. 세상사 모든 일이 그렇겠지만 역시 쉬운 일은 없다. 개발 자체가 재밌을지언정 성장하는 그 과정은 절대 쉽지 않았다. 하루 아침에 학생이라는 신분으로 돌아와 리스크를 껴안고 도전을 한다는 것 자체가 예상보다 훨씬 힘들었다, 특히 심적으로. 퇴사에 대한 후회와 정말 잘한 결정일까라는 내 자신에 대한 의심이 없었다라면 거짓말일 것이다. 막힐 때 오는 좌절감, 잘 할 수 있을까라는 미래에 대한 불안감, 그리고 앞으로 갈 길이 어마어마하다는 압박감까지.
그럼에도 불구하고 주위에서 응원해주는 사람들 덕분에 버틸 수 있지 않았을까 싶다. 나의 무엇을 보고 이리 믿어주고 응원해주는지 아직까지는 나도 날 잘 모르겠지만, 정말 진심으로 감사하다. 개발뿐만 아니라 개인적으로도 여러가지 우여곡절이 많았던 기간이었고, 인간적으로도 크게 성장했던 시간이 되었던 것 같다.
이 긴 터널이 끝에 무엇이 나올지는 모르겠지만, 그래도 이 터널을 밝혀주는 주위 사람들과 열심히 달리고 있는 내가 있다는 것만으로도 충분히 감사하고 감사할 일이다. 모든 것이 감사하다.
'TIL (Today I Learned) > 회고' 카테고리의 다른 글
파이널 프로젝트(Fessport) 기능 리뷰 (0) 2021.02.02 파이널 프로젝트(Fessport) 및 기술 스택 회고록 (0) 2021.02.02 퍼스트 프로젝트(Golden Time) 회고록 (0) 2021.01.10 12월 스터디 및 블로그 회고 (0) 2021.01.04 11월 스터디 및 블로그 회고 (0) 2020.12.01