본문 바로가기

NEXTSTEP

[TDD, 클린 코드 with Java] 17기 수료후기

우선 이 강의는 NEXTSTEP에서 진행하는 강의인데

재직자를 대상으로 교육을 진행하는 곳이다!

우리가 지향하는 교육은 고통스럽고 힘듭니다

NEXTSTEP의 교육철학이라고 한다..

실제로 이 과정의 수료율은 10 ~ 20% 인데

무려 80만원을 지불하고 자발적으로 신청하는 강의인데도 수료율이 그정도 밖에 안된다니 얼마나 힘든걸까..

뒤에서도 말하겠지만 정말 고통스럽고 힘들었다.. 교육철학을 아주 제대로 실천중..

 

우선 80만원이나 하는 강의를 회사 지원도 아니고 사비로 신청한건 답답함 때문이었다..

하루하루 일정을 쳐내느라 전혀 발전없는 절차지향코드..

겨우겨우 일정을 맞추고나서 새롭게 배정된곳은

테스트코드 한 줄 없이 10년간 유지해온 레거시 시스템이었다..if들여쓰기만 10번

물론 나도 테스트코드를 작성할줄 모르고 안했기 때문에 뭐라고 할 자격이 없다

그래서 더더욱 짜증났다. 

내 앞으로의 10년은 그런 레거시가 되고싶지 않았기때문에 이 강의를 선택했다!

 

이번이 17기 인데 17기까지 과정이 유지됐다는 점과 수료생들의 리뷰를 보면

충분히 강의 퀄리티에 대해서는 검증이 됐다고 생각했다. 그래서 바로 80만원 결제..!(2개월 할부)

 

이 강의는 크게 4가지의 미션으로 진행된다.

  • 자동차경주 - 단위테스트
  • 로또 - TDD
  • 사다리타기 - FP, OOP
  • 수강신청 - 레거시코드 리팩터링

그리고 매주 목요일에 진행되는 강사님 zoom 실시간 강의가 있다.

이 강의는 코드 리뷰가 메인인 강의 이지만 강사님이 해주시는 강의가 정말 나에겐 빛과 소금이었다.

미션을 진행하다보면 내가 얼마나 부족한지 뼈저리게 느끼는데

그러다보니 자연스럽게 자존감도 떨어지고.. 텐션도 떨어질때가 있었다.

그럴때마다 강사님은 좋은말씀과 미션진행에 도움이 되는 조언을 해주신다.

그렇게 또 한주를 버틸수 있다...ㅋㅋ

 

미션 진행은 GitHub를 통해 진행되는데

1. 각 미션별로 nextstep 레파지토리가 있고 미션시작을 누르면 자동으로 레파지토리에 내 id로 브랜치가 생성된다.

2. 그 레파지토리를 내 깃허브로 fork 해서 요구사항을 만족하며 구현을 한다.

3. 그리고 구현이 끝나면 nextstep 레파지토리의 내 id 브랜치로 pull request를 보낸다

4. nextstep 홈페이지에서 리뷰요청 버튼을 눌러서 배정된 리뷰어에게 리뷰를 요청한다.

이런 과정으로 진행된다.

그럼 리뷰어님들은 내가 만든 코드를 보고 코드리뷰를 해주신다.

수정할 부분이 있다면 다시한번 리뷰요청을 요청하거나 기준에 부합한다면 머지를 통해 다음단계로 넘어가게된다.

리뷰요청 버튼을 누르면 슬랙 채널에 리뷰요청이 보내진다!
다시한번 수정을 요청받을수있다
step을 통과한다면 pr은 머지된다! 이때 기분이 엄청 좋음
리뷰어님의 코드리뷰. 이렇게 굉장히 꼼꼼하게 리뷰해주신다.

이렇게 PR을 통해 내 코드를 리뷰받고 머지되는 경험이 처음인데 엄청 좋은 경험이었다.

강사님이 말씀하시길 오픈소스에서도 이런식으로 작업이 진행된다고 한다.

GitHub 사용법은 과정을 시작하면 더 자세한 문서가 제공되니 그걸 그대로 따라하면 된다! 전혀 겁먹을 필요없음!

 

미션별 step수를 확인해보니 총 17개의 step있는데

보통 첫 구현에 하루에서 이틀정도 걸리고 리뷰요청을 보내면 리뷰가 오는데 하루정도 걸린다.

그게 한번에 통과하면 좋겠지만..

보통 한 번에서 두 번정도 수정 요청을 받으면 또다시 수정 후 리뷰요청까지 하루~이틀정도 걸린다!

이렇게 6.5주동안 하면 모든 미션을 끝낼수있다!

 

그렇지만.. 한 step에 2~3일 걸린다면 총 17개의 step을 단순 계산으로해도 6.5주동안 완료하긴 쉽지않다..

그래서 퇴근후에 매일 3~5시간정도 구현을 하고.. 리뷰요청을 보내고,

다음날 리뷰가 오면 그날 무조건 다시 리뷰내용을 반영해서 리뷰요청을 보내야된다..

실력이 좋다면 구현도 빠르고 금방 미션을 통과하겠지만..그렇다면 이 강의를 듣지 않았겠지..

그래서 마지막쯤엔 2개 미션을 동시에 진행했다.

미션 3을 구현 후 리뷰요청을 보내고, 리뷰가 오기전까지 미션 4를 진행하는 식으로 병행한다.

하필 또 지금 회사 프로젝트가 오픈이 임박이라 매일 야근하는데

퇴근후에 미션을 진행하다보면 평일엔 보통 새벽3시쯤 잠을 잘수있다..주말도 죽어라 코딩만

그렇게 6.5주간 피곤할때마다 먹던 박카스가 3박스째 먹을때쯤 수료했다..

(미션을 모두 완료하면 수료)

 

강의를 듣는동안 몸은 죽겠지만 마음은 정말 시원하고 가벼웠다.

그래서 버틸수있지않았나 싶다.

이 강의는 정말 좋은 코드에대해서 많이 고민해볼수있고 또 엄청 많이 배울수있다. 정말로.

하지만 이 강의를 듣는다고해서 엄청난 개발자가 되는건 아니라고 생각한다.

그동안은 맡은 일만 쳐내는 코더였다면

이제야 개발자가 되는 올바른 방향을 바라보는정도? 라고 생각한다.

아직 갈 길이 너무 멀다.. 앞에 보이는 산에 올랐더니 여긴 산이 아니라 언덕인걸 깨닫는 순간..

그래도 그만큼 시야는 넓어졌으니! 더 멀리 내다볼수있겠지!

일단은 수료율 10~20%인 이 강의를 수료했다는것만으로도 엄청 뿌듯하고 기쁘다!

수료증은 과정이 끝나고 다음날부터 받을수있다고하니 나중에 받고나서 여기에 추가해야겠다!

과정을 진행하는동안 느꼈던점을 더 적고싶지만 글이 너무 긴것같아서

그건 다음 글에 적어야겠다!

'NEXTSTEP' 카테고리의 다른 글

[TDD, 클린 코드 with Java] 강의를 듣고나서  (0) 2023.12.29