본문 바로가기

일상, 생각, 경험/그냥 얘기

[취준생의 데이터 분야의 커리어 고민 2] 분석으로 취업은 힘들다

저번 글에 이어서 마저 써보려고 한다.
해온 걸 주루룩 적었었는데, 주로 데이터 사이언스나 분석에 대한 글들이었고 뭔가 모르게 회의적인 느낌의 뉘앙스였던 거 같다. 글을 쓰는 이 시점에서 나는 분석가가 아니라 백엔드 엔지니어, 정확히는 데이터 엔지니어로 커리어를 잡았는데, 이제 이에 대한 이야기를 하나씩 해볼까 한다.
이 글에 대한 내용을 한마디로 말하면 다음과 같다.

일반 학사, 신입이 분석가로 취업하기 어렵다.

먼저 내가 왜 분석가로 커리어를 세우지 않았는지 이야기해보려 한다.
일단 취준생의 신분이므로 무엇을 하나 아무튼 최종목표는 취업일 것이고, 중심 선택의 기준을 여기에 두려 한다. 지난 일년 동안의 내 개인적인 경험이므로, 지극히 주관적이고 틀린 이야기 일 수 있다.

1) 학사로 T.O 가 잘 안 난다.

앞으로는 달라질지 잘 모르겠는데, 내가 한 해 동안 보아온 공고들은 대부분 석사 이상을 채용했다.
난 중견 / 대기업 목표를 했어서 사실 스타트업이나 다른 기업들은 잘 모르나, 프로그래머스에 뜰만한 IT 기업들도 그랬던 거 같다.

지난 하반기 CNS 공고. AI / 데이터쪽은 학사 TO 가 없다.

물론 경력은 제외다. 그런데 사실 이 쪽이 생긴 지 얼마 안 된 터라 경력 무관이라고 뜨는 경우들이 있는데, 이런 경우 나 같은 신입도 지원해볼 수는 있으나 실제 경력자랑 대등하게 면접을 봐야 하는 경우인 듯하다.
여하튼 확실했던 건, 대기업들은 일반 학사보다 석, 박사 위주의 채용을 한다는 것이다. 그리고 내가 알기론 석, 박사들도 데이터 분석으로 취업하려면 굉장히 치열한 것으로 알고 있다.

2) 공부할 게 엄청 많다.

이건 취업에서 살짝 빠지는 이야기일 수 있는데, 그래도 중요하게 느낀 거라 써본다.
말 그대로 공부할게 엄청 많다.
내가 생각한 것들은 다음과 같다.

  • 기초 통계
    • 분포와 그래프, 수치의 의미를 볼 수 있다.
    • 기본적인 통계 모델들을 알아야 데이터 간의 관계를 알 수 있다.
    • 어떤 가설 검증이나 누군가를 설득하는데, 필요한 경우 수치적인 근거를 댈 수 있다.
    • 결과가 늘 틀릴 수도 있다는 의심하고 검증하려는 태도, 통계적인 관점을 가질 수 있다.
  • 데이터 핸들링 (코딩)
    • 이건 그냥 내가 원하는 것을 실행할 수 있는 능력이다.
    • 데이터 핸들링이 자유자재로 돼야, 내가 생각하는 가설을 실제로 구현할 수 있다.
    • R이나 Python을 잘 다루는 정도가 되겠다.
  • 머신러닝 (ML)
    • 기술 통계, 그 이상의 분석을 하고 싶다거나 비정형 데이터를 다룰 때 알아야 한다.
    • 종류도 무수하지만, 난이도도 참 무수하다....
    • 선형 모델은 사실 상 기초 통계에 들어간다. 여기서 말하는 머신 러닝은 비선형 모델들을 의미한다.
    • NLP 나, 이미지 처리, 클러스터링 등
    • 다양한 머신러닝을 많이 알고 잘 활용할 줄 알아야 더 다양한 가설 접근과 시도를 할 수 있다.
  • 스토리 텔링
    • 주어진 데이터에서 문제 정의를 어떻게 할 것이며, 어떤 인사이트를 뽑아내어 팀에게 전달할 것인가.
    • 어떤 방식으로 전달해야 잘 전달할 수 있을까. 시각화는 여기서 빛을 발하는 도구다.
    • 근데 '효과적이고 올바른 전달' 을 위한 시각화도 쉬운 게 아니다.
    • 팀에게 발표하는 시간 동안 팀원들이 지루하지 않게, 핵심만 잘 담고 덜어낼 건 덜어내야 한다.
    • 사실상 이게 제일 어렵다.

보통 캐글 타이타닉으로 입문하는데, 이건 수능으로 치면 2점짜리 문제를 푸는 거라는 생각이 든다.

기초 통계나, 데이터 핸들링 정도는 사실 책 몇 권 보고 인터넷에 수많은 자료들을 통해 비교적 쉽게 익힐 수 있다. 문제는 ML과 스토리 텔링이다.

ML의 경우 보통 처음엔 만들어진 모델들을 이해하고 쓰겠지만, 경우에 따라서 옵티마이징 혹은 커스터마이징해야 하는 경우가 생긴다. 나의 경우에는 추천 모델을 만들 때, W2V을 그냥 gensim 라이브러리에서 가져다 썼었는데, 후에 단어 간의 거리를 일정하게 주는 것이 아니라, 시간 컨택스트에 맞게 가중치화 시키려고 하니 아예 내가 새로 모델을 짜야했다. 모델 하나 잘 생각해내서 또 잘 코딩하는 것은 사실 쉬운 일은 아니다. 나름의 논리로 모델을 잘 설계하려면 결국 '수학' 이라는 국면에 도달한다. 길어봐야 1년 바라보고 취업을 준비하는 입장에서 단기간에 얻을 수 있는 능력은 아니라고 생각한다. 왜 사람들이 대학원에 가서 기초부터 공부하는지, 그리고 왜 데이터 산업에서 석사 이상을 뽑으려고 하는지, 여기서 그 의미를 느낄 수 있었다.

스토리 텔링의 경우 사실상 제일 어려운 파트인데, 무엇보다 도메인 지식이 잘 없으면 문제 정의하거나 심도 있게 살펴보는 게 많이 힘들다. 물론 안 그런 경우도 있다. 다만 복잡한 테스크나 산업에 갈수록 더 그런 것 같다. 문제 정의가 안되면, 애초에 스토리를 설계할 수도 없다. EDA 하는 수준으로 끝나버릴 수도 있다.
이전에 김해시 화재 예측 대회와 화성시 최적 버스 노선 할 때 상위권에 든 사람들의 제출 파일들을 보니, 그냥 EDA 하는 수준이 아니었다. 데이터를 기반으로 실제 그럴싸한 가설들을 만들고, 실제 현장의 맥락을 고려하여 분석을 내놓았다. 딱 보기에도 정말 고심에 고심을 더한 결과물 들이었고, 대부분 개인이 아닌 팀 단위가 많았다.
한편 내가 해놓은 것들을 잘 다듬어 잘 설명하는 것도 그냥 공부한다고 되는 거 같지는 않다. 나는 좋은 데이터 분석 자료를 많이 봐야 한다고 생각하는데, 데이터 기업들이 자신들의 분석 발표자료를 공개할 리는 없고, 사실상 Kaggle 이나 지난 공모전 대회의 수상작들을 보는 것 정도가 다다. 그런데 이런 스토리텔링 역시 그 내용이 도메인 따라 영향을 받는 게 많다고 느꼈다. 즉 '일반적인' 이라는 느낌은 잘 없다는 것.
마지막으로, 사실 일반 취준생이 이렇게 스토리텔링을 세울 기회가 많지 않다. 있어봐야 공모전 정도가 있는데, 사실 이게 현업과 실무에 그렇게 큰 영향이 있는지는 잘 모르겠다. 아무튼 ML과 더불어 공부하기 가장 어려운 파트라고 생각한다.

3) 성과(포트폴리오)를 내기 쉽지 않다.

보통 신입 분석가로 준비하면 캐글이나 각종 데이터 분석 대회에 참여할 텐데, 보통 1-5위 정도만 상을 준다.
나도 대회 주최 측으로 참여해본 경험 상, 그 이상 등수의 참여자들의 제출 파일은 잘 안 보게 된다.
즉, 내가 아무리 열심히 해서 상위 5%에 들었어도, 수상도 없고 뭔가 이력서에 성과로 남기에도 힘든 것이다.

상위 5등 외 다른 팀들도 무수한 노력을 했을거라 생각한다. 하지만 슬프게도 잘 인정 되지는 않는다. 

그리고 대회마다 이런 불확실성을 가지고 임하게 된다. 예를 들어, 내가 이전에 버스 승차 예측 대회에서 나름의 노력으로 노하우를 쌓았지만, 다음 대회가 NLP 관련 대회라면 또 다른 공부와 노하우를 필요로 하게 된다. 그리고, 각 대회에는 이미 그쪽 도메인 전문가 + 실력자 코더들이 있는 경우가 많다. 개발자의 경우 주니어라는 걸 감안하여 범위가 어느 정도 정해져 있는 느낌이라면, 분석은 그렇지 않다. 주니어만을 위한 데이터 분석 대회는 없다.
그래서 결과적으로 성과를 내기 어렵고, 낸다고 한들 과연 취업에 그렇게 큰 효용이 있는지도 사실 잘 모르겠다.
워낙에 대회와 도메인 따라 달라지기 때문이랄까. 공부해야 하는 게 많다고 한 이유와 같다.

4) 애매하다.

약간 애매하다. 이건 그냥 내 느낌이다. 내가 공대생이라서 그럴 수도 있다.
불확실성에 기반해 실험을 하고, 될지 안 될지 모른다. 이것도 시도해보고 저것도 시도해본다. 이 결과가 정확히 옳은지 그른지, 내 방법에 틀린 건 없는지 잘 모를 때가 많다. 일단은 스토리와 말로 잘 설명해본다. 근데 기술적인 것도 알아야 하고 도메인 적인 것도 알아야 온전히에 가깝게 이해할 수 있는데, 이 둘 다 가지고 이해하는 사람은 별로 없다. 그래서 내 결과에 대한 피드백받기가 힘들다. 물어볼 곳도 잘 없다. 내 결과에 나 스스로도 확신을 가질 수가 없다.
이것저것 알아야 할게 많다. 도움이 필요한 경우에는, 해당 전문가 예를 들어 데이터 엔지니어 등에게 물어봐야 한다. 내가 지금 짜고 있는 스토리나 인사이트가 실제로 비즈니스에도 도움이 되는지 비즈니스 전문가와도 소통해야 한다. 새 프로젝트에 들어가게 되면, 또 새로운 도메인 지식을 공부해야 한다. 도메인 지식은 분석 공부와는 별게의 문제다.
여기저기 걸쳐있는 게 많은 상태로 진행해야 하다 보니, 집중이 분산된다. 물론 엔지니어와 비교했을 때다.
물론 사람들마다 의견이 다를 거라고 생각한다. 다만 나는 그렇게 느껴졌다.

5) 이미 많은 사람들이 그렇게 말한다.

데이터 분석 쪽은 핫하다. 그런데 나 같은 취준생한테만 핫한 게 아니다. 이미 실무에서 일하시는 경력자분들에게도 핫하다. 마케터이신 분들도 배워보고 싶어 하고, 백엔드 엔지니어 분들도 이쪽에서 일해보고 싶어 한다. 그리고 실제 대부분의 기업들은 이런 경력자를 원한다. 비즈니스 로직을 경험해본 사람, 성과를 내본 사람을 원한다. 애초에 분석 직군 자체가 구체적인 성과가 목표가 되기 때문에, 기업 입장에서는 당장의 결과물을 뽑아낼 수 있는 사람을 원하는 게 당연하다. 그래서 나같이 혼자 그냥 공부하고, 공모전 몇 개 나가보고, 인턴 몇 개월 한 사람은 이 경쟁에서 불리하다. 그 와중에 나 같은 주니어들도 분석해보고 싶다고 여기저기서 모여든다. 애초에 T.O 는 적은데 모이는 사람은 많다. 자소설 닷컴에서 상/하반기 데이터 분석 채용 공고에 뽑는 사람 수와 지원 자수를 보면 알 수 있다. 채팅창 보면 참 쟁쟁한 사람들도 많음을 알 수 있다. 그런 취업 경쟁 시장인 거 같다 여기는.

작년에 네이버 데이터 사이언스 컴피티션 갔을 때, 이런 이야기를 현직에 계신 분들에게 물어보았다. 이렇게 준비하면 저 네이버 데이터랩에 들어갈 수 있나요? 해당 팀에 학/석사 비율은 어떤가요?
들어오기 힘들다고 말씀하셨다. 대부분 석사라고 했다. 그리고 경력 이직자가 많고, 네이버 내부에서 데이터랩 팀으로 가고 싶어 하는 사람이 많다고 하셨다. 본인은 백엔드 엔지니어에서 온 사람인데, 컴공 출신이면 백엔드 엔지니어로 데이터를 다루다가 데이터팀으로 오기를 추천한다고 하셨다.

이와 비슷한 이야기를 하시는 분들이 많다.
머신러닝 관련 브런치로 유명하신 네이버 클로버 팀의 송호연 님도, 페이스북에 종종 보이는 LA 오빠님의 영상을 보면 알 수 있다.


 

다음 글에서는 그래서 나는 분석이 아닌, 어떤 커리어를 쌓기로 했고, 왜 그 커리어를 선택했는가에 대해서 써보려고 한다.
사실 글 초입부에 이미 적어놓기는 했지만, 그 과정의 고민들과 내가 생각한 준비 방향을 이야기해보려 한다.