코드스테이츠 부트캠프 그리고 블록체인
코드스테이츠는 온라인 교육기관이다. 온라인 상에서 교육을 진행하는 유명한 곳은 많다. <멋쟁이 사자처럼><항해 99> 등등.. 부트캠프 특성상 한번 선택하면 6개월간의 시간이 소비되는 것이기 때문에 현재 직장을 다니고 있으면서 커리어 전환을 생각하거나, 컴공 학생이지만 좀더 실무적인 걸 배우고 취업의 길로 들어서고자 하는 분들이라면 부트캠프를 찾게 된다.
나 또한 마침 시간이 6개월간 생기게 되었고, 마침 코드스테이츠에서 진행하는 부트캠프를 만나게 되었다. 주저 없이 신청했고, 운 좋게 수강생으로 선정되었다. Digital Training 과정으로 수강생으로 모집하고 있었던 과정이었고, 신청자가 100명이 넘었었는데, 정원 45명 선발 기준은 정확히 모르겠다. 원래 정원 초과로 대기 3번이었고 대기 신청을 하니 바로 다음날 연락왔다. 국비 과정으로 진행되다 보니 내일배움카드가 발급이 안된거나 여튼 신청 과정에서 문제가 있는 사람이면 다음 대기자에게 순번이 간다. 따라서 대기 명단에 이름을 올려놓으면 된다.
많은 부트캠프 중 블록체인 부트캠프를 신청한 이유는 블록체인은 평소에 관심도 많이 가지고 있었고, 최근 루나 사태로 가상화폐에 대한 불신이 팽배해져있는 상황이라 다시 한번 이목이 집중되고 있는 상황이기도 했다. 도대체 블록체인 기반 암호화폐가 뭐 길래 사람들이 이렇게 투자를 많이하고 사회에 미치는 영향이 큰지에 대해서도 궁금증이 더해졌다. 추가적으로 프론트/백엔드 모든 과정을 다뤄보고 싶었던 생각도 있었다.
사실 코드스테이츠에서 진행하는 부트캠프는 종류가 굉장히 많다. 프론트엔드 / AI / 그로스마케팅 / 백엔드 / PM / 블록체인 까지 종류가 많고 그 중에서 자신이 원하는 분야가 어떤 분야인지 명확하게 지정하는 것이 우선되어야 한다. 그렇게 무작정 시작한 코드스테이츠 블록체인 부트캠프가 시작되었다.
시작은 가볍게 과정은 무겁게
과정을 신청할 때 Javascript에 대한 선수 지식이 필요하다고 한다. 블록체인 네트워크 중 가장 성공한 프로젝트인 이더리움의 솔리디티(Solidity) 언어가 Javascript 베이스 이기도 하고, 웹 개발에서 프론트와 백엔드 그리고 DB 까지 한가지 언어로 배워야 한다면 단연코 JS기 때문에 이해가 되었다.
간단한 Javascript 강의는 Cosera에서 듣고 수강신청을 할 수 있었다. 만약 프로그램밍에 대해 아예 모른 상태에서 도전한다면 각오 단단히 해야 한다는 말을 하는 사람이 있었는데, 그게 무슨 말인지 이해됐다. 모든 수업 과정은 원격으로 진행된다.
과정은 어떻게 구분되나?
처음 시작은 굉장히 가볍게 시작한다. 웹에서 JS를 사용해서 querySelector를 사용하는 방법, HTML 조작방법 등 간단한 주제에서 한달이 지난 지금 백엔드 인증/쿠키/세션을 다루고 있다. 중간중간 난이도가 확 높아진다는 느낌을 받을 때가 한두번이 아니다. 만약 이전에 웹 개발을 해보지 않은 상태에서 수업을 듣기에는 다소 무리가 있지 않나? 지금 이 속도의 학습이 가능한가에 대한 질문도 들었다.
한달이 조금 지난 후 두번째 섹션이 마무리 되고 중간 고사 같은 HA 시험을 치른다. 내용이 그렇게 어려운 건 아니니 걱정 하지 않아도 됨. 두번째 HA가 끝나고 나면 세번째 섹션 부터 본격적인 블록체인 수업이 진행된다. 과정은 총 4개의 섹션으로 구성되어 있고, 웹 기초, 웹 심화, 블록체인 기초, 블록체인 심화로 구분된다. 4개 섹션이 마무리되고 난 후 3개의 프로젝트를 마치고 수업은 종료된다.
수업은 어떤 방식으로?
수업은 코드스테이츠에서 자체적으로 만든 웹 페이지 (코세라 템플릿과 거의 동일함)인 UR Class에서 강의를 보거나 수업 내용(글과 사진 슬라이드, 영상이 섞여 있는)을 보고 학습을 진행하게 된다. 중간중간 스프린트가 있는데, git에서 본인 PC로 clone한 다음 제출하는 형식이다. 독립적인 학습을 권장하기 때문에 본인 스스로 하루 스케줄을 짜서 학습을 진행해야 한다. 옆에서 떠먹여 주는 그런 거 없다. 스프린트 하면서 안되는 부분은 구글링 하거나 아고라 스테이츠에서 질문을 하거나 페어에게 물어보거나 해야 한다.
매일 pair를 붙여준다. 파트너와 함께 수업내용을 토대로 스프린트 해결을 함께 진행하게 된다. 솔직히 모든 사람들과 페어를 진행 기억은 없다. 연락이 안되거나 혼자서 학습을 다 진행한 후에 코드만 비교하는 형식이 많고, 둘이 머리를 대고 풀어본 기억은 잘 없다. 먼저 연락안하면 연락이 잘 오지 않는게 사실이다. 코드스테이츠에서는 페어학습을 부트캠프의 강점으로 광고 하고 있는데, 과연 이게 강점인지 잘 모르겠다. 코드스테이츠 자체에서도 페어에 대한 관리는 잘 안되고 있는 모습이다.
매일 아침 Toy 문제(Algorithm)를 풀게 된다. 정렬, 탐색, 기초 알고리즘을 배우고, 코드로 구현한다. 당연히 Node.js환경에서 알고리즘 문제를 푼다. 간단한 문제부터 어려운 문제까지 난이도는 다양해 보인다. 차후 코딩 테스트를 준비하기 위한 과정이다.
코드스테이츠 자체에서도 블로깅을 적극 권장하고 있다. 오늘 내가 배운 내용(Today I Learned, TIL)을 정리하는 목적으로 말이다. UR Class에 있는 학습 내용도 블로그 형식으로 되어 있기 때문에 자신의 블로그를 운영하면서 학습을 들으면 확실히 정리가 잘 된다.
코드스테이츠 블록체인 부트캠프 솔직 후기
누구에게 추천하고 싶은지?
만약 기존에 웹 개발을 해봤거나, 자신의 웹 사이트를 운영하고 있는 사람이라면 웹 개발 전반에 대해 지식을 정리하기 아주 좋은 코스다. 거기에 web 2.0에서 web 3.0으로 전환되는 시기에 새로운 기술을 배우기 딱 알맞는 과정이라는 생각이 가장 먼저 든다.
필자 또한 기존에 프로그래밍으로 먹고 살고 있었고, 여러개 웹 사이트를 운영하면서 비즈니스 영역으로 프로그래밍을 사용하고 있는 입장에서 코드스테이츠 부트캠프에 참여했다. 기존에 단편적으로 알고 있었던 내용을 한번더 정리하기 좋았고, 학습 속도도 입체적으로 학습하기에 좋은 속도였다.
프로그래밍이 처음이라면?
이 글을 보는 사람이라면 부트캠프를 알아보면서 프로그래밍을 처음 하는 사람도 있을 거라 생각한다. 만약 함수를 어떻게 생성하는지 모르고, 알고리즘이 뭔지, 변수가 뭔지 등등 프로그램에 대한 선수 지식이 1도 없는 사람이라면 솔직히 강의를 수강하기 힘들지 않나라는 생각이 든다.
그럼에도 불구하고 부트캠프 강의를 통해 개발자 커리어 전환을 시도하는 사람이라면 24시간 중 18시간 이상 투자해서 공부하고, 주말도 반납하면서 공부를 해야 한다 생각한다. 거짓말 아님. 아마 다른 부트캠프도 마찬가지일거라 생각한다. 불과 1달만에 프론트, 백엔드 과정이 끝나는 상황에서 이렇게 시간을 투자한다고 해도 모든 걸 이해하긴 벅찬 시간인 건 사실이다.
즉 컴공에서 4년동안 배우는 내용을 6개월 (정확히 말하면 프로젝트 기간 빼고 4개월 반이다) 만에 배우기 때문에 러닝 커브가 굉장히 빠르다. 사람들 중에는 시간을 많이 투자해서 공부하고 있으면 번 아웃이 온다라고 말하는 사람이 있지만 건강 챙기면서 최대한 많은 시간을 투입해서 학습하는게 맞다는 생각이다.
부트캠프를 알아보는 사람에게 추천?
가장 먼저 말씀드리고 싶은 건, 개발자로 일했건 프로그램 입문자건 코드스테이츠 블록체인 부트캠프는 Javascript 언어에 깊숙하게 이해할 수 있는 시간이라는 것이다. 여기서 필요한 Javascirpt 에 대한 지식을 잘 정리한 책이 있다. 아마 아는 사람은 아는 <모던 자바스크립트 Deep Dive>다.
추가로 Javascript는 Node.js 환경에서 작동한다. 기존 웹 브라우저 언어였지만, Node.js가 출시되고 나서 프론트엔드 뿐만 아니라 서버 사이드, 데스크탑 영역까지 확장하기 시작하면서 쓰임새가 다양해졌다. Node.js에 대해 잘 다루고 있는 <Node.js 교과서>가 있다.
위의 두가지 책은 꼭 한번 읽어보고 웬만하면 구매해서 계속 보길 권한다. Javascript는 싱글 스레드 프로그래밍인데, 어떻게 비동기 처리가 가능한지, JS에서 함수의 역할은 무엇인지, Promise는 뭔지 등등 좀더 깊숙한 내용을 이해하는데 도움이 많이 될 것이다.
책 추천을 제외하면 사람들과 많은 관계를 맺으라는 말씀을 드리고 싶다. 코드스테이츠는 매월 디너 클럽이라는 행사를 진행한다 수강생과 수료생이 모여 얘기를 나누면서 커리어, 회사생활, 기술 문제 등에 관해 이야기를 나누는 공간이다. 또한 아고라 스테이츠에서는 Stack Overflow 처럼 풀리지 않는 문제를 같이 고민하는 장소도 있다.
이런 공간에서 사람들과 연을 맺고, 사이드 프로젝트를 진행하건, 새로운 직장을 구하건 인맥관리가 된다. 매일 맺어지는 페어와도 문제 해결 뿐만 아니라 많은 얘기를 하고 '관계'를 맺어가는게 중요하다는 생각이다. 부트캠프가 종료되면 기술적인 지식도 남겠지만 사람이 큰 자산이라는 말을 가장 많이 들었다.
궁금한 것?
혹시 궁금한 점 있으신 분들은 댓글로 달아주시면 정성껏 답글 달아드리겠습니다~!
이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다.
'Programming' 카테고리의 다른 글
[Security] HTTP Cookie란? (0) | 2022.06.07 |
---|---|
[Security] HTTP vs HTTPS 차이 (0) | 2022.06.07 |
[MongoDB] mongoexport / mongoimport / mongodump / mongorestore 사용법 (0) | 2022.06.03 |
[Redux] 리덕스 CRUD ! (0) | 2022.06.01 |
[Redux] Redux란? 리덕스 사용법 (0) | 2022.06.01 |
댓글