네이버 부스트캠프 챌린지 후기

챌린지가 끝나고 한참 지난 이 시점에 이제서야 회고를 적게되었습니다;
계기: 전 수료생분들이 기록의 중요성을 언급해주셔서 작성하게 되었습니다.
정말 짧게 느껴졌던 4주간의 여정을 보내면서, 과정에서 배우거나 깨달은 점이 정말 많았습니다.
그 내용을 전부는 아니지만, 기억나는 만큼, 최대한 작성해보도록 하겠습니다.
모든 내용은 개인적인 경험/생각에 기반하여 작성되었습니다.
미션
미션은 매일 12시 하루나 이틀 단위로 제공되며, 어느 정도 방향과 작업할 내용을 제시해주지만 전부를 떠먹여주지는 않습니다.
GitHub Gist에 업로드하고, 각자만의 체크포인트를 세워서 하나하나 해치우는 방식으로 진행되었습니다.
레포지토리가 아니라 Gist인 점에서 조금(?) 불편했습니다.
그 과정에서 자신이 학습한 내용과 고민을 녹여내는 것 또한 중요한 부분이었다고 생각합니다.
스터디 그룹
매주 몇 명씩 그룹이 배정되어 한 주간 팀 활동을 진행했습니다.
혼자 개발 외길 인생만 살아온 저로서는 정말 황금 같은 기회였고, 새롭고 유익했습니다.
같은 목표를 향해 같은 주제로 열심히 공부하며 의견을 나누는 경험은 부스트캠프의 가장 큰 장점이라고 생각합니다.
피어 컴파일링
정해진 스터디 그룹끼리 서로의 코드를 컴파일하고 실행한 뒤, 체크리스트에 의거해 작업물을 평가했습니다.
이 과정에서 "이렇게 해석하고 구현할 수 있구나", "이 부분은 이렇게 처리할 수도 있구나"와 같은 좋은 인사이트를 많이 얻었습니다.
동시에 제가 부족한 점과 잘한 점에 대한 기준을 세우고 스스로를 객관적으로 평가할 수 있는 기회가 되었습니다.
피어 세션
각자 요구사항을 어떻게 해석하고 접근했는지, 과정에서 어떤 트러블슈팅을 경험했는지 공유했고, 잡담도 나눴습니다.
특히 저는 이전까지 "왜 이렇게 코드를 작성했는가 ?"라는 질문에 설명하는 능력이 부족했습니다.
그러나 피어 세션을 준비&진행하면서 설명력을 키울 수 있었고, 근거 기반으로 의사결정을 정리해서 말하는 감을 잡을 수 있었습니다.
어떻게 보냈는가
평균적으로 오전 8시 30분에 일어나 새벽 4시까지 작업하는 날이 대다수였습니다.
강제적인 것은 절대 아니었고, 제가 즐겁고 몰입하고 싶어서 그렇게 했습니다.
잠을 안자고 샌적도 많습니다.
다만 몸은 머리와 다르게 따라주지 않았고, 컨디션 저하로 인해 학습과 구현의 품질이 떨어지는 날이 있었습니다.
심지어 미션 하루를 거의 반 포기한 날도 있었습니다.
3주차 막바지쯤 정말 많이 지쳐, 노션에 고민 과정을 적어 슬랙에 공유했는데, 많은 분들께서 위로해주셔서 큰 힘이 되었습니다.
좋은 동료들 덕분에 주말 동안 재충전하고, 4주차 미션을 순조롭게 진행했습니다. (정말 순조로웠을까 ?)
무엇을 깨닫고 배웠는가
1) 큰 덩어리를 작은 덩어리로 쪼개 차근차근 진행하기
챌린지의 하루 단위 미션은 하루 만에 완벽히 학습&구현하기 어려운 난이도였습니다.
운영진분들도 모든 미션을 완벽히 수행하는 것은 불가능하다고 여러 번 말씀하셨습니다.
따라서 거대한 목표를 작은 단위로 쪼개고, 하나씩 완수하면서 학습 -> 구현을 반복하는 전략이 필요했습니다.
작은 단위로 쪼개서 하나씩 완수해 나가며 성취감을 쌓는 것이 다음 단계로 나아가는 원동력이 되었습니다.
마스터님 말씀처럼 구현과 학습 중 어느 한쪽에만 치우치지 않도록 균형을 유지하려고 했습니다.
2) 육체와 정신은 연결되어 있다
저는 스스로를 채찍질하며 미션을 완수하려 애썼습니다.
그 과정에서 평소 생활 리듬이 무너지고, 컨디션이 급격히 저하되면서 학습과 코드의 퀄리티도 하락했습니다.
어느 날은 이틀에 걸친 미션에서 전날 작성한 코드가 너무 엉망처럼 보이고, 자괴감이 들어 거의 진행하지 못하기도 했습니다.
이 날이 앞서 언급한 3주차 막바지였습니다.
몸이 지치니 생각도 부정적으로 흐르더군요. 그래서 육체와 정신은 연결되어 있다는 사실을 체감했습니다. 그때 마스터 JK님의 메시지가 큰 위로와 방향 제시가 되었습니다.
무더운 여름철이라 지치기도 하고 할 일이 줄어들지 않는 것 같아 머리가 아프기도 하죠
이 순간이 학습 과정에서 고점을 지나는 결정적 순간 일 겁니다. 챌린지는 CS를 학습하고, 학습하는 지식을 무언가 직접 만들면서 경험하고 연결하는 순간들의 이어져있습니다.
과정을 어느 하나만 선택하거나 그렇다고 둘 다 완벽해야 한다고 강박을 갖기 보다는
작은 단위로 나누고 반복하고 점차 연결시키는 게 가장 좋기는 합니다.
미션의 요구사항은 학습하고 연습해보기 좋은 내용들이지만 덩어리가 크기 때문에 작은 부분을 찾아내서 작게작게 구현해보는 게 필요합니다. 목표가 그 자체로 크면 다 못하면 실망감도 크기 마련이죠. 그래서 작은 목표를 자주 실행하면서 성취감도 쌓아야 합니다. 그래야 전체 중에서는 못한 게 있더라도 작은 목표를 어느 정도 쌓고 나면 쉴 때도 만족하고 쉴 수 있습니다. 그렇지 않으면 매번 찝찝하거든요.
무엇보다 "내가 한 부분은 인정해주는 자세"가 필요하다는 말씀이 정말 공감되었습니다.
이후 컨디션 회복에 집중하고, 긍정적 사고를 되찾기 위해 노력했고, 끝까지 포기하지 않았기 때문에, 결국 챌린지를 수료할 수 있었습니다.
3) 문서화의 중요성
미션을 단순히 해결하는 것뿐이 아니라, 동료가 이해할 수 있게 고민 과정과 접근 방법, 근거를 문서로 남기는 일이 중요했습니다.
실무를 경험하지 않았지만, 좋은 동료는 "지금 무엇을 하는지 투명한 사람"이라는 글을 본 기억이 있습니다.
하루의 작업을 명확히 설명하고 기술하는 능력은 협업의 기본입니다.
또한 피어 컴파일링과 운영진 평가를 위해서도 문서화는 필수였습니다.
이건 평가하시는 운영진분들도 마찬가지겠죠 ? 하하
4) AI를 활용하는 방법
학습량과 구현량이 방대하다 보니 AI를 적극 활용할 수밖에 없었습니다. 다만 사고를 AI에 맡겨 복사/붙여넣기만 반복하는 방식은 성장을 저해한다고 판단했습니다.
그래서 먼저 머릿속의 설계를 자연어로 문서화하고, 이를 AI와 토론하며 수정&보완한 뒤 구현을 시작했습니다. 구현 중 모르는 부분이 생기면 키워드&자료 추천을 받아 추가 학습을 진행했습니다.
여러 방식이 있겠지만, 저는 이러한 사전 설계 -> 토론 -> 구현 -> 학습의 순환을 꾸준히 유지했습니다.
결론과 나의 생각
지속 가능한 개발자가 되려면, 그 과정을 즐기고, "그냥 돌아가니까 멈춰야지", "늘 하던 방식대로만 하자"가 아니라, 의도적으로 낯선 환경에 자신을 던지고, 다른 시선으로 생각해 보며, 나가 아닌 모두의 성장을 위해 노력해야 한다고 느꼈습니다.
또한 내가 한 작업의 근거를 명확히 설명할 수 있어야 하며, 포기하지 않고 꾸준히 정진하는 자세가 필요하다고 생각합니다.
네이버 부스트캠프의 타이틀을 얻고 싶든, 좋은 기업에 취직하고 싶든, 나의 역량을 높이고 싶든 모두 좋습니다.
그러나 지속 가능성을 위해서는 항상 꾸준하고 성실하게 임하는 태도가 필요합니다.
급변하는 IT 바닥에서 살아남기 위한 필수 역량이라고 생각합니다.
CS 지식도 꼭 열심히 공부하셔야 합니다. (가능하다면 영어도...)
마치며

기회를 주신 네이버 부스트캠프, 그리고 함께하며 으쌰으쌰한 동료들께 진심으로 감사드립니다.
뒤늦은 챌린지 후기를 쓰며, 앞으로 나아가기 위한 계획과 다짐이 더욱 굳어지는 것을 느낍니다.
언젠가 이 글을 다시 보며, 그 기억이 새록새록 떠오르는 미래의 개발자로 성장해 있기를 내심 기대해봅니다.
함께했던 모든 분들, 하시는 일마다 잘 되시고 원하시는 바를 이루시길 기도합니다. (무교입니다)
읽어주셔서 감사합니다.