본문 바로가기
○ Career | Contest | Job |/Curriculum

빅데이터를 위한 코딩, 무엇부터 공부해야 하나요?

by 0ver-grow 2019. 7. 15.
반응형

출처

빅데이터 분석에 관한 여덟 가지 업무 영역 분류

빅데이터 분석에서는 각기 다른 업무 영역들이 상호 작용하고 있는데, 이를 저의 경험을 바탕으로 말씀드려 볼게요. 회사마다 상황은 다르겠지만 대략 분류해 본다면 아래와 같을 거예요.

 

1. 데이터 수집 : Business Data Analyst, Data Engineer, Marketing Technologist, Growth Hacker

2. 데이터 파이프라인 구축(데이터 정제) : Data Engineer

3. 분석 환경 구축 : Data Platform Architecture

4. 데이터 분석 도구 개발 : SW Engineer

5. 데이터 시각화 : Business Data Analyst(Data Miner), Marketing Technologist, Growth Hacker

6. 비즈니스 데이터 분석 및 업무 적용 : Business Data Analyst(Data Miner),  Marketing Technologist, Growth Hacker

7. 머신러닝 모델 개발 및 적용, 개선 : ML Engineer, Data Scientist(Data Miner),  Marketing Technologist, Growth Hacker

8. 선행 기술 연구 : Data Scientist, Marketing Technologist

 

업무 역할에 따라 필요한 언어가 달라져요

일반적으로 데이터 엔지니어는 여러 기기 혹은 거래로부터 발생하는 데이터를 수집/가공해 데이터 분석가나 엔드 유저가 쉽게 활용할 수 있도록 다리 역할을 하는 이들을 의미합니다.

 

데이터 파이프라인을 생성한다고 표현하며, 따로 담당 직무가 없는 경우 백엔드 개발자가 같이 수행하기도 하지요. 제 영역은 아니기 때문에 아주 자세히 말씀드리기는 어렵지만, 일반적으로 데이터 구조와 알고리즘, OS 등의 지식을 기반으로 하둡 에코시스템에 대한 이해가 필요하고요. 자바나 스칼라 등의 언어에 대한 이해가 요구된다고 알고 있어요.

 

머신러닝 엔지니어의 경우, 기업에서 필요로 하는 머신러닝 모델을 실제로 개발하고 적용하는 역할을 합니다. 기존에 통계학을 베이스로 한 전문가들 관점에서는 데이터 마이너라고 불리기도 했죠. 이런 머신러닝 모델을 개발하기 위해서는 R, Python, Spark, Tensorflow, Keras 등의 분석 언어와 라이브러리들에 대한 이해가 필요해요.

 

데이터 사이언티스트는 기업에 따라 조금 다르기는 한데요. 대부분이 연구 조직으로 선행 기술 연구를 위해 논문 분석을 주로 하고요. 기업에 적합한 분석 방법론을 제시해주는 역할을 합니다. 하지만 대부분의 기업에서는 데이터 사이언티스트가 머신러닝 엔지니어와 혼용되고 있으며, 실제 프로덕트 개발에 치우친 업무를 하는 경향도 많아요.

 

비즈니스 데이터 분석가는 CRM 담당자 등이 실제 기업에서 수행해야 하는 각종 의사결정을 지원하기 위한 데이터 분석을 수행하는데요. 데이터 활용의 엔드 유저 중 하나입니다. 맡은 업무 분야에 따라 마케팅, 전략, 상품 개발 등에 데이터를 활용하며, 각종 지표를 분석하거나 시각화하여 표현하는 업무도 수행합니다.

 

위에서 말씀드린 모든 직무는 기본적으로 데이터베이스, 데이터레이크에서 본인들이 원하는 데이터를 정확하고 효율적으로 추출할 수 있어야 하기 때문에 SQL이 아주 기본적인 무기가 됩니다.

 

SQL은 공통, 분야에 따라 자바나 파이썬을 공부하세요

다시 처음으로 돌아가 볼게요. 멘티님께서 앞으로 나아가고 싶은 직무의 길이 데이터 엔지니어 류라고 한다면, C, 자바, 파이썬, 하둡에코시스템 쪽의 스킬셋을 확보하시는 게 도움이 되실 거예요.

 

그리고 만약 머신러닝 엔지니어나 데이터 분석가 쪽으로 가신다면, 파이썬(또는 R) 및 관련 분석 패키지/라이브러리에 대한 지식을 갖추는 것이 도움이 됩니다. SQL은 직무와 무관하게 반드시 알아야 하는 아주 기본적인 스킬셋이에요.

 

결론적으로 정리한다면 이렇습니다. 첫 발걸음을 시작하시는 단계이니, 엔지니어링 쪽을 선택하신다면 SQL과 자바(C)를 공부하시면 되고요. 분석 쪽을 선택하신다면 SQL과 파이썬을 공부하시면 좋겠네요.

 

 

반응형