데이터 엔지니어, 분석가, 사이언티스트: 역할과 내 커리어의 방향성
누구인가? 누가 데이터 소리를 내었어?
입사 6개월 차까지만 해도 데이터분석가, 데이터엔지니어, 데이터사이언티스트를 구별할 줄 몰랐다. 구성원이 10명 채 안되는 스타트업이다보니 데이터와 관련된 업무는 무엇이든 주워 하였다. 2 년 차쯤되니 구별되기 시작 하였다. 그래서 내가 한 일에서 직군별로 구별하여 정리해보는 시간을 가지기로 했다. 지금쯤에서 한기용 멘토님의 말씀처럼 “급변하는 시대에 결국 내가 좋아하는 것이 무엇인지” 정하고 방향성을 정해야하는 중요한 시기라고 여겼다.
먼저 세 직군의 역할을 정리해보자.
데이터분석가 | 데이터 엔지니어 | 데이터 사이언티스트 | |
---|---|---|---|
역할 | 기존 데이터를 분석하여 의미 있는 인사이트를 도출 | 데이터 인프라 구축 및 관리 | 고급 분석 기법과 머신러닝을 활용한 문제 해결 |
그림으로 쉽게 풀어준 이미지를 찾았다. [출처] https://github.com/Team-Neighborhood/I-want-to-study-Data-Science/wiki/데이터-분야의-직군-소개
데이터를 석유로 비유하자면 석유를 채굴하고 정제하는 엔지니어, 제품을 분석하고 품질 검사하는 분석가, 제품을 혁신적으로 활용하는 방법을 연구하는 사이언티스트로 설명할 수 있다.
단, 회사 by 회사
하지만 회사의 규모와 데이터를 활용하는 정도에 따라 역할이 명확하게 구별되지 않을 수 있다. 게다가 한 사람에게 여러 역할을 요구하는 경우도 많다. 규모별 특성과 장단점을 살펴보자.
소규모 회사 또는 스타트업
- 한 사람이 여러 역할을 수행, 아마도 나…
데이터 수집부터 분석, 모델링까지 전 과정을 담당할 수 있다.
장점 단점 비용 효율적, 빠른 의사결정 전문성 부족 가능성, 업무 과부하
중간 규모 회사
- 데이터 분석가와 데이터 엔지니어 역할이 결합되거나, 데이터 엔지니어와 사이언티스트 역할이 결합될 수 있다.
분석가와 데이터 엔지니어, 데이터 엔지니어와 사이언티스트 두 직무를 묶어서 하는 경우도 있고 데이터엔지니어의 역할은 백엔드가 맡고 ML엔지니어와 데이터 사이언티스트 일을 묶어서 맡을 수도 있다.
장점 단점 역할 간 원활한 소통, 프로세스 효율성 특정 영역에 대한 심도 있는 전문성 부족 가능성
대규모 회사
- 보통 역할이 명확히 구분되어 있지만, 프로젝트나 팀에 따라 유연하게 운영될 수 있다.
데이터 분석가, 엔지니어, 사이언티스트가 각각 전문 영역에 집중하며 협업이 가능하다.
장점 단점 높은 전문성, 대규모 프로젝트 수행 가능 부서 간 소통 문제 가능성, 관료주의
우리 회사도 그러하였다. 사내에 데이터팀이 따로 있지 않고 데이터 직무로는 나와 동기 한 명이 처음이었다. 지금 생각해보면 데이터 분석가, 데이터 엔지니어, 머신러닝 엔지니어 역할이 제일 많이 해온 거 같다. 오픈소스 모델들을 가져와서 새로운 알고리즘을 넣거나 최적화를 수행했지만 모델 자체를 건드린 부분은 크게 없었다.
머신러닝 엔지니어?
위에서 잠깐 보였듯이 3가지의 데이터 직군 외에 그로스해커, 데이터 시각화 전문가, 머신러닝 엔지니어도 있다.
그로스해커 데이터 시각화 전문가 머신러닝 엔지니어 역할 데이터 기반의 마케팅 전략을 통해 빠른 성장을 달성 복잡한 데이터를 이해하기 쉽고 인사이트 있는 시각적 형태로 표현 머신러닝 모델을 실제 서비스에 적용하고 운영
- 데이터 분석가 역할
- PoC 단계에서 데이터 분석을 통한 사업 가능성 평가, 서비스 필요성 조사
- 요구사항 분석을 통한 필요한 데이터 파악
- 기획 단계에서 다양한 팀과 협업하여 프로젝트 구성
- 데이터&머신러닝 엔지니어 역할
- 데이터 전처리 파이프라인 구축
- AI 서비스를 위한 서버 환경 구축
- 배포 자동화 시스템 개발
- AI 서비스 모니터링 시스템 구축
- 데이터 사이언티스트 역할
- 오픈 소스 AI 모델을 활용한 서비스 기능 개발
- 데이터 전처리, 모델 추가 학습, 평가 등 AI 파이프라인 전반 수행
- AI 관련 이슈 대응 및 최적화
2년 안에 여러가지를 해보았지만 그만큼 깊이가 없다고 느꼈다. 이쯤에서 이직 계획하며 한 직군에 전문성을 쌓고 싶었다. 결국 내가 다른 일보다 열의를 가지고 했던 작업은 데이터를 수집하고 정리하거나 가공하여, 새로운 가치를 띄는 데이터를 만드는 것이었다. 정리와 가공을 하는 과정에서 ML/DL을 이용하는 것에 적극적이었다.
문장 유사도를 활용한 상품 매칭
가격 비교 서비스에서 상품 매칭이 필요했다. 100% 아르바이트를 통해 수동으로 해결하던 것을 여러 필드의 값을 활용한 알고리즘과 상품명의 문장 유사도를 활용하여 66%를 자동으로 매칭할 수 있도록 솔루션을 만들었다.
크롤링한 데이터를 NLP와 LLM을 활용하여 새로운 데이터로
음식점 리뷰 데이터를 크롤링하여, 키워드로 도출한 다음 업태, 메뉴와 함께 음식점의 취향 데이터를 만들었고 평점과 같은 정형 데이터와 합하여 맛집 개인화 추천에 필요한 데이터를 만들었다.
이목구비를 분석하고 생성형 모델로 새로운 데이터로
이미지 데이터에서는 얼굴의 이목구비 위치값을 파악하는 모델을 활용하여, 고객의 얼굴에서 황금비율을 진단해주거나 다른 배경의 이미지 속에서 마치 그 곳에 간 것처럼 새로운 이미지를 생성하는 프로젝트를 진행하였다.
나의 성향 파악
위 링크의 위키에 나온 내용과 함께 6가지 직군을 성향별로 정리를 해보면 모두 개발자이긴 하지만
- 데이터 분석가는 “기획자” 성향이 강하고
- 데이터 엔지니어는 “개발자” 성향이 강하고
- 데이터 사이언티스트는 “연구자” 성향이 강하다.
- 머신러닝 엔지니어는 “개발자”와 “연구자” 성향이 강하지만 개발자 성향이 약간 더 강하다.
- 데이터 시각화 전문가는 “개발자”와 “마케터” 성향이 강하지만 개발자 성향이 약간 더 강하다.
- 그로스해커는 “마케터” 성향이 가장 강하다.
결론
나는 기획자와 개발자의 성향이 강한 것 같다. 하지만 기획보단 지금의 연차에서는 개발자의 성향을 살려 커리어를 쌓을 때이고 재밌는 것도 개발 일이 더 재밌다. 데이터 사이언티스트도 고려하지 않은 건 아니지만 AI서비스는 결국 데이터의 양에 따라 성능이 오고 가기에 규모의 경제로 입지가 많이 줄어들 것이 두렵다. 결국 내가 보다 더 열의를 가지고 흥미 있어하는 직군은 머신러닝/딥러닝을 할 줄 아는 데이터 엔지니어라고 결론을 내렸다.
다음 포스팅
머신러닝/딥러닝 할 줄 아는 데이터 엔지니어의 로드맵