brunch

You can make anything
by writing

C.S.Lewis

by GS Jan 23. 2018

데이터 사이언티스트의 길: 모험을 시작하며

데이터 중심의 서비스 기획자를 위한 여행 안내서

Prologue

비전공자로서 데이터 사이언티스트가 되려는 저에게는 시작부터 엄청난 모험이었습니다. 공대를 나왔지만 코드를 접해본 적이 거의 없었던 저의 수준으로는 아예 길이 보이지 않았기 때문이죠. 뜬금없는 소리이지만, 전 산을 굉장히 좋아합니다. 산을 갈 때면 먼저 지도를 통해 코스를 확인하고 목적지까지 도달하는데 걸리는 기간에 따라 필요한 식량, 물품 등을 챙기면서 여행을 준비합니다. 그리고 여행 중에도 계속 코스와 일정을 확인하면서 다른 길로 가기도 하고 경로를 바꾸기도 하면서 목표로 했던 곳까지 도달합니다. 이 글은 마치 산을 여행하는 것처럼 데이터 사이언티스트가 되기 위한 여정을 공유하는 글이라고 생각하시면 좋을 것 같습니다.


누구를 위한 글인가

 아무것도 모르는 비전공자가 처음에 데이터 사이언티스트가 되기 위해 시작하는 일은 아마도 '검색'일 것입니다. 저도 그랬는데요. 정말 인터넷은 놀랍습니다. 엄청나게 많은 자료와 이해할 수는 없지만 고퀄의 강의 그리고 수많은 고수들의 글 등을 보면서 기뻐했었습니다.

 하지만, 많아도 너무나 많습니다. 마치 저 끝었는 우주와 같이 데이터 세상은 저에게 도저히 떠날 엄두가 나지 않을 만큼 거대했습니다. 그리고 특히 국경이 없는 이 분야는 언어의 벽이 컸습니다. 대부분의 고퀄의 자료는 '영문'으로 되어 있었습니다. (그래서 '영어'를 잘 해야 유리합니다.) 그래도 먼저 이 길을 걷고 계시는 선배님(?)들이 남긴 한글 자료가 큰 위로와 힘이 되었습니다.

 그래서 앞으로 작성할 '데이터 사이언티스트의 길'은 저같이 '평범한 한국인이며 비전공자로서 데이터 사이언티스트가 되고 싶은 사람'을 기준으로 작성되었습니다. 그리고, 저처럼 '어디서부터 시작해야 할지 막막하셨던 분'들이 참고하시면 도움이 될 것 같습니다.




모험을 시작하며

모험을 시작하기 앞서서 스스로 세운 원칙(?)을 소개하도록 하겠습니다. 일종의 저의 마음가짐인데요. 처음부터 세운 원칙도 있고 하나씩 배워가면서 경험하고 느끼면서 새로 추가한 것도 있습니다. 앞으로 또 바뀌겠죠?


1. 동기부여를 위한 채널을 만들기

가장 먼저 드리고 싶은 말입니다. 비전공자가 데이터 사이언티스트가 되는 길은 쉬운 길이 아닙니다. 그리고 얼마나 오래 걸릴지도 모르는 길이기 때문에 포기하지 않고 계속해서 열정의 연료를 채울 수 있는 채널을 찾는 것이 중요하다고 생각됩니다. 저 또한 그랬는데요. 저만의 몇 가지 방법을 소개하고자 합니다.


<선배/멘토 찾아보기>

 이 방법은 분야 상관없이 좋은 방법인데요. 직접 만나거나 연락하여 조언을 얻으면 제일 좋은 방법이겠죠. 먼저 이 길을 걸어가신 분들에게 가르침을 받는다는 것은 정말 귀한 일일 것입니다. 특히, 비전공자에서 데이터 사이언티스가 되신 분이 있다면 더 도움이 되었겠죠?

 그래도 모든 것이 연결되어 있는 인터넷 세상에서는 직접 만나지 않아도 찾을 수 있습니다. 저도 국내외 고수분들을 찾아서 그분들이 남기신 흔적들을 찾아다니면서 배움을 얻었습니다. 그중에 국내의 몇몇 분을 소개해드리겠습니다.

 - 하용호(카카오): '넘버웍스'를 창업하셨다가 카카오에 인수되어 현재는 카카오에서 데이터 사이언티스트로 일하고 계십니다. 워낙 유명하신 분이라 관련 자료를 찾으면 좋은 자료를 많이 얻을 수 있습니다. 특히, '슬라이드 쉐어'의 자료가 매우 유용합니다. 그중에서  '어떻게 하면 데이터 사이언티스트가 될 수 있나요'를 소개합니다.

 - 김진영(Snap. Inc): 마이크로소프트에 계시다가 최근에 스냅챗으로 옮기셨네요. 저에게는 QS(Quantified Self)의 길을 소개해주신 분입니다. 블로그 활동은 물론 '헬로 데이터 과학'이라는 책도 집필하시고 '데이터 지능'이라는 팟캐스트도 운영하고 계십니다.

 그 밖에 많은 분들이 계시는데요! 여러분도 찾아보세요 :)


<책/블로그>

먼저 독서는 학습 목적 외에도 '데이터'나 'IT' 산업과 관련된 시야를 넓히고 데이터 사이언티스가 되는 먼 길을 갈 수 있는 원동력이 됩니다. 최근에 '빅 데이터가 만드는 세상'을 재미있게 읽었습니다. 제가 읽었던 책 목록은 다음 글에서 소개를 해드리도록 하겠습니다. 그리고 요즘은 블로그, 브런치, 미디엄, 페이스북 페이지 등을 다양한 미디어 채널을 통해 길지는 않지만 유용하고 수준 높은 읽을거리를 쉽게 접할 수 있습니다. 그리고 개인적으로 우리나라 공공기관의 자료는 그다지 신뢰하지는 않는데요. 한국데이터진흥원에서 운영하는 데이터 전문가 지식포털에서도 나름 좋은 자료를 많이 얻고 있습니다.


<콘퍼런스/세미나 참석하기>

개인적으로 짧지만 강한 동기부여가 되는 방법입니다. 왠지 커다란 강연장에 같은 관심사를 가진 사람들과 함께 있는 것만으로도 큰 에너지를 얻을 수 있는데요. onoffmix나 아니면 PyCon Korea와 같이 개발, 데이터 사이언스와 관련된 페이스북 페이지 그리고 T아카데미, DEVIEW와 같이 기업에서 운영하는 교육 및 행사 등을 통해 정보를 얻고 있습니다.


<최신 트렌드 살펴보기>

아직 이 부분은 저도 미숙한 부분입니다. 우선 최신 트렌드라고 하면 두 가지로 나눌 수 있을 것 같습니다. '산업/기업' 동향과 '학술' 동향입니다. 학술적인 동향을 아는 것은 최신 논문을 많이 접하는 것이 좋은 방법이지만 쉽지가 않습니다. 저도 제대로 하지는 못하지만 페이스북으로 팔로잉하고 있는 고수 분들이나 페이지 등을 통해 올라오는 것만 봐도 충분할 것 같습니다.(문제는 이조차 쉽지가 않다는 것이지만요...) 그리고 개인적으로 '구글 알리미'를 사용하고 있습니다. 관심 있는 키워드를 입력해 놓고 최신 기사를 훑어보는 정도로 산업계 동향이나 최신 용어 등은 어느 정도 이해할 수 있는 것 같습니다. 물론 SNS에서 믿을 만한 분들을 통해 올라오는 자료도 정말 유용합니다. 정리하다 보니 SNS(특히 페이스북)은 저에게 없어서는 안 되는 유용한 정보 채널이네요! 개발, 머신러닝 페이스북 채널을 모아놓은 FB Sight를 추천해드립니다.


2. 나만의 커리큘럼을 만들기

 만약 이 글을 읽고 계시는 분이 데이터 사이언스와 관련된 대학과 같은 정규 코스에 계시다면 크게 걱정하실 필요는 없는 문제입니다. 최근에는 데이터 사이언스 관련된 사설 교육 기관과 프로그램도 많기 때문에 그런 곳에 속해 계신다면 커리큘럼 문제에 있어서는 큰 도움이 되실 것 같네요. (저는 돈이 없다는...ㅠㅠ)

 하지만, 그런 곳에 소속되어 있지 않다면 커리큘럼이 필요합니다. 대충 영문으로 검색해보시면 굉장히 많은 자료를 찾을 수 있습니다. 그에 비해 한글로 검색하면 그렇기 자료가 많지는 않습니다.(기사 아니면 광고글들...)

'데이터 사이언티스트의 길' 영문 검색

그리고 특히 국내 자료에서는 '데이터 사이언티스트가 되는 법'에 대해서는 자료를 찾을 수 있지만 '커리큘럼'이라는 부분에서는 더 부족한 것 같습니다. 저에게 '커리큘럼'에 대해서 생각하게 했던 것이 바로 'The Open Source Data Science Masters'라는 개인이 만든 커리큘럼입니다. Clare Corthell라는 분이 자신만의 커리큘럼을 만들어 훌륭한 데이터 사이언티스트가 되신 사실을 알게 된 후입니다. 물론, 스탠퍼드에서 컴퓨터 공학, 기계공학, 제품 디자인까지 공부한 사기 캐릭터 같은 분이시지만 그런 사실을 차치하고서라도 자신만의 커리큘럼을 만든다는 부분이 저에게는 인상 깊었습니다.

 개인마다 실력도 다르고 학습 속도도 다르기 때문에 자신에게 맞는 커리큘럼을 만들고 계속해서 업데이트를 하는 것이 중요하다고 생각됩니다. 저 같은 경우도 처음에 유명한 'Coursera'의 대학 강의를 먼저 들었었는데요. 워낙 어려워서 한 번에 이해하기가 쉽지 않았습니다. 그래서 'Udacity'강의를 먼저 듣는 것이 오히려 저에게는 더 효과적인 학습 순서였습니다. 이처럼 자신의 수준과 취향에 맞는 강의자료를 찾아서 한 단계씩 성장하는 방법을 추천해 드리고 싶습니다.(저의 커리큘럼은 아직 중구난방이라 정리 작업 중입니다. 나중에 어느 정도 정리가 되면 공개하도록 하겠습니다.)


3. 내 위치를 확인할 수 있는 평가지표를 세우기

내가 과연 어떤 수준인지 스스로를 평가하는 것은 매우 중요합니다. 그래야 부족한 것을 알고 더 발전할 수 있기 때문이죠. 저에게 가장 유용했던 것은 바로 기업 인터뷰 질문입니다. 데이터 사이언티스트를 대상으로 하는 '기업 면접'에서 나오는 질문을 내가 얼마나 대답할 수 있는지 여부에 따라 저의 현재 상태를 알 수 있다고 생각했습니다. 영문으로 검색하면 굉장히 많은 자료를 찾을 수 있는데요. 국문 자료는 앞에서 소개해 드린 하용호 님이 2015년에 입사지원자에게 보낸 메일 중 지원서에 함께 보내도록 한 체크리스트입니다. 원래 구글 드라이브로 자료가 공유되었었는데 삭제가 되었네요. '데이터 사이언티스트 '넘버웍스' 체크리스트'로 검색을 해보면 찾으실 수도 있을 것 같네요!(구글 드라이브가 막힌 것으로 봐서 제가 개인적으로 공개하기는 어렵겠네요ㅜㅜ) 저는 지금도 이걸 보면서 제 자신의 부족함을 느끼면서 공부하고 있습니다.(체크리스트를 볼 때마다 아는 것이 많아지는 것에 소소한 성취감을 느낍니다ㅎㅎ)


4. 기록하고 공유하기

이것도 너무 뻔한 이야기인데요. 저의 경우에는 제가 공부한 것을 블로그에 정리해서 올리는 것이 많은 도움이 되었습니다. 혼자서 공부할 때는 이해가 되었다고 생각했던 것도 누군가에게 설명할 목적으로 정리를 하다 보면 모르는 것이 허다했습니다. 예전에는 네이버 블로그에 올렸었는데 지금은 포트폴리오용으로 개인 블로그를 다시 만들어서 정리하고 있습니다. 이왕 데이터 사이언티스트가 되기로 목표를 세우신 분은 포트폴리오도 겸할 수 있는 블로그를 만들어 보는 것도 좋을 것 같습니다.


5. 실제 프로젝트 중심으로 이론을 학습하기

이것도 누구나 말할 수 있는 당연한 이야기인데요. 저는 직접 경험하면서 깨닫게 되었습니다. 강의를 통해 아무리 듣던 알고리즘이나 데이터 분석과 관련된 이론도 당시 공부할 때만 좁은 시야로 알고 넘어가는 수준이었는데요. 데이터를 정제하고 살펴보고 이를 바탕으로 모델을 만들어 학습하고 평가하는 전체 과정을 경험했을 때 비로소 '아, 그때 배운 것이 여기서 이렇게 쓰이는구나'라고 깨달음을 얻을 수 있었습니다. 하지만, 전체 프로젝트를 경험하는 것은 쉽지가 않은데요. Kaggle과 같은 데이터 분석 경진대회는 난이도 별로 자신에게 맞는 프로젝트에 참여할 수 있고 부족한 부분은 다른 사람의 코드를 통해 배우면서 시작하기에 정말 좋은 도구인 것 같습니다. 하지만, 직접 실무에서 일하는 것만큼 좋은 배움은 없는 것 같습니다. 저 같은 경우에는 한 달 동안 인턴십을 통해 배웠던 것이 다른 어떤 것보다 정말 큰 도움이 되었었습니다. 역시 진짜 문제에 부딪혀야 빨리 성장하는 것 같습니다. 다만, 문제는 일하려면 실력이 있어야 한다는 것이죠...ㅠㅠ




Ephilogue

아직 많이 부족하지만 위에 적은 다섯 가지를 마음에 새기고 데이터 사이언티스트가 되기 위해 노력하고 있습니다. 다음에는 지금까지 제가 했던 과정과 부족한 부분을 돌아보고 앞으로 어떻게 준비할지에 대해서 나누어 보도록 하겠습니다. 아낌없는 조언 부탁드립니다 :)


브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari