@코드스테이츠 PRE 코스 회고글

oh_ji_0·2020년 8월 25일
12

지난 주 금요일까지 4주간의 코드 스테이츠 프리 코스를 마쳤다. hiring assessments에 대한 결과가 아직 나오지 않았기 때문에, 아직 수료 결과는 알 수 없지만 이쯤에서 지난 4주간을 회고해보려고 한다.

왜 코드 스테이츠 였을까?

개인적인 건강 문제로 퍼블리셔로 일하던 일을 잠시 쉬기로 했다.
몇개월정도의 시간이 나에게 주어졌는데, 그 때 코드스테이츠에 대해서 알게됐다. 난 프론트엔드 개발을 항상 꿈꿔왔는데 그건 퍼블리셔로 일하게 되기 전부터였다.

항상 당장은 내가 역량이 안되니, 직무를 갖고 일을 하면서 채워나가야겠다고 생각했다. 그래서 근무를 하는동안 혼자 나름 열심히 독학을 해왔는데 주로 인프런 강좌나 책, 그리고 개인이 진행하는 소규모 강의 등을 통해 Node.js, react, vue, vanilla javascript 등을 수강했다.

그렇지만 뭐랄까. 중간 중간 조그마한 성과(가령.. 인강을 완강하고 vue로 포트폴리오를 만들어 본다든지)도 분명 있었지만, 계속 공부를 해도 전혀 만족스럽지가 않았다.

마치 계속 무너지는 모래 탑을 쌓는 것 같기도 하고, 조각모음을 하듯 모은 지식은 자꾸만 어디론가 사라져 버렸다.

계속 노력했지만 항상 나는 자신이 없었다. 비전공자, 컴퓨터에 대한 지식도 없다고 스스로 느꼈고 근무하며 jquery 등은 계속 썼지만 javascript에 대한 이해는 전혀 나아지지 않았던 것 같다.

그래서 코드스테이츠를 고민하기 시작했다. 고민을 오래 하진 않았다. 나의 결정을 빠르게 이끌어 준 것은 코드스테이츠의 소득 공유 제도였다. 결과적으로 보면 나는 한번에 수강료를 납부하는 업프론트를 선택하기는 했지만 소득 공유 제도에 대한 가치관이 마음에 들었고 코드스테이츠를 믿고 부트캠프에 합류하기로 결정했다.

소득 공유 제도가 강의에 대한 전반적인 믿음 없이는 불가능한 제도라는 생각이 들었기 때문이다. 이 부트캠프를 밟으면 수강생들이 어느 단계까지 도달할 수 있다는 믿음이 없다면 어떻게 수강생들이 취업 후 소득을 공유할 때까지 수강료 지불을 미뤄주는 '투자'를 하겠냐는 믿음이었다.

코스 시작 전의 불안과 고민

사실 코드스테이츠를 해야겠다 마음 먹고, 등록하고서도 2가지 불안과 고민을 갖고 있었다.

@@ 첫째, 강의를 듣고보니 이미 내가 다 배운 것까지만 훑고 끝나면 어떡하지?

나는 개발 관련 과정은 아니었지만 국비 학원을 많이 경험해본 케이스다(전자책, 웹퍼블리싱 과정 등). 그리고 적지 않은 실망을 경험했다.

학원들은 공통적으로 처음에는 마치 수강생들에게 책임져줄 것처럼 말한다. 취업율이 어떻고, 커리큘럼이 얼마나 잘 돼 있으며, 얼마나 방대한 양의 정보를 가르치는지, 취업에 필요한 영역을 전부 훑어 주기 때문에 괜찮다고 희망적인 이야기를 많이 해준다. 그러나 막상 수업이 시작하면 여지없이 국비 학원의 문제가 여실히 드러난다.

  1. 질문을 하면, 학원 강사가 모르는 경우도 허다하다. 질문을 해도 제대로 된 답변을 받지 못하게 된다.

  2. 커리큘럼이 촘촘하다기 보단 느슨하다. 여러 과정을 훑기 때문에 심화 내용까지 알려줄 수 가 없다. 중급, 혹은 그 직전. 항상 거기에서 내용이 멈춘다.

국비 학원을 총 10 - 12 개월 동안 꼬박 거의 100%에 육박하는 출석율을 지키며 다녀본 입장으로서 시간 대비 그리고 내가 낸 돈은 아니었지만 어쨌든 학원에 지불한 수강료에 비해 질 좋은 강의를 수강할 수 없다는 불신은 코드스테이츠 수업을 듣기 전, 이번에도 그러면 어떡하지라는 불안으로 이어졌다.

@@ 둘째, 너무 어려워서 내가 전혀 받아들이질 못하면 어떡하지?

아이러니하게도 그 다음 걱정은 첫번째 고민과는 상반되는 걱정이었다. 개발은 항상 내가 독학하다가 실패 해봤기 때문에 진입 장벽이 굉장히 높게 느껴졌다.

게다가 코드스테이츠는 원격으로 수업이 진행된다는데 내가 혼자 동떨어지고 전혀 수업을 따라가지 못한다면 어떡할까 라는 생각이 혼재됐다.

이런 아이러니하게도 양분적인 생각이 계속 나를 불안하게 만들었다.

불안 속의 시작된 코드스테이츠 4주 코스

일단 시작하고 나서 내가 느낀 점은 생각보다 굉장히 촘촘하고 빡빡한 일정이었다는 것이다.

시작하자마자 코드 스테이츠 측에서 공유해준 구글 캘린더는 9 to 6 혹은 9 to 7-8 으로 일정이 가득 차 있었다. 코드스테이츠의 일정은 다음과 같은 세 가지의 트랙으로 이뤄져있는데,

  1. 영상 및 문서, ppt를 통한 개념학습 (LESSON)
  2. 페어와 함께 네비게이터, 드라이버 역할 체인지를 통한 문제풀이 (페어프로그래밍)
  3. 엔지니어와 함께하는 학습 진단 및 개념 정비(온라인 세션)

지난 4주간, 이 3가지 트랙을 챕터별로 무한 반복하며
vanilla javascript basic 및 심화와 html, css를 학습했다.

이 촘촘한 트랙 속에 사실 처음엔 반신 반의 했다.

첫째, 강의 양이 생각보다 더 적은데 이것만 배워도 되는거야?

레슨은 생각보다 할애하는 시간이 많지 않다. 짧은 분량의 영상이나 슬라이드가 주어지는데, 사람마다 개인 차가 있어 느끼는 정도는 다르겠지만 나는 기초를 학습하고 온 입장에서 이 레슨이 더 짧게 느껴졌다. 정말 이것만 알아도 되는거야? 그동안 다녀왔던 학원에선 하루종일 필기하고, 필기장이 학원 수강동안 3권 정도는 나왔는데.. 싶었다.

그러나 레슨 위주의 수업과 달리 코드스테이츠는 페어프로그래밍 위주의 수업이기 때문에 페어프로그래밍-온라인 세션으로 이어지는 다음 스텝들을 경험하며, 오히려 나는 비교적 짧은 레슨에 만족하게 됐다.

개발은 누가 더 많이 아느냐의 싸움이라기 보단, 어떻게 활용하느냐의 싸움이다. 사실 문법이야 검색하면 된다. 어떻게 검색할 것이며 문제를 어떻게 풀어나가야 할지를 아는게 중요하다. 그동안 레슨 중심의 수업을 들으며 내가 오히려 힘들었던 이유를 이곳에 와서 새삼 느끼게 됐다.

게다가 짧은 레슨은 굉장히 심플하지만, 꼭 필요한 내용이 누락되거나 하진 않았고, 예제 및 실습 위주의 페어프로그래밍을 통해 이 레슨의 충분함은 어느정도 검증했던 것 같다.

둘째, 페어프로그래밍이 과연 효율적인건가?

처음 페어 프로그래밍을 하며 느꼈던 기분은 일단 누군가와 함께 프로그래밍을 한다는 게 너무 어색했고, 해본적이 없어서 이게 효율적인 방법인가 싶은 생각이 저절로 들었다. 내가 혼자 풀면 차라리 빨리 풀 것 같은데 설명하고, 혹은 페어의 방식대로 생각하거나 움직이고, 같이 진행하려니 버벅이게 되고 컨디션이 안 좋은 날은 특히 이 과정이 너무 귀찮기만 했다.

그러나 페어 프로그래밍의 진가는 시간이 지나면서 스스로 느끼게 됐다고 생각한다.

일단 설명하는 능력에 대해 생각해 볼 기회를 가졌다. 나는 스스로 항상 말을 못하는 사람이라고 생각해왔다. 내 약점이자, 타고난 성향이 그렇다고 스스로 받아들였는데 어찌됐든 수료를 위해선 그리고 페어에게 누를 끼치지 않기 위해선 잘은 못하더라도 설명해야만 했다. 내가 180도 변해서 능수능란 이제 설명을 잘하게 되었어요, 까진 당연히 아니지만 4주간 분명 내가 어떻게 말해야 좀 더 빨리 상대방이 알아들을까 고민하는 시간을 가졌다는 것이 값진 성과였다. 처음과 비교하면 성장은 분명 있었고 스스로도 그것을 느낄 수 있다는 점이 참 만족스러웠다.

더불어 페어프로그래밍을 하며 가졌던 이점은 계속 계속 2-3일마다 새로운 페어를 만나고 새로운 성향의 페어와 문제를 풀어나가다보니 페어에게 본 받을 점을 내 스스로 찾기 시작 했다는 것이다. 페어와 함께하다보면 나는 못했던 사고 방식을 페어를 통해 알게 되고, 그렇게 수많은 페어를 만나면 문제 풀이 방식에 대한 다양성을 내가 알기 싫어도 알게 된다.

물론, 페어 프로그래밍을 진행하며 매번 다 좋기만 했던 것은 아니다. 페어 프로그래밍은 페어와의 합이 중요해서 만약 의욕이 없는, 혹은 과정에 충실하지 않은, 독단적 페어를 만날 경우 그 시간은 죽어버리는 것 같다. 그래서 좋은 페어를 만나는 게 너무나 중요하고, 내 페어 프로그래밍 시간의 성공은 전적으로 나와 페어에게 달려있다.

그래서 나도 좋은 페어가 되어야 하고, 좋은 페어를 만나야 한다.

이건 랜덤이지만, 그래도 코드스테이츠는 선발 전 자기소개서 및 의지를 가진 학생들만을 등록시키기 때문인지 나는 운 좋게도 대부분 정말 좋은 페어분들만을 만났다. 모두들 정말 나보다 의욕도 훨씬 많으시고, 이해력도 빠르신 분들이 많았다. 그런 분들과 어떻게 문제를 푸는지 얘기하다보니 나 스스로도 의욕이 생기기도 하고 '좀 더 쉽게, 실무에선 어떻게 활용할까' 라는 보다 더 높은 수준의 고민을 해보기도 했다.

혼자 했으면, 절대 이런 과정이 없었을 거라고 생각한다. 빠르게 문제를 풀 순 있었겠지만, 아마 문제를 풀고 뿌듯해하며 쉬는 시간을 갖거나 배운 레슨을 되돌아보는 과정만 반복하고 있지 않았을까?

직접 해보니, 페어프로그래밍을 왜 가장 중요한 트랙으로 가져가는지 알게 되는 느낌이 들었다.

셋째, 원격으로 과연 학생 관리가 될까?

사실 이 점이 제일 기대 이상이었던 것 같다. 나는 원격으로 관리가 될까, 안 될 것 같다는 생각이 정말 컸다. 게다가 이번 기수는 90여명이 넘는다고 들었는데 어떻게 이것이 관리가 될까 싶었다.

그러나 슬랙, 쉬프티, 페어프로그래밍 과제, 레슨 진도 확인 등 코드스테이츠에서 학생의 진도 및 출결에 대해서 확인을 생각보다 체계적으로 다양한 방식을 병행하여 하고 있었다.

아침부터 저녁까지 쉬프티를 통해 출퇴근을 기록하고, 페어프로그래밍을 하기에 그 시간 누락에 대해선 페어가 서로를 자연스럽게 감시하고, 2-3일 마다 페어리뷰가 이뤄지고, 레슨 진도에 대해서 학습한 내용이 사이트 내에서 기록되고,
주마다 이뤄지는 다양한 survey를 통해 건강, 수업 난이도, 코스에 대한 리뷰들이 자세하게 이뤄졌다.

1-2주엔 조사하는 게 하도 많아서, 놀라기도 하고 사실 좀 귀찮아하기도 했다.

물론 이런 것들을 아무리 해도 의욕없이 임하는 사람까지 정교하게 거르긴 무리일 수 있다. 근데 소득 공유든, 비싼 수강료를 내고 일부러 그렇게 할 이유도 없거니와, 그런 사람은 어느 학원을 가도 마찬가지일 거라고 생각한다.

여튼 결론은 생각했던 것 이상으로 원격으로 수업을 받는 것은 무리가 없었다는 것이다.

질문도 오히려 선생님이 다른 학생들의 질문을 처리해줄때까지 줄서서 기다려야하는 시스템이 아닌 github를 통해 이뤄지다보니 궁금한 것에 대해선 질문을 남기고, 답변이 달리면 확인하면 됐고 나 말고 다른 동기들이(혹은 그 전 기수까지) 적은 질문까지 확인해 볼 수 있으니 더 좋았다.

이번 프리코스에선 사실 난 질문을 많이 남긴 편은 아니었고, 주로 동기들 질문을 보는 경우가 많았는데 내가 궁금해서 헬프데스크(질문게시판)를 검색해보면 비슷한 질문을 남긴 동기가 이미 있어서 대신 답변을 받기도 하고, 궁금증을 비교적 빠르게 해결할 수 있어서 좋았다.

4주를 마치고 내가 얻은 것

이런 식으로 코드스테이츠의 4주 코스를 학습하고 나니, 기대 이상으로 얻은 것이 많은 것 같다.

누구는 이렇게 매일 9 to 6로 공부하면 굳이 비싼 학원비 내지 않아도 그만큼은 다 성장하는 거 아니냐고 할지도 모르겠다. 그리고 또 어쩌면 그런 게 가능한 사람도 있겠지만, 나에게만 비춰볼 때 과연 내가 코드스테이츠를 밟지 않고 같은 4주란 시간동안 이렇게 성장할 수 있었을까? 생각해보면 나는 아니라는 생각이 든다.

페어 프로그래밍의 성과는 나 혼자 학습해선 얻을 수 있는 것도 아니고, 어디가서 나와 같은 진도를 공유한 페어를 이렇게 다양하게 구할 수 있을까. 그렇지 않기 때문이다.

또한, 코드스테이츠의 코스 수강을 하며, 먼저 학습한 챕터의 개념이 단단한 기둥이 돼서 다음 챕터의 개념 정립에 도움을 주는 신기한 경험을 했다. 내가 혼자 진행했다면, 이런 확신을 갖고 개념 정립을 해나갈 수 있었을까 싶다. 구글링해도 나오지 않는 개념에 대해서 도움을 줄 선배 엔지니어들을 또 어디서 구했을까 싶다.

물론, 모든 일에는 장단이 있고, 코스 진행했을 때 만족도가 큰 시간이 있었고, 또 적은 시간도 분명 있었다.

그럼에도 4주간, 스스로 고민하고 훈련하고, 비전공자로서 내가 언제나 갈망했던 단계적으로 밟아가는 학습 계단을 가져볼 수 있었다는 점에서 굉장히 유의미하고, 시간이 아깝지 않은 성장의 시간이었다는 생각이 든다.

특히, 자바스크립트 학습 중에 항상 고비를 맞았던 클로저, 고차함수, this와 같은 심화 학습 부분이 참 어려웠는데 그만큼 큰 성장을 느꼈다. 동기들 및 엔지니어분들이 쉬운 이해를 위해 여러가지 비유들을 슬랙 게시판 및 온라인 세션 채팅에서 선보였는데, 이 점도 보다 더 빠르게 해당 개념에 대해 이해를 하는데 많은 도움이 많이 됐다.

이머시브 코스를 기다리며

앞으로 해야할 것이 참 많다.

현재까진 javascript 기초 및 심화, html, css에 대한 학습을 진행한 상태이고, 이머시브 코스에 가서는 프론트엔드, 백엔드 등 브라우저, 클라이언트, 서버, 데이터베이스, HTTP 에 대해 전반적인 코스를 다시 위에 적었던 3단계 트랙을 통해서 또 열심히 배워나갈 것이다.

코스가 끝난 것이 아니고, 이머시브는 또 얼마나 어려울까 두려움은 또 여전히 남아있지만, 프리코스를 마치고 얻은 성과에 대해서 내가 느끼는 만족감을 알기에 이머시브에 가서도 또 즐겁고, 더 힘내서 학습할 수 있을 것이라는 생각이 든다.

profile
기본에 충실하고 싶습니다. #Front-end-developer

0개의 댓글