바닐라 부트캠프

[WIL] 바닐라코딩 부트캠프 10주차 후기 - 코드에 당위성을 부여하자

feel2 2025. 4. 18. 15:06
반응형

 

이번주부터는 기술적인 요소보다는 소프트적인 요소에 더 힘을 주어 글을 작성하려고 한다. 이제 바닐라 부트캠프를 시작한지 10주차가 되었다. 분명 시작할때는 패딩을 입고 이곳에 왔던 것 같은데, 어느새 맨투맨을 입고 있다. 그만큼 시간이라는 것이 내 생각보다 더 빠르게 흘러가는 것 같다.

 

총 20주의 과정 중에 딱 절반의 시간이 지났다. 처음 이 부트캠프를 시작했을 때 내가 기대했던 20주 뒤에 내 모습의 절반에 지금 도달하였는가? 스스로 질문을 해본다면, 나는 아직 많이 반성을 해야할 것 같다.

여기서는 항상 강조하는 것이 하나 있다. 바로 메타인지. 자신의 상태를 객관적으로 바라보라고 한다. 한번 스스로 다음과 같은 질문을 해보자.

  • 돌아봤을 때 처음 시작했을 때의 마음과 지금의 마음이 같은가?
  • 매일 하기로 한 걸 하고 침대로 가는가?
  • 정말 바뀌기를 원하며 하루를 시작하는가?…

 

사람의 마음이라는게 시간이 지나면 조금씩 꺾여나가는게 나는 정상이라고 항상 위안했다. 하지만 이번만큼은, 이번 부트캠프만큼은 내 인생을 걸고, 마지막이라고 생각하고 열심히 하려는 각오를 가지고 신청을 했다. 내 경력을 다 떠나서, 처음 배우는 마음으로, 백지상태에서 시작한다는 생각으로 말이다.

 

그런데 10주가 지난 지금 돌아보면 나는 그렇게 하지 못한 것 같다. ‘내나름에 최선을 다하고 있었던 것 같다.’ 최선을 다한건 맞지만, ‘내나름’이라는 수식어가 붙었다. 이 수식어가 붙냐 안붙냐고 그렇게 큰 차이가 아니게 보일 수도 있다. 말이 ‘아’ 다르고 ‘어’ 다르듯이, 내 정신은 이미 한계를 생각하고 행동하고 있던 것이다.

 

나는 ‘비전공자’에 ‘다른 기업에서 원하는 경험’(내가 원하는)이 없다. 이 타이틀을 벗어나기 위해 이 부트캠프를 신청했고, 나름이라는 틀 안에서 열심히 하고 있던 것이다. 사람은 쉽게 변하지 않는다. 그래서 성공하는 사람은 빛이 난다. 변하지 않는 걸 변화를 주기 위해서 얼마나 많은 노력이 들었을까.

 

나도 변하고 싶다. 정말 변하고 싶다면 나름이라는 핑계를 버려야 한다. 그러니, 지금부터 남은 10주 동안은 정말 나름이 아니라 ‘누가봐도 최선을 다하고 있다.’ 라고 앞에 전제를 바꾸자. 물론 쉽지 않을 것이다. 그래도, 지금 잠깐의 고생이 내평생의 일을 좌우한다면, 희생할 수 있지 않을까?

 

리팩토링

 

서론이 길었다. 이번 10주차부터는 리팩토링에 대하여 조사하고, 토론을 하는 시간을 가졌다. 지금까지 내가 알던 리팩토링은 반복되는 코드를 메서드로 추출하는 정도로만 알고 있었다. 그러나 그건 정말 리팩토링의 일부에 불과하였다.

 

리팩토링이라는 유명한 책이 있는데, 그 책만 보더라도 리팩토링을 바라보는 관점이 아주 많았다. 기이한 이름, 긴 함수, 주석, 중복 코드 등 많은 요소들이 리팩토링에 관여가 된다. 예제코드와 다른 누군가와 내 생각을 나누면서 좀 더 리팩토링에 대해서 명확해지는 게 있는 것 같다.

 

예를 들어 반복되는 switch문에 대해서 이야기를 하면서 내가 준비한 예제를 다른 사람에게 설명한 적이 있다. 나는 내가 준비한 예제를 내가 완벽히 이해했다고 생각하고 설명을 했다. 그런데 설명하던 중간에 막히는 부분이 생겼다. 그냥 아는 것완벽히 아는 것이 다르다는 것이 이런데서 드러나는 것 같다. 그래서 앞으로는 그냥 아는 것완벽히 아는 것으로 전환하는 과정을 계속해서 진행하자.

 

느낀 점

 

과제를 리팩토링 하다가 내가 리팩토링한 것이 잘 된 리팩토링인지 멘토분에게 물어본 적이 있다. 멘토님이 오자마자 한 질문이 “왜 이 부분을 리팩토링 하려고 하셨나요?” 였다. 조금 당황스러웠다. 나는 리팩토링이 잘된건지 물어봤는데, 왜 리팩토링을 했는지를 오히려 역질문을 당했으니 말이다. 냉정하게 생각해보면, 순서가 맞다. 무엇을 어떻게 했는지는 중요하긴 하지만, 그것보다 중요한건 이다.

 

사실, 이 논리는 내가, 아니 모든 개발자가 추구해야 하는 프로그래밍의 본질이기도 하다. 무엇을 어떻게 구현하는지는, 조금만 검색하봐도 잘 나와있다. 중요한 건 ‘왜?’ 이다. 모든 것은 트레이드 오프이다. 이건 인생도 마찬가지다. 무언가를 얻는다는 건, 무언가를 동시에 잃는 다는 말과 같은 말이기 때문이다. 그래서 왜가 중요하다. 어떤 나름의 근거를 가지고 내가 진행을 했을 것이기 때문에 그것에 내가 스스로 확신이 있어야 한다.

 

바닐라코딩에서는 질문을 많이 하라고 한다. 오죽하면 하루에 한번 무조건 질문을 하라고 할까? 그럼 왜 질문을 그렇게 강조할까? 그건 내가 그 질문을 하기 위해 얼마나 많은 고민을 했는지 보여주는 행동이기도 하다. 고민하고, 성찰하고, 스스로의 근거를 둘 때 비로서 우리는 어떤 질문을 할 수 있는 확신이 생기는 것이다.

 

앞으로는 하루에 질문을 무조건 2번 이상 하는것이 내 목표다. 그 습관을 이 바닐라 코딩을 통해서 만들 것이고, 남은 10주가 그 습관을 만들기에 좋은 시간이 될 것이라 확신한다.

 

한줄 후기

 

근거를 가지고 삶을 이어가자.

 

 

바닐라코딩: https://www.vanillacoding.co/

반응형