2주차는 1주차보다 훨씬 빠르게 지나갔다. 아무래도 한 주를 경험했다보니 커리큘럼에 적응하여 체감상 더 빠르게 지나갔다고 느꼈던 것 같다. 몇 시에 자더라도 8시 반에는 일어나서 샤워하고 9시에 아침과 함께 피어 세션을 시작, 12시에는 점심을 먹고 19시까지 코어 타임동안 학습에 집중하고 저녁을 먹고 20시부터 자기 전까지 학습 및 구현에 집중하였다.
그럼에도 불구하고 미션 난이도에 대해서는 아직 적응하지 못한 것 같았다. 1주차에 비해 학습하는 시간도, 미션을 구현하는 시간도 더 오랜 시간을 투자하였지만 그럼에도 구현하지 못한 미션들이 더 많았다. 하지만 학습에 대한 요령이나 구현과 학습의 밸런스를 설계하는 능력은 점점 발전하고 있다고 생각이 들었다.
이번 주차 회고에서는 어떤 부분을 성장할 수 있었는지, 그리고 처참하게 실패해버렸던 부분들에 대해 고민하고 작성해보았다.
챌린지 과정을 진행하며 가장 중요하다고 생각하는 능력은 '미션을 어떻게 해결할 것인지 설계하는 능력' 이라고 생각한다. 물론, 나는 이 능력이 터무니없이 부족해서 계속되는 실패와 개선을 반복하였고 그 과정에서 많은 수의 미션을 구현하지 못한 체 제출하였다.
1주차에서 내가 개선하려고 설정했던 나만의 목표는 '미션마다 나만의 목표를 세우고, 이를 달성하기 위해 학습과 구현의 밸런스를 설정하기' 였다. 이 또한 주어진 하루 안에 어떻게 최선의 결과를 도출할 수 있는가에 대한 첫 번째 설계였다. 학습과 미션 구현의 100%를 전부 해결하는 것은 나의 수준에서는 부족하다고 생각하여, 어느 정도의 성취율을 달성해야 해당 미션에서 '성장'하였다고 증명할 수 있는 나만의 목표를 설정하는 것이다.
2주차 동안은 위의 목표에 더해서 학습과 구현을 어떻게 진행해야 더 효율적으로 성장하고 미션을 구현해낼 수 있을까에 대해 고민하고 시도해보았다.
미션을 진행하기 전에는 항상 체크리스트를 작성하였는데, 미리 내가 얼마만큼 학습할 것이고, 이를 바탕으로 미션을 어떻게 구현할 것인지에 대한 로드맵 형신처럼 체계적이고 실용적으로 작성해보도록 노력하였다.
예를 들어, "A를 학습하고 B를 구현한다" 라는 미션이 존재한다면 다음과 같이 시작해볼 수 있다.
- [ ] A 개념 학습하기
- [ ] B 구현하기
하지만 실용적으로 미션의 로드맵으로 활용하기에는 각각의 범위가 너무 크다고 생각하였다. 그래서 '학습'과 '구현'으로 섹션을 나눠서 체크리스트를 구분하였다.
## 학습
- [ ] A 개념 학습하기
## 구현
- [ ] B 구현하기
이제 섹션을 구분하였으니 각 섹션마다 세부적으로 어떤 것을 학습하고 구현할 것인지에 대해 구체화를 시켜주었다.
학습을 진행하다보면 항상 무한 루프에 빠져버려 끝도 없는 학습의 구렁텅이에 빠진 적이 많았다. 이를 방지하기 위해서 학습을 세분화시킬 때는 두 가지 기준을 갖고 작성하였다.
두 가지 기준에 해당하지 않는 개념에 대해서는 과감하게 스킵하여 진행하였다. 최종적으로 내가 학습을 하는 목표는 미션 구현에 있기 때문에 구현에 필수적인 내용들을 우선적으로 공부하였다.
'내가 공부하고 싶은 내용인가'라는 기준은 나의 욕심에 의해 설정된 감이 없지 않아 있다. 예를 들어, 나는 node.js
를 주로 사용하기 때문에 CS적인 지식을 학습하면 이게 과연 node.js
에서는 어떻게 구현되었을까? 라는 호기심이 항상 생겼고 이런 부분에 대해 학습을 함께 병행하였다.
## 학습
- [ ] A 개념 학습하기
- [ ] A 개념 구체화 1
- [ ] 다이어그램을 통해 데이터 흐름을 시각화해보기
- [ ] A 개념 구체화 2
- [ ] Node.js에서 A 개념은 어떻게 구현되는 지에 대해 학습
- [ ] A 개념 구체화 3
구현 단계는 처음 미션을 마주하였을 때 구현 방법이 머리 속에 온전히 그려진다면 설계가 가능하지만 대부분 그런 경우는 없기에, 첫 설계는 요구사항에 맞춰서 전체적인 흐름만 작성한다
## 구현
- [ ] B 구현하기
- [ ] B-1 함수 기능 구현
- [ ] B-2 함수 기능 구현
그리고 학습 단계가 끝나고 실제 미션을 구현하면서 점점 구체화를 진행하면서 설계를 진행하였다. 예를 들어, B-1 함수 기능
을 구현하기 전에 학습이 완료되었다면 해당 기능을 구현하면서 활용할 수 있는 지식들이 존재할 것이다. 그렇다면 그런 지식을 어떻게 녹여낼 것인지에 대해 적어주었다. 그 이후에는 직접 미션을 구현하면서 실제 추가되어야 하는 기능들을 하나씩 추가해나가며 구현을 설계하였다.
## 구현
- [ ] B 구현하기
- [ ] B-1 함수 기능 구현
- [ ] A 개념을 활용하여 기능을 구현
- [ ] 유효성 검사
- [ ] 세부 기능 1 구현
- [ ] 출력 검사
- [ ] B-2 함수 기능 구현
이렇게 작성하면 전체적으로 학습과 구현을 이끌어갈 수 있는 하나의 로드맵처럼 활용 가능한 나만의 체크포인트가 작성되고 실제 학습과 구현을 진행하며 설계를 수정하고 개선해나가면서 하루의 미션을 진행하였다.
사실 그렇게 고급적이거나 유효한 노하우는 아니라고 생각한다. 다들 설계를 해야한다면 비슷한 방식으로 미션 설계를 진행할 것이다.
기존의 나는 초반 설계없이 미션을 구현하는 것이 몸에 익숙하였고 그 과정에서 잘못된 길로 빠져버리거나 효율적으로 미션에 접근하지 못했다. 그럼에도 이렇게 회고에 포함시킨 이유는 2주차에서 미션 속에서 성장을 체감할 수 있었던 가장 큰 요소 중 하나였기 때문이다. 조금 더 성장하기 위해 효율적으로 미션에 접근해볼 수 있는 방법을 고민하였고 그 과정에서 미션 설계에 대한 중요성을 느껴 미션을 들어가기 전 조금 더 공을 들여 체크포인트를 작성하였고 이를 통해 미션에서 더 효율적으로 학습과 구현을 해나갈 수 있었고 그러한 경험이 나에게는 성장을 체감할 수 있었던 포인트라 판단하여 회고를 작성하게 되었다.
이렇게 고민하여 설계를 하더라도 아직까지 미션을 제대로 구현하지 못하고 제출하거나 필요한 학습의 개념들을 빼먹는 부분들이 많았다. 설계하는 방법 또한 계속된 실패와 경험을 통해 부족한 부분을 개선하여 발전나가고 싶다.
1주차가 끝난 후, 나는 1주차의 미션 난이도 흐름과 동일하게 월요일은 쉬운 미션부터 시작하여 점차 어려워질 것이라 생각하였다. 그렇기에 수요일까지는 몸 상태를 관리하고 목요일 미션은 어려운 만큼 시간을 투자하여 늦은 시간까지 미션에 집중하겠다라고 나름의 계획을 세웠었다.
누구나 그럴싸한 계획을 갖고 있다. 쳐맞기 전까지는
월요일에 새벽 4시 반에 자버렸다.
나는 밤 새는 것을 정말 못하는 사람이라는 것을 알 수 있었다. 주말동안 푹 쉰 탓인가 월요일은 의욕이 넘쳐서 늦게까지 졸음을 참아가면서 공부하였다.
하지만 문제는 그 이후였다. 화요일부터 컨디션 관리가 하나도 되지 않았던 것 같다. 아침에 일어나서 저녁까지는 사실 졸음을 참을 수 있는 수준이기에 미션에 집중할 수 있었는데 점점 시간이 지날수록 눈 앞이 흔들리기 시작하였다.
새벽이 되어가자 '정신이 몽롱해진다'라는 것을 그 때 제대로 느끼기 시작하였다. 모니터가 흔들리고 손 발이 조금씩 떨리면서 제대로 코드를 작성할 수가 없었다. 신기하게도 하나도 졸리진 않았다. 다만, 잠을 자지 않으면 쓰러질 수도 있겠구나라는 생각에 새벽 2시에 모든 것을 그만두고 졸음에 청하였다.
그 여파는 금요일까지 이어졌다. 사실 화요일 이후 부터 신체적 이상은 없었지만 제대로 집중할 수 없다는 느낌이 들었다. 나도 모르게 멍을 때리거나 금방 집중력이 분산되어서 자꾸 30분마다 딴 짓을 하고 있는 나를 발견할 수 있었다.
결국 시작이 중요하다라는 것을 알 수 있었다. 챌린지 과정은 단거리 경주가 아니라 마라톤이라는 것을 몸소 체험해볼 수 있었다. ☠️
하루에 모든 것을 투자하여 쏟아부으면 나머지 요일들은 기본만도 못하게 된다는 것을 뼈저리게 느끼면서 무기력하게 보냈었던 것 같았다. 사실 미션을 하다가 응급실에 실려가는 것은 하나도 걱정되지 않았다. 하지만 응급실에 실려간 다음 날에 미션할 수 없다는 사실이 걱정되었다.
앞으로 남은 기간동안은 챌린지에 대한 열정을 한 번에 쏟아붇는 것이 아니라 잔잔하게 오래 불태울 수 있는 방법을 고민해볼 필요가 있을 것 같다. 적어도 3시에서 3시 반 사이는 꼭 자야 5일을 버텨낼 수 있다고 생각이 들었고 그 전까지 어떻게든 마무리를 해놔야 할 것 같다.
이 주제는 2주차에서 나의 가장 큰 고민이자 나를 향한 분노였다.
나는 개발자로서 목표가 있었고 마지막 발악으로 네이버 부스트캠프에 참여하여 열정을 불태우고 있다.
베이직 과정에서는 나의 수준보다 조금 어려웠지만 최선을 다하여 각 미션마다 만족스러운 기능을 구현하여 제출할 수 있었다. 그렇기 때문에 챌린지로 넘어가는 것에 큰 걱정은 없었다. 나는 최선을 다해서 만족스러운 기능을 구현하였고 내가 보여줄 수 있는 것은 최대한 많이 보여줬다는 생각에 뿌듯함을 갖고 있었다.
이러한 뿌듯함은 나의 성장을 체감함과 동시에 챌린지 입과에 대한 불안감을 상쇄시켜주었다. 챌린지에 입과하면 너무 행복하겠지만 입과하지 않더라도 나는 최선을 다했다 라는 것을 스스로 느낄 수 있었다.
하지만 챌린지 과정에서 나의 모습은 부족함의 연속이었다. 학습의 양도 많았고 미션의 난이도도 높았기 때문에 하루 안에 학습과 미션을 모두 마무리한다는 것은 나의 수준에 비해 너무나도 어려운 도전이었다. 그럼에도 어떻게 든 마무리하여 제출하면 그 다음 날 피어 세션을 통해 내가 놓친 부분들이 이렇게나 많다는 것을 깨달으며 한 번 더 좌절하게 된다.
2주차에는 '미션마다 나만의 목표를 세우고, 이를 달성하기 위해 학습과 구현의 밸런스를 설정하기' 라는 목표를 설정하여 진행하였고 어찌보면 비전공자인 나는 당연하게도 학습의 밸런스가 더 많아질 수 밖에 없었다.
그렇게 학습만 점심부터 밤까지 계속하는 날이 많았고 새벽이 되어서야 미션 구현에 들어가게 되니 자연스럽게 미션을 구현하지 못한 날들이 점차 쌓여갔다. 물론 매번 나의 학습 목표는 달성하였고 그로 인해 미션을 통해 정말 배워가는 것도 많았고 이를 미션에 녹여보려 노력하였다는 점에서 성장을 체감한 순간들도 많았다.
그럼에도 불구하고 '저조한 미션 구현률' 이 계속 내 머리 속에 맴돌았던 것 같다. 챌린지 과정의 오티에서도 "미션을 모두 구현해내는 것을 불가능할 것"이라고 말씀해주시며 마스터님께서도 "학습과 구현에 대한 자신만의 기준을 세워서 성장하는 것이 더 중요하다"라고 강조해주셨지만 불안감은 쉽게 사라지지 않았다.
왜 나는 성장하고 있는데 불안할까?
이런 질문을 계속 고민하다보니 아무래도 '멤버쉽 입과에 대한 불안감'으로 연결되고 있음을 느꼈다. 진심으로 멤버쉽 과정에 입과하고 싶다. 하지만 계속되는 미션 구현의 실패로 자존감이 낮아지고 다음 날의 피어 세션을 통해 나만 구현하지 못했음을 체감할 때 불안감이 급증해왔던 것 같다.
멤버쉽 입과의 기준이 미션 구현률이 아니라는 것은 머리로 이해하지만 대한민국 교육의 폐해(아닐 수도 있음)인가 라는 생각으로 결과에 대한 점수만을 생각하게 되고 자연스레 성장하는 것보다 점점 "어떻게 해야 입과하지? 그리고 그 기준에 나는 어떻게 행동해야 하지?"라는 질문에 집중하게 된 것 같다.
그래서 하루는 불안감에 미션 구현에 집착하게 되다보니 결국 성공적으로 미션을 제출할 수는 있었지만, 짧은 학습으로 인해 학습에 대한 만족감도 체감하지 못하였고 과도한 AI 의존으로 인해 허탈감만 느꼈었던 미션이었다. 이렇게 미션을 제출하고 나서 스스로에 대해 화가 정말 많이 났었던 것 같다.
무협지나 성장 스토리를 갖는 이야기를 보면 보통 나처럼 생각하는 사람들은 일찍 죽거나 2인자의 자리를 차지하고 있다.☠️
나 또한 저렇게 생각하지 않을 줄 알았다. 난 당연히 성장하기 위해 캠프에 참여하였고 당연히 미션 구현만이 정답은 아니라는 것도 이해하고 있다. 그럼에도 불구하고 성장한 나를 증명할 수 있는 가장 명백한 수단은 '점수'이고 미션 구현률이 그 점수라 생각을 하고 있었던 것 같다. 낮은 점수가 계속 나오니 점차 성장에 대한 의구심이 생기고 점수를 높이고자 답안지를 참고하니 당연히 허탈함과 분노가 몰려올 수 밖에 없을 것이다.
냉정하게 바라보면 역시 미션에 비해 나의 실력이 명백히 부족했기 때문에 불안감이 생기는 것이다. 이게 딱 베이직 과정과 챌린지 과정의 차이라고 생각한다. 베이직 과정은 성장도 체감하고 나의 실력으로 미션을 구현해낼 수 있기에 자심감도 생겨날 수 있었다. 하지만 챌린지 과정에서 동일하게 학습으로 성장을 체감할 수 있지만 미션을 구현해내지 못하니 불안감이 샘솟은 것이다.
사실 해피엔딩은 아니다. 내가 갑자기 천재가 되어서 학습없이 미션을 모두 구현해버리거나 문서를 한 번만 봐도 학습을 전부 해버릴 수 있는 초능력이 생기지 않는 이상, 이 문제는 챌린지가 끝나기 전까지 해결되지 않을 것이라 생각한다.
결국, 이 문제를 받아들이는 나의 태도를 변화시켜야 한다고 생각한다. 이러한 고민에 대해 피어 세션, 릴레이 프로젝트에서 많은 대화를 나눴었고 사람들의 많은 공감과 위로를 받을 수 있었다. 나의 이런 추한 모습들을 바라봐주시고 공감과 위로를 해주셔서 정말 감사하였다.
그 중 한 분의 말씀을 통해서 생각을 전환해볼 수 있는 계기가 되었다.
챌린지 과정에서 성장에 집중하지 못한다면 남는 게 없을 것 같다(다소 의역)
나는 "현재가 아니라 너무 미래에 집중하고 있지 않았나?"라는 반성을 해볼 수 있었던 것 같다.
내가 지금 할 수 있는 최선은 현재에 집중해서 오로지 미션에만 몰입하는 것이다. 미래는 현재의 결과이다. 멤버쉽 입과라는 목표에 집중하기 위해서 미션 구현에만 몰입하고 억지로 AI를 끌어다가 사용하면서 '점수'에만 집중하기에는 지금의 이 시간들이 나에게는 너무 소중하였다.
비록 점수를 놓치더라도 미션을 하나하나 음미하면서 내가 공부하고 싶은 내용들을 실컷 학습하고 서툴더라도 AI가 아닌 학습한 내용을 통해서 작성한 기능 한 줄이 나에게는 큰 성취감과 만족감을 주었다. 그리고 이 길이 나의 부족한 실력을 매꿔가는 지름길이라고 판단이 들었던 것 같다.
기존에는 "멤버쉽 입과하지 못하면 안된다"라는 강박이 있었다면 지금은 "멤버쉽을 입과하지 못하더라도 지금의 성장 기회를 놓치고 싶지 않다" 라고 생각으로 전환시킬 수 있게 되었다.
물론, 멤버쉽 입과를 포기한 것은 아니다. 절실함은 변함없다. 하지만 나를 조금 내려놓고 챌린지의 목표를 다시 설정하고 나아가기를 결심한 것이다.
나는 항상 중용(中庸)을 중요시 한다. 지금까지 나의 욕심에 의해 "멤버쉽 입과"에만 치우쳐져 고민하고 불안해왔다고 생각한다. 그렇다고 욕심을 모두 제거하고 성장에만 치우쳐져 몰입하는 것도 좋은 방법은 아니라고 생각한다. 내가 생각하는 중요한 방법은 "성장을 목표로 하되, 성장을 어떻게 증명할 수 있을까?"를 고민하는 것이었다.
기존의 '점수'를 모조리 제거하고 채점 기준 또한 나만의 방식으로 다 바꿔버렸다. 나의 채점 기준은 '성장'이고 현재의 성장을 위해 챌린지에 몰입할 것이다. 다만, 내가 챌린지 시험을 치루고 있다는 환경은 인지하고 있어야 하기 때문에 내가 어떻게 성장하였는지, 그리고 이 성장을 통해 어떻게 미션에 반영하려고 하는지에 대해 증명하는 것 또한 내가 해결해야 할 문제 중 하나라고 생각이 든다.
학습을 위한 설계(체크리스트), 학습의 근거, 학습의 내용을 철저하게 문서화를 시켜 최대한 다이어그램을 통해 내가 이해한 내용들을 시각화해볼 생각이다. 그리고 중요한 것은 'Learning by Doing'이기에 미션 구현에서 나의 학습을 어떻게 녹여냈는 지 서술해보는 것도 증명의 수단이 될 수 있을 것 같다.
글을 적다보니 회고보다는 칭얼거림에 가까웠던 것 같다. 그래도 글을 작성하면서 아직 명료하지 않았던 생각들에 대해 다시 고민해볼 수 있었고 나만의 기준을 확실하게 정의해낼 수 있어서 기쁘다.
다음 주도 마찬가지로 나는 학습에 더 많은 시간을 투자하여 몰입할 것이고 이를 어떻게 증명해낼 것인지에 대해 여러 시도들을 해나갈 생각이다.
스터디카페에서 새벽까지 미션을 하다가 집에 갈 때, 이런 저런 고민을 하다가 우연히 발견했던 쇼츠가 떠올랐다.
성장도, 피곤함도, 나의 실력에 대한 부족함도, 나의 추함도 모두 경험하면서 챌린지 과정에 임하고 있지만 한 가지 변하지 않는 것은 전력을 다해서 최선을 다하고 있다는 사실이다.
"언젠가 누군가가 그 때 그 시절에 최선을 다했는가?" 라고 물어봤을 때, 벅차오르는 눈물과 함께 "그렇다"라고 말할 수 있기를 바란다.
저도 초반 설계 없이 일단 코드를 적고 보는 습관이 있었다 보니까 나중에 설계를 다시 하는 일이 잦더라고요. 그래서 지금은 학습과 설계를 꼭 하고 코드를 작성하려고 해요. 손으로 가볍게 그려보는 게 도움이 많이 되더라구요.
저도 매번 9시~10시에 자다가 새벽에 자고 밤을 새니까 몸이 말도 안 되게 늘어지더라고요. 저는 어떻게든 잠을 안 자려고 다리를 그렇게 떨었던 것 같아요. 그래서 3주차 때는 어떻게든 컨디션은 꼭 챙기려고 합니다!
중용, 저도 좋아하는 개념이에요! 어느 한 쪽에 치우쳐지지 않고 편안한 상태. 남은 챌린지 과정에서 중용을 유지하면서 학습할 수 있도록 노력해봐야겠습니다.
이번 2주차도 정말 고생 많으셨습니다, 3주차도 화이팅이에요!🙌