$499로 떠나는 실리콘밸리 코딩교육, 리액트 나노디그리를 중심으로

마음만 먹으면 무엇이든지 무료로(혹은 저렴하게) 배울 수 있는 것들이 넘쳐나는 세상이다.

이제 1억만리 떨어진 곳에서도 인터넷만 있으면 MIT나 하버드의 교수의 명강의를 듣거나, 실리콘밸리에 있는 글로벌 테크 기업의 엔지니어에게 수업을 듣는 것도 '평범한 일'이 되었다. 그러나 아직까지 수박 줄무늬를 본 사람들은 많아도 정작 실제로 수박을 잘라 그 맛을 본 사람들은 그리 많지 않은 듯 하다. 아마도 높은 영어의 장벽 때문이지 않을까?

얼마전 그룹 프로젝트를 통해 아주 살짝 리액트를 경험해보면서 리액트의 매력에 빠지게 됐다. 그래서 올 월부터 유다시티에서 4개월간 진행되는 리액트 나노디그리 프로그램에 등록하기로 마음먹었다. 등록비는 $499로 한화로 약 57만원 정도 결제가 됐다.

개강한지 이튿 날에 접어들어 아직 충분한 코스 경험을 해보진 못했지만, 강좌 소개 책자를 중심으로 개괄적인 프로그램 운영에 살펴보고자 한다.

실리콘밸리의 온라인 코딩교육은 어떻게 돌아가고 있는 걸까?

미국 실리콘밸리에 위치한 유다시티(Udacity)는 대규모 공개 온라인 강좌 (MOOC)의 선두주자로 대표적인 구글 자율주행자동차 담당이었던 세바스찬 트룬(Sebastian Thrun)이 만든 창업한 영리기업이다. 과거에는 대학 강좌를 제공했지만 현재는 개발, 마케팅, 디자인 강좌 등 IT업계가 필요로하는 기술분야 과목에 주력하고 있다. 유수한 글로벌 테크 기업과 기술 창시자들과 협력해 컨텐츠를 만들면서, 이 과정을 나노디그리로 제공해 직업 교육과 취업을 연계한 프로그램을 운영하고 있다. 대부분 강좌들은 무료로 수강이 가능하지만, 나노디그리 프로그램의 수강은 유료다.

재교육의 기회, 나노디그리(Nanodegree)

나노디그리는 우리 말로 옮기자면 "미세전공" 쯤으로 번역할 수 있겠다. 물론 공식적으로 학력이 인정되는 정식 학위는 아니다. 그렇다면 이미 전 세계 수 많은 대학에서 컴퓨터 전공이 있음에도 불구하고, 나노디그리 교육과정이 필요하게 된 까닭은 무엇일까?

미국의 경우, 컴퓨터 분야 신규 인력은 50만 명을 훨씬 넘어서고 있지만, 정작 컴퓨터 과학 전공자는 5만 명 정도로 10분의 1도 안된다고 한다. 뿐만 아니라 컴퓨터 전공자들도 대학에서 배운 지식이 실제 실무에서 활용되는데 한계가 있기 때문에, 업계에서는 정작 쓸 만한 사람은 없다며 심각한 인력난을 호소하고 있다.

이렇듯 재직자에게는 최신의 기술을 배울 수 있는 재교육의 기회를, 구직자에게는 현장에서 요구하는 실용적인 기술을 배울 수 있는 교육프로그램이 필요했고, 유다시티는 지난 6년 동안 여러 시행착오를 거쳐 마침내 온라인 교육을 통해 개발자를 양성하는 나노디그리를 탄생시켰다. 채용 보장 트랙, 나노디그리 라이트(코드리뷰를 제외한), 월 멤버십, 전체 과정 구매 등 다양한 비즈니스 모델을 시도하고 있고, 현재는 유다시티가 꿈꾸고 있는 직업 교육과 비즈니스 모델이 거의 완성 단계에 이른 것 같다.

올 초 유다시티는 IBM 왓슨 사업부, 아마존 알렉사 사업부와 협력하여 인공지능 나노디그리를 오픈했고, 이어 프론트엔드 개발자를 위한 REACT 과정을 신설했으니 발빠르게 변화하고 있는 기술 스택에 맞춘 교육과정을 개설하느라 고군분투하고 있음은 확실한 것 같다.

나노디그리 프로그램은 프로젝트 중심 학습(PBL, Project Based Learning)을 기반으로 한 교육방식을 추구한다. 강좌를 청취하는 것은 필수가 아니다. 심지어 듣지 않아도 된다. 그러나 프로젝트는 필수다. 기간 중 3~4개의 프로젝트를 수행하면서 코치에게 코드리뷰 및 인터뷰를 통과가 되어야 졸업이 된다. 물론 프로젝트는 자기가 하고 싶은 것을 할 수 없고, 제시된 요구사항에 따라 기능을 구현해야한다. 모든 과정을 끝내면 이력서에 올릴 수 있는 수준의 프로젝트 포트폴리오를 갖게 된다. 유다시티에서는 이 학생의 이력서를 인재 풀에 등록하여 해당 기업에게 추천해준다.

작년 2016년에는 1만 3천명의 학생들이 나노디그리에 등록했고, 이중 23%(3천명)의 학생들만 졸업하였으며, 이중 6.9%(900명)의 학생들이 취업에 성공했다고 한다. 유료 강좌임에도 불구하고, 학생들의 저조한 참여율과 수료율은 앞으로 무크(MOOC)가 꼭 극복해야할 과제다.

그럼 실제 운영은 어떻게 되고 있을까?
내가 등록한 리액트 나노디그리를 통해 간략하게 알아보자.

리액트 나노디그리

리액트(react.js)는 2013년 페이스북이 만든 사용자 인터페이스(User Interface)를 만들기 위한 자바스크립트 라이브러리로, 자바스크립트 오픈 소스 중 가장 주목받고 있다. 무엇보다 네이티브 모바일 앱을 통해 네이티브로 아이폰과 안드로이드 앱를 동시에 만들고, 코드를 양쪽에 모두 재사용할 수 있다는 장점이 있어 큰 인기를 끌고 있다.

react-nanodegree

강사진과 학생

유다시티는 리액트에 특화된 온오프라인 강좌를 제공하는 기관인 리액트 트레이닝(React Training) 교수진 및 유다시티 리더 강사진들과 협력하여 리액트 나노디그리 교육과정을 개발했다.

worldmap

유다시티 나노디그리 학생 핸드북에 제시된 수강생 분포도에 따르면, 전세계 거의 모든 국가에서 수강하고 있음을 알 수 있다. 영어 강좌이기 때문에 주로 북미지역의 학생 수가 많지만, 아시아 국가 수강생 비율도 높은 편이다.

리액트 과정에서 운영하는 슬랙을 보니, 이틀 사이에 가입자 수가 700명을 넘어섰다. 대부분의 수강생들은 이미 자바스크립트 개발자로 현업에서 일하고 있거나, 이전에 안드로이드나 프론트엔드 등 다른 나노디그리 과정을 마친 분으로 중급 이상의 프로그래밍 지식을 가지고 있었다.

커리큘럼

리액트 나노디그리는 총 4개월 동안 진행되며 3개의 모듈(리액트 기초, 리액트와 리덕스, 리액트 네이티브)와 3개의 프로젝트로 구성되어 있다. 한 달에 코스 1개와, 프로젝트 1개를 마쳐야 하는 코스다. 보다 자세한 내용은 리액트 나노디그리 소개 페이지에서 확인할 수 있다.

평균 권장 학습 분량은 주 10-15시간으로 매일 약 2시간 정도 투자해야 수업 내용, 퀴즈, 프로젝트 및 기타 코스 관련 활동을 성공적으로 마칠 수 있다. 직장인들에게는 약간 부담스러울 수도 있을 것 같다.

강좌

동영상은 클립별 2~3분 내외이고 아래에 요약본이 있다. 리액트 나노디그리를 수강하기 위해서는 자바스크립트 기초와 html&css 대한 지식이 필요하기 때문에 유다시티에 개설된 웹프론트엔드 기초 강좌들을 사전에 학습할 것을 권장하고 있다.

커뮤니티

많은 전문가들이 온라인 강좌의 꽃은 "커뮤니티"라고 말한다. 하지만 온라인 강좌 특성 상, 수강생들이 서로 떨어져 있고, 다른 수강생들 및 강사진과 마주보고 만날 기회가 없기 때문에 서로 친밀감을 느끼기 어려운 것이 현실이다. 이를 돕기 위해 유다시티에서는 포럼 이외에도 슬랙(Slack)을 통해 좀더 수강생들이 토론에 적극적으로 참여하여 커뮤니티를 형성할 수 있게 만들고 있다. 강사진들과 운영진들도 가입되어 있어, 비교적 Q&A와 토론이 활발하게 이뤄진다.

udacity-slack

실시간 멘토링 및 질의 응답 (Live Help)

슬랙이 이외에도 실시간 학습 상담(live help)을 지원해준다. 유다시티의 멘토와의 채팅을 통해 1:1로 학습상담이나 관련 질문을 통해 도움을 받을 수 있다.

livehelp

코스 피드백

그동안 유다시티에서는 수강생들의 지속적인 피드백을 모니터하여, 교육 컨텐츠와 모델을 지속적으로 개선하고 있었다고 한다. 리액트 나노디그리의 경우도 모든 이슈를 waffle.io를 통해 투명하게 공개하여 리뷰와 피드백을 받고 있다.

프로젝트와 코드 리뷰

리액트 나노디그리에는 리액트(react), 리덕스(redux), 리액트 네이티브(react-native)로 총 3개의 프로젝트가 있다. 수료를 위해서 학기 종료일 까지 모든 프로젝트를 제출해야하고, 각 프로젝트마다 유다시티 리뷰어에게 코드 검토를 받는다. 유다시티 코드 리뷰어는 루브릭 평가 채점 방법으로 학생 성취를 판단한다.

codereview-sujin-1

"모든 조건에 충족(Meets Specifications)" 를 받아야 최종적으로 통과가 된다.

review

권장하는 예상 프로젝트 제출 마감일이 있지만 마감일을 지나서 프로젝트를 제출해도 괜찮다. 만약 강좌 종료일까지 프로젝트가 미완성이라면 4주 연장이 1회 가능하지만, 만약 이 기간 내에도 모든 프로젝트를 제출하고 합격하지 않으면 과정에서 자동으로 아웃된다.

프로젝트를 위해 보일러플레이트 코드(Boilerplate code)를 제공하고, 상세 요구사항은 깃허브 리퍼지토리에 공개되어 있다. 때문에 나노디그리를 등록하지 않아도, 깃허브 프로젝트만 보면 리액트를 충분히 학습할 수 있다.

취업

유다시티 나노디그리 목적은 실무에 적합한 인재를 양성하는 것이다. 궁극적인 교육 목표는 학생에게 '취업'과 기업에게 '고용' 기회를 제공하는 것이다. 본 과정인 프로젝트 코드 리뷰 외에도 이력서, 링크드인, 깃허브 등 첨삭 서비스를 제공하고 있다. 유다시티 커리어 리소스 센터는 모든 취업 관련 정보를 체계적으로 정리해놓았다.

유다시티는 링크드인과 비슷하게 이력서를 쓸 수 프로필 페이지가 있다. 내 이력서를 공개를 하면 유다시티와 제휴하고 있는 기업들에게 수강생의 정보가 제공된다. 나노디그리에서 수행한 프로젝트와 실제 코드가 포함되어 있다. 때문에 채용을 원하는 기업은 학생의 이력서와 프로필을 열람해 나노디그리 학습 과정의 모든 성과물을 확인할 수 있다.

career-portal

또한 유다시티와 제휴한 기업은 유다시티 채용 페이지에서 원하는 인재를 검색하고 정보를 열람할 수 있다.

이외에도 우수 졸업생의 경우, 유다시티의 파트타임 멘토, 코드 리뷰어로 고용될 수 있다. 유다시티 졸업생이며 실무 경험이 있다면, 신청 페이지를 참고해도 좋을 것이다.

마치며

지난 몇 년 간 무수히 많은 온라인 강좌를 들어왔고 15개 이상 수료증을 취득했다. 그러나 나노디그리와 같이 교육-프로젝트-취업까지 원스톱으로 연계된 프로그램은 처음이었다. 단순히 수료증을 발급해왔던 타 MOOC 시스템과 기간이나 규모 면에서 차이점이 많았다. 단순 취미나 여가로 강좌를 듣는 것이 아니라 '취업' 혹은 '커리어 전환'이라는 목표가 확실하다. 직접 시니어 개발자에게 코드 리뷰를 받는 것도 기대된다.

유다시티 나노디그리는 수강할 가치가 있는가?

마지막 수료증을 취득했을 때 비로소 이 질문에 자신있게 대답할 수 있을 것 같다.