시니어 데이터 과학자 면접에서 보는 것
※ 해당 내용은 회사를 대표하지 않는, 개인의 의견입니다.
2012년 HBR에서 Data Scientist를 "The Sexiest Job of the 21st Century"로 묘사한바 있다. 이 아티클을 기점으로 한국에서는 최근 몇년 사이 빅데이터, 데이터 과학, 4차산업혁명이 맞물려서 데이터 과학은 아주 한한 키워드가 되었고 많은 사람들이 데이터 과학자를 희망하면서 공부하였고, 또 취업을 하였다.
그렇게 시간이 흘러 지금은 과거 대비 모든 환경이 정말로 편해졌다. Tensorflow나 Pytorch 등 다양한 프레임워크가 모델을 처음부터 구성하고 만들어야 하는 수고로움을 감소시켜줬고, Worflow 전반에 걸쳐 로그를 남기고 실제 프로덕트에 서빙하는 부분도 이제는 다양한 툴과 솔루션이 업무의 난이도를 낮춰주고 있다. 자연스럽게 다른 필드에서 일을 하고 있다가 넘어와서 잘 안착하는 경우도 이제는 그리 낯선 모습은 아닌 것 같다.
그래서 요즘은 데이터과학자가 뭔가 새로운 유형의 직무라기보다는, 개발자직군 중 데이터와 관려되어 상당히 특화된 하나의 직군이라는 생각이 들게 되었다. 그리고 이런 부분을 감안해서 "시니어 데이터 과학자"를 뽑을 때는 다음과 같이 모델을 넘어 종합적인 부분을 고려하기 시작하였다.
첫 번째로 문제 접근 방식이다. 데이터 과학자는 데이터를 기반으로 문제를 과학적으로 푸는 사람이다. 다시 말해서 현상에 대해 의심을 품고 논리적으로 접근하는 사람이다. 그래서 시니어 데이터 과학자는 문제를 정의하고, 적절한 방법으로 문제를 풀고 마지막으로 측정한 수치가 보여야 한다. 모든 이가 측정이 어렵다고 할 때 데이터 과학자는 측정을 시도하고 본인의 커리어를 기술할 때 활용해야 한다. 서류상에서 보여줄 수 있다면 아주 좋은 부분이다.
두 번째로 프로젝트 경험이다. 이 부분은 JD와 밀접하게 연결되는 부분이다. 특정한 도메인(Vision, Text, Time Series 등)에 엮여있는 지 여부와 상관없이, 프로젝트의 경험은 다다익선이다. 대신 프로젝트에서 첫 번째로 언급한 문제 접근 방식에서 본인이 기여한 부분이 충분히 보여져야 한다. 그리고 시니어인 것을 감안하면 본인이 리드한 부분이 있어야 한다.
세 번째로, 개발 경험이 있으면 좋다. 이전에는 모델만 잘 만들어도 채용을 하는 경우가 있었다. 하지만 앞서 언급한 바와 같이 모델 관련 프레임워크가 상당히 발전되어, 모델 개발이 보다 수월해졌고, 모델 활용 측면에서 기존 개발 워크플로우와 밀접하게 연결되는 부분이 중요해졌다. 그리고 기존 개발과 업무스타일이 완전히 동일하지는 않더라도, 상당 부분 유사한 부분이 있어, 기존 개발 도구를 활용하여 일을 하는 경우가 상당 부분 있다. 단순한 예시로 git이 그렇다. 따라서 개발 관련 경험이 있다면 단순 모델링을 하는 사람보다는 선호될 수 있다.
마지막으로 커뮤니케이션이다. 시니어에게는 이 능력이 매우 중요하다. 문제를 찾고 프로젝트로 정의하거나, 타 부서와 커뮤니케이션을 해서 합의된 기간안에 합의된 리소스를 활용해서 합의된 목표를 달성해야 한다. 이 때 기간, 리소스, 목표를 프로젝트 시작전에 추정할 수 있어야 한다. 유관부서와의 커뮤니케이션을 통해서 말이다. 이 능력 없이는 모델링 Task 근처에 가지도 못할 수 있다. 프로젝트가 없으니 말이다.
이렇게 적고보니 만능을 원하는 느낌이 들수도 있겠지만 1)데이터과학자는 개발직군, 2) 시니어는 많은 문제를 경험한 사람이어야 한다 이 두가지 조건으로 채용기준을 나눠서 볼 수 있고, 1번은 직무 본연의 역할로 인한 조건이지만, 2번은 회사의 입장에서 최소의 비용으로 최대의 효과를 가져다 줄 수 있는지에 대한 부분이기 때문에 현재 본인의 커리어를 관리하는 입장에서 참고가 되었으면 한다.