본문 바로가기

후기

[ 네이버 부스트캠프 9기 ] 챌린지 최종 회고 (웹모바일)

8월 9일 챌린지 수료식을 끝으로 부스트캠프 챌린지 과정을 마치게 되었다.

챌린지 과정에서 무엇을 경험했고 무엇을 배웠는지 담백하게 후기를 작성해보려고 한다.

챌린지에서 무엇을 경험하고 배웠나?

부스트캠프 홈페이지에 챌린지 과정을 다음과 같이 설명하고 있다.

제한된 시간 내 강도 높은 프로그래밍 미션 해결에 도전하며 한계를 극복합니다.
컴퓨터 공학의 기초 지식을 프로그래밍에 적용하고,
커뮤니티 안에서 동료와 함께 학습하고 방법을 연습하는 과정입니다​.

 

챌린지 과정을 마치고 나서 위 설명을 보니 아주 정확하다.

 

구현하면서 배우는 CS지식

부스트캠프에서는 CS지식을 기반으로 하는 미션이 하루 단위로 주어진다.

미션은 요구사항이 주어지고 요구사항에 맞게 설계하고 구현한다.

 

미션의 난이도는 매우 높다.

난이도가 높기 때문에 하루 안에 모든 요구사항을 구현하는 것은 정말 어렵다.

나도 요구사항을 모두 구현한 미션은 정말 손에 꼽는다.

그래서 미션이 어렵다는 것을 인정하고 그 과정에서 CS지식들을 배워가야지라고 생각하는 게 좋다.

 

미션의 요구사항에 맞게 직접 설계하고 구현하면서 관련 CS지식에 대해 더 찾아보게 된다.

그냥 찾아보는 것과 구현하기 위해서 찾아보는 것은 다르다.

구현하는 과정에서 찾아보는 것이 더 오래 기억에 남는 것을 느꼈다.

 

함께 성장하기

부스트캠프 챌린지 과정동안 슬랙을 통해 동료와 항상 소통할 수 있는 환경이 주어진다.

슬랙에서는 미션을 진행하면서 궁금했던 점을 질문하거나 도움이 되는 자료들을 공유할 수 있다.

슬랙에서 동료분들이 토론하거나 공유해주시는 자료를 통해 미션 해결에 많은 도움을 받을 수 있었다.

 

매 아침 10시마다 피어세션이라는 활동을 통해 동료들과 전날 미션에 대해 얘기를 나누는 시간을 가진다.

피어세션을 통해 많은 사람들의 생각을 듣고 코드들을 보며 다양한 접근법에 대해 배울 수 있었다.

또한, 내 코드를 다른사람에게 설명하는 과정에서 내가 ‘진짜 아는것’과 ‘안다고 착각하는 것’을 구분할 수 있다.

 

챌린지 후반부에 짝프로그래밍(페어프로그래밍) 활동도 진행했는데 특별한 경험으로 기억에 남는다.

짝프로그래밍이라는 것을 들어만 봤지 그전까지는 짝프로그래밍을 제대로 해본 경험이 없었다.

그래서 이번 기회에 짝프로그래밍을 제대로 해보자고 다짐했고 짝프로그래밍 규칙들을 꼼꼼히 읽어 짝과 함께 나름 정석적으로 짝프로그래밍을 진행했던 것 같다.

드라이버에게 온전히 키보드와 마우스 권한을 주는 것이 처음에는 비효율적이지 않을까라고 생각했지만 역할을 확실히 구분하고 나니 더 몰입할 수 있었던 것 같다.

함께 서로의 의견을 공유하며 코드를 만들어가고 미션을 해결하는 과정이 정말 재미있었다.

 

몰입

챌린지 과정만큼 몰입했던적이 있나 싶다.

2박 3일 해커톤이나 1주 시험 벼락치기 등 단기간에 몰입했던 적은 꽤 있었으나 한 달동안 긴 기간동안 몰입한 것은 이번이 처음인 것 같다.

한 달이라는 시간이 금방 지나갔다고 느낀 것을 보니 몰입을 잘 경험한 것 같다.

한 달동안 몰입하면서 정말 많이 성장한 것 같다.

몰입할 수 있는 환경이 주어지면 더 빨리 성장할 수 있다고 생각한다.

 

성장했나?

견고해진 CS 지식

직접 구현하고 CS지식들을 배우면서 기존에 알고 있던 CS지식들에 살을 더 붙일 수 있었다.

1주차부터 4주차까지 잘 짜여진 미션 흐름 덕분에 이전에는 분리되었던 CS 지식 조각들이 하나로 연결되는 듯한 느낌을 받을 수 있었다.

특히 함수형 프로그래밍 미션이 가장 기억에 남는다.

미션에 대해 자세히 말할 수 없지만 함수형프로그래밍 개념 불변성, 순수함수 등에 대해 스스로 깨닫는 부분이 많아서 기억에 가장 많이 남는 미션이다.

 

요구사항 분석 - 설계 - 구현 과정 접근

부스트캠프 베이직/챌린지 전에는 설계의 중요성을 크게 느끼지 못했다.

요구사항 분석 이후 바로 구현하기에 급급했다.

그러나 베이직을 포함해 이번 챌린지 과정을 통해 설계의 중요성을 알게 되었다.

특히 문제가 복잡할수록 설계가 정말 중요하다고 느꼈다.

설계를 제대로 진행하지 않고 바로 구현에 들어간 미션들은 구현하는 정말 어려웠고 다시 돌아가기를 반복했다.

그러나 어느정도 설계를 진행하고 구현에 들어간 미션들은 보다 더 수월히 진행할 수 있었고 그 과정에서 학습하는 것도 많았다.

부스트캠프 베이직에 이어 챌린지 과정에서 '요구사항 분석-설계-구현' 프로세스에 익숙해질 수 있었다.

++ 추가로 draw.io, mermaid 등 다양한 설계툴도 알게 되었다.

 

나는 어떤 사람인가?

챌린지 과정을 통해 내가 어떤 사람인지에 대해 더 잘 알게 되었다.

강도 높은 챌린지 미션을 수행하며 나의 체력은 어떠한 지, 잠은 어느 정도 자야 적당한 지와 같은 나의 신체적 특성?에 대해 알게 되었다.

밤새고 6시간 미만으로 자면 다음날 미션하는 데 큰 타격이 왔다.

잠은 6시간은 꼭 자야한다!

 

피어세션에서 동료들이 나에게 해주는 말을 통해 내 장점이 무엇인지에 대해 정리해볼 수 있었다.

또한, 피어세션에서 내가 동료들 앞에서 내가 이해한 부분, 코드 등을 설명하면서 ‘내가 안다고 착각하는 것’과 ‘진짜 아는 것’을 구분할 수 있었다.

이외에도 챌린지에서 다양한 경험을 통해 나는 어떤 사람인지에 대해 많이 알 수 있었던 것 같다.

 

앞으로의 다짐

- 회고를 꾸준히 하자

챌린지 과정을 하면서 1일 1회고를 꾸준히 해왔다.

그 과정에서 내 자신을 되돌아볼 수 있었고 하루하루 개선할 수 있었다.

회고를 통해 더 나은 내일의 나가 될 수 있다!

 

- 깊게 학습하자

챌린지 과정 전까지는 그동안 비교적 얕게 학습한 것 같다.

'동작하면 잘 되는거지'와 같은 안일한 생각으로 코드를 구현하고 학습했던 것 같다.

그러나 이번 챌린지 과정을 통해 강도 높은 미션을 구현하기 위해 더 깊게 학습해보면서 원리를 파악하고 정리하는 것이 익숙해졌다. 그 과정이 재미있기도 했다. 최근에는 컴퓨터의 동작 원리를 설명하는 'code'라는 책도 읽고 있다.

앞으로 더 깊게 학습하기 위해 책도 많이 읽을 것 같다.

 

- 공유하자

이번 부스트캠프 챌린지 슬랙 커뮤니티를 활발히 참여하지 못한 부분이 아쉬웠다.

내가 내향적인 성격이기도 하고 많은 사람들이 존재하는 커뮤니티에 의견, 자료들을 공유하는 것이 익숙치 않다보니 좀 어려운 부분이 있었다. 그래도 조금씩 질문하고 자료를 공유하려고 노력은 했지만 더 개선을 할 필요가 있다고 생각한다.

 

 

++ 운좋게 멤버심 과정에도 입과할 수 있게 되어 4개월동안 부스트캠프 여정에 함께할 수 있게 되었다.

위에서 다짐했던 것들을 멤버십 과정에도 이어서 적용해보려고 한다!