리코딩 : 코드스테이츠와 동행

코드스테이츠(CodeStates) 동행기록 (2)

BreezeBm 2020. 10. 14. 17:23

코드스테이츠 3 ~ 4주차의 기록

 벌써 코드스테이츠 Software Engineering과정을 시작한지도 한달이 넘어가고 있다. 처음 1-2주차는 정말로 힘들었다. 강의만으로는 이해하는 것이 조금 어려웠다. 코플릿을 통해서 차츰 개념을 익혀갔지만, 완벽하게 이해하는 것은 쉬운일이 아니였다. 그리고 코드스테이츠에서 주어지는 과제가 정말 힘들었다. 

 

 개발자는 물론 혼자서 일할 수 있다고 생각한다.(근데 진짜 그러면 난 힘들것 같아...) 하지만 개발자는 반드시 크기가 작더라도 팀을 이루어서 일을 하기 때문에 '협업'이 매우 중요하다. 그리고 코드스테이츠에서도 '협업'에 대해서 강조한다. 그렇다면 코드스테이츠에서는 어떻게 '협업'을 위해서 어떤 컨텐츠를 제공하는가? 바로 '페어 프로그램'이다.

 

 페어 프로그램은 말그대로 짝을 지어준다. (짝을 지어주는 알고리즘은 정말 모르겟다....). 코플릿(코드문제)나 과제를 풀 때 혼자서 풀지 않고 같이 역할을 나누어서 진행하게 된다. 역할은 Navigator와 Driver로 나뉜다. (이게 무어냐?!?? 궁굼하면 코드스테이츠에서 느껴보시길 ㅎㅎㅎㅎㅎㅎ). 각각의 역할을 부여받고 문제를 같이 해결해 나간다. 처음에는 많이 어색했다. 단순히 화면속으로 사람을 만나서 문제를 풀고 같이 알고리즘을 짠다는 것이 어색했지만, 계속해서 진행하다보니 '협업'의 중요성을 점차 깨달아 가고 있다.

 

하지만 나에게는 페어 프로그래밍'부작용'도 있었다. 코플릿을 풀 때 '레퍼런스'가 있다. 문제를 다 풀고 래퍼런스를 확인해 자신의 코드와 비교해보거나, 코플릿을 풀다가 오랜시간동안 고민해보고 계속해서 코드를 짜보다가 안되면 마지막에 쓰는 최후의 수단이다. 하지만 나에게는 단순히 문제를 빨리 풀기 위한 수단으로 밖에 쓰이지 않았다. 코플릿을 풀다보면 페어에게 민폐를 끼칠 까봐, 그리고 계속해서 문제를 고민하는 것에 텐션이 떨어질까봐 코드를 깊게 고민하기 보다는 레퍼런스에 손을 많이 댔다.

 

 그 때 나에게 깨달음을 준 순간이 있었다. 'office hour'과 강의에서 거듭 강조되는 내용이 나의 눈을 뜨게 했다. '코드를 짤 때는 계속해서 작은 단위로 쪼개서 생각하고 코드를 짜야한다.' 는 것이다. 처음에는 같은 문제를 계속 봐야하는 것이 힘들었지만, 조금씩 생각을 하게되고 코드를 작은 단위로 쪼개려고 노력하고 있다. (물론 지금도 안푸리는 문제들이 있다.).

 

  다행히도 나에게는 단점보다는 더 좋은 점이 많았다. 만났던 페어분들이 다들 너무 좋으신 분들이었다. 개념을 이해하지 못하거나, 과제를 진행할 때 막히는 부분이 있으면 남일이 아니라 나의 일처럼 하나하나 자세히 알려주셨고, 기다려 주시고 이해할 수 있도록 도와주셨다. 어느 부분에서는 답답할 수도 있지만 그러한 기색없이 이끌어 주셔서 너무 감사했다. 자연스럽게 페어분들에게 나의 도움이 필요한 순간에 나도 역시 기쁜마음으로 도와드릴 수 있어서 좋았다.(다들 너무 스윗...🥰) 

 

 지난 시간들을 되돌아 보면 정말 많은 것들을 배웠다. 선언과 할당 부터, 배열 객체, 고차함수, 재귀함수 각각의 내용안에 있는 메소드들을 많이 알게 되었다. 당연히 이 많은 것들을 다 외우고 있는 것은 아니다. 필요하고 많이 쓰이는 부분들은 다 알고 있지만, 지금도 계속 검색하면서 배웠던 강의를 돌아보면서 익히고 있다. (걱정되는 부분은 계속해서 이것을 기억하려면 써보고 해야하는데, 다른 언어를 배우는 순간 잊어 먹을까봐 너무 슬프다...... ㅜ.ㅜ)

 

 이번주 월요일에 HA(Hiring Assessments)시험을 보았다. 시험은 합격과 불합격으로 수강생들을 하나의 기준으로 나누는 시험이 아니다. 과정을 통해서 얼만큼 본인이 알고 있는지를 확인하기 위한시간이다. 그렇기 때문에 최선을 다하는 것이 중요한 것 같다. 물론 문제를 어려웠다. 최선을 다한다고 해도 막히는 부분이 계속해서 생겨났다. 하지만 지난 과제와 코플릿을 자세히 살펴보고, 필요한 메소드를 위해서 검색해보면서 하다보면 분명히 다 해결 할 수 있다는 생각이 든다!

 

20주 중에 이제 20프로 정도 한것 같다. 하지만 아직까지도 '내가 개발자가 될 수 있을까?'라는 생각이 정말 많이 든다. 시작할 때 보다는 어느정도 확신이 찼지만.... ㅎ.... 다행인건 코딩을 하는 것이 조금씩 재미가 생기는 것 같다. 내가 무언가를 생각해보고 코드를 짜보고 찾아보는것이 조금씩 기쁨과 즐거움으로 다가온다. 미래의 나의 모습은 알 수 없지만, 그래도 포기 하지 않고 꾸준히 해보려고 한다.