ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 데이터 분석가와 데이터 엔지니어의 역할과 차이점
    IT 이야기 2023. 12. 12. 18:22

    *본 글은 한기용(Max) 개발자의 글 일부를 재편집한 내용입니다.

    데이터는 새로운 석유라는 말을 많이 합니다. 데이터의 중요성이 강조되면서 다양한 데이터 관련 직군들이 생겨나고 있는데요. 데이터 분석가와 엔지니어의 역할이 무엇인지, 기술적 스킬 차이는 무엇인지, 어떤 것을 학습하면 좋을지 궁금하시다면 이 글을 끝까지 읽어보시는 것을 추천드립니다.


    데이터 분석가와 데이터 엔지니어의 역할

     

    1️⃣ 데이터 분석가

    데이터 분석가는 기본적으로 데이터 기반으로 지표를 정의하고 대시보드 위에 시각화하는 일과 다양한 현업 부서(예를 들면 세일즈, 마케팅, 고객지원, 프로덕트 등등)로부터 데이터를 이용한 분석 요청을 받습니다. 이런 일을 하려면 회사가 속한 도메인에 대한 일반적인 지식이 필요하고, 같이 밀접하게 일하는 현업 부서의 일에 대한 지식도 필요합니다. 비즈니스 목표에 부합하는 인사이트를 도출해내어 의사 결정에 도움을 주기도 합니다.

    2️⃣데이터 엔지니어

    데이터 엔지니어는 데이터를 수집, 저장, 처리하고 데이터 파이프 라인을 유지보수하며 데이터 공급망을 만듭니다. 데이터 엔지니어라면 데이터 파이프라인(ETL)에 관한 개념을 이해하고 Airflow 등으로 실제 작성을 하고 관리/운영을 할 줄 알아야 합니다. 또 데이터 웨어하우스등이 보통 클라우드 기반으로 돌아가기 때문에 AWS 등의 클라우드에 대한 기본지식을 갖고 있는 것이 중요합니다.

     

    기술적 스킬 차이

     

    1️⃣ 데이터 분석가

    • 통계적 지식: 데이터의 크기에 따라 신뢰도 등을 고려하는 통계적 지식이 중요합니다.
    • 기술적 역량: 프로그래밍 언어 및 도구 활용 능력이 요구되며, 최근에는 간단한 코딩 능력이 강조됩니다.
    • 데이터베이스 지식: 데이터 저장 및 관리를 위한 데이터베이스에 대한 이해가 필요합니다.
    • 데이터 시각화: 시각화 도구를 사용하여 결과물을 효과적으로 전달할 수 있어야 합니다.
    • AB 테스트 분석: 실험 설계와 결과 분석을 수행할 수 있어야 합니다.

    2️⃣ 데이터 엔지니어: 

    • 데이터 파이프라인 및 ETL: 데이터 파이프라인(ETL)에 대한 이해와 실제 작성, 운영 능력이 필요합니다.
    • 클라우드 기술: 대개의 데이터 웨어하우스가 클라우드 기반으로 돌아가므로, AWS 등 클라우드에 대한 기본 지식이 필요합니다.
    • 프로그래밍: Python, Java, Scala 등을 사용하여 데이터 처리 및 파이프라인 구축을 할 수 있어야 합니다.
    • 분산 데이터 처리 기술: 데이터의 크기가 커지면 Spark와 같은 기술에 대한 이해가 필요합니다.
    • 컨테이너 기술: Docker, Kubernetes 등을 이해하여 소프트웨어와 서버를 효율적으로 관리할 수 있어야 합니다.
    • 실시간 데이터 처리: Kafka, Spark Streaming과 같은 실시간 데이터 처리 기술에 대한 경험이 필요할 수 있습니다.

     

    데이터 직군 기술 로드맵

    아래 그림에서 가장 왼쪽이 '데이터 엔지니어'에게 레벨이 올라가면서 필요한 기술 역량이고, 중앙이 '데이터 과학자', 가장 오른쪽이 '데이터 분석가'입니다. 어느 직군으로 가건 가장 기본이 되는 역량은 파이썬 프로그래밍과 SQL/데이터 웨어하우스에 관한 지식입니다. 세상에 배울 것은 널렸기에 주니어라면 너무 많은 걸 공부하려 하지 말고 일단 가장 기본이 되는 기술부터 신경쓰는 것이 좋습니다. (More is Less)

     

    데이터 직군 기술 로드맵

     

    데이터 직군 학습 로드맵

    1️⃣ 데이터 분석가

    1. 통계 및 수학: 기초적인 통계 및 수학 지식이 필요합니다. 평균, 표준편차, 확률 등의 기초 개념을 이해하고, 추론 통계와 회귀 분석 등의 고급 통계 기법을 학습해야 합니다.
    2. 프로그래밍 언어: Python 과 같은 데이터 분석을 위한 프로그래밍 언어를 학습해야 합니다. 전통적으로 파이썬과 같은 프로그래밍은 불필요했지만 점점더 많은 회사에서 데이터 분석가도 간단한 코딩을 하기를 원합니다.
    3. 데이터 시각화: 데이터를 이해한 후 대시보드를 구성하고,  시각화 도구 및 라이브러리를 활용하여 결과를 효과적으로 전달하는 방법을 익혀야 합니다.
    4. SQL: 데이터베이스에서 데이터를 추출하고 조작하기 위한 SQL 쿼리 작성 능력을 키워야 합니다. 이는 데이터베이스와의 상호 작용이나 ETL 작업에서 중요하게 작용합니다.
    5. 데이터 클리닝 및 전처리: 데이터의 품질을 향상시키기 위한 데이터 클리닝 및 전처리 기술을 습득하세요. 이는 누락된 값 처리, 이상치 탐지, 데이터 정규화 등을 포함합니다.
    6. 기초적인 머신러닝: 머신러닝의 기초 개념을 이해하고, 분류, 회귀, 군집 등의 알고리즘을 학습하세요. 
    7. 현업 지식 및 도구: 데이터를 분석하는 도메인에 대한 이해가 중요합니다. 분석을 수행하는 도메인의 비즈니스 프로세스와 특성을 이해하면 분석 결과를 더 효과적으로 해석할 수 있습니다. Git과 같은 버전 관리 도구, Jupyter Notebook과 같은 협업 도구를 사용하는 방법을 익혀 데이터 과학 및 분석 프로젝트에서 효과적인 협업을 할 수 있도록 학습하세요.
    8. 진로 및 도메인 특화: 어떤 분야에 데이터 분석을 적용하고 싶은지 결정하고, 해당 분야에 특화된 지식을 쌓아가세요. 

    2️⃣ 데이터 엔지니어: 

    1. 데이터베이스 및 SQL: 데이터베이스의 기본 개념과 SQL 쿼리 언어를 학습하세요. 다양한 데이터베이스 시스템(MySQL, PostgreSQL, SQL Server, 등)에서 데이터를 관리하는 능력이 중요합니다.
    2. 클라우드 플랫폼: 대부분의 기업이 클라우드 서비스를 사용하므로 AWS, Azure, Google Cloud와 같은 클라우드 플랫폼에 대한 기본적인 이해와 사용 능력이 필요합니다.
    3. 데이터 모델링 및 설계: 데이터베이스 스키마 및 테이블 설계, 정규화 등 데이터 모델링에 대한 기초적인 지식을 습득하세요.
    4. ETL (Extract, Transform, Load) 프로세스: 데이터를 추출, 변환, 적재하는 ETL 프로세스에 대한 이해가 필요합니다. 이를 위해 Apache NiFi, Talend, Apache Beam과 같은 도구를 사용할 수 있습니다.
    5. 빅데이터 처리: 대용량 데이터를 다루기 위한 기술에 대한 이해가 필요합니다. Apache Hadoop, Apache Spark와 같은 분산 데이터 처리 도구에 대한 학습이 중요합니다.
    6. 프로그래밍 언어: Python, Java 등의 프로그래밍 언어를 학습하여 데이터 처리 및 자동화를 위한 스크립트를 작성하는 능력을 키워야 합니다.
    7. 분산 시스템 및 컨테이너 기술: 대규모 데이터를 처리하기 위해 분산 시스템에 대한 이해가 필요하며, Docker, Kubernetes 등의 컨테이너 기술을 활용하는 방법을 익혀야 합니다.
    8. 데이터 웨어하우스: 데이터 웨어하우스의 구축 및 운영에 대한 이해가 필요합니다. 대표적인 데이터 웨어하우스 도구 중 하나인 Amazon Redshift, Google BigQuery 등을 학습하세요.
    9. 스키마 버전 관리: 스키마의 변화를 관리하기 위한 도구 및 기술을 익혀야 합니다. 이는 스키마 버전 관리 시스템이나 도구를 사용하는 방법을 포함합니다.
    10. 실시간 데이터 처리: Kafka, Apache Flink 등과 같은 실시간 데이터 처리 기술에 대한 이해와 활용 능력이 필요합니다.
      보안 및 규정 준수: 데이터 처리 및 저장에서 발생할 수 있는 보안 문제에 대한 이해와 규정 준수를 위한 기술을 습득하세요.

     

    데이터 직군 취업 준비, 뭐부터 공부할지 막막하다면?
    데이터 직무 채용 공고를 12,000개 이상 분석하여 실무에 필요한 핵심 커리큘럼만 담은 데브코스와 함께하세요!

    댓글

Programmers