[DataEngineer] 데이터 엔지니어 총 정리
DB(DataBase)/DataEngineer

[DataEngineer] 데이터 엔지니어 총 정리

728x90

출처 https://k21academy.com/microsoft-azure/dp-203/data-engineering/

 

그럼 먼저 데이터 엔지니어란 무엇이고 조직에서 어떤역할을 하는지에 대해 알아보자.


데이터 엔지니어(Data Engineer, DE)

데이터 엔지니어는 "데이터 영역을 전문으로 담당하는 엔지니어" 라고 정의 할 수 있다.

구체적인 역할은 산업별, 회사별로 데이터 엔지니어가 하는 업무과 기술이 다르지만, 공통적으로는 

"내-외부 원천 데이터를 수집, 가공, 적재하여 데이터가 흐르는 파이프라인을 설계 및 구축하는 역할" 이라고 생각할 수 있다.

조금 더 쉽게 설명하면 "데이터를 활용하기 쉽게 환경을 만들어주는 역할" 이라고 생각하면 된다.

DataEngineer Roadmap - 2022

아래는 데이터 엔지니어 관련 로드맵 이미지이다.

출처 https://github.com/ErdemOzgen/Data-Engineering-Roadmap

데이터 엔지니어의 역할

데이터 엔지니어가 하는 업무중 가장 핵심은 데이터의 수집, 저장, 가공(=ETL) 업무이다. 

이 업무를 하나로 합쳐서 부르면 데이터 파이프라인을 구축 및 관리하는 것이다.

 

Data 파이프라인 - ETL

수집할 데이터를 필터링해서 원하는 곳에 수집한 뒤, 
수집된 데이터를 전처리한 후 저장에 필요한 형태로 가공한 뒤, 
저장소에 원하는 형태로 저장하는 일련의 과정을 통틀어 데이터 파이프라인이라고 한다.

출처 https://www.stratascratch.com/blog/what-does-a-data-engineer-do-and-what-they-dont-do/

  • E : Extract
    • 데이터를 추출(수집)하는 과정
    • 기본적인 데이터 형태(Excel, CSV, JSON) 등을 직접 받아 옴
    • 또는, 웹(Web), 앱(Application)의 로그(log)를 추출
      (*로그(log)란 온라인 상에서 발생하는 모든 상황(클릭시간, 접속정보, 접속한 콘텐츠 등)에 대한 기록)
  • T : Transform
    • 데이터를 분석하기 쉬운 데이터로 변환하는 과정
    • Extract의 과정에서 다양한 형태(JSON, CSV 등)로 수집된 데이터들을 바로 저장하거나 분석하기에는 적합한 형태가 아닐 수 있기 때문에 row와 column의 형태로 변환해서 SQL, NoSQL 등으로 활용할 수 있도록 변환하는 과정
  • L : Load
    • 데이터를 저장 또는 불러오는 과정
    • 변호나한 데이터를 데이터 레이크(Data Lake) 또는 웨어하우스(Warehouse)에 저장하는 과정

데이터 엔지니어의 역량

위에서 정리한 역할들을 수행하기 위해서 필요한 역량을 생각해보았다.

  • 데이터 파이프라인에 필요한 기술(Airflow 등)
  • 서버, 네트워크, CS 지식
  • 클라우드 서비스(AWS, GCP, Azure 등) 경험
  • 데이터 관리 능력(SQL)
  • 프로그래밍 능력(Python, JAVA)
  • 분산처리 시스템(Spark, Hadoop)
  • + 시각화 기술(Tableau)
  • + 소통 능력(협업 with Analyst, DS, SE)

실무, 자기계발을 통해서 위 같은 역량을 갖추고 발전시킨 사람은 좋은 데이터 엔지니어가 될 수 있다고 생각하며,

데이터를 활용하여 사업적인 가치를 만들어내는 것이 이후 데이터 엔지니어로서의 역량을 평가할 수 있는 중요한 척도가 될 수 있다고 생각한다.

데이터 엔지니어 모집 기술스택

현재 올라오는 모집공고를 통해 데이터 엔지니어의 기술과 Tool 트랜드를 확인할 수 있다고 생각하기때문에 관련 직군 포지션 모집에 대한 글을 찾아보았다.

  • 쏘카 공고

  • 카카오스타일 공고

  • 네이버 클라우드 공고

  • 카카오 데이터실 공고

  • 라인 공고

위 공고들이 흔히 말하는 네카라쿠배 들의 데이터 엔지니어 관련 공고이다.

데이터 엔지니어의 역량으로 데이터파이프라인 구축 능력은 필수이고, Spark, Hadoop 같은 분산처리, AI 기술에 대한 역량도 기본, 우대 역량으로 보는것을 알 수 있다.

 

한번에 바로 데엔 직군으로 빌드업하기는 힘들 수 있다. 

데분, SW엔지니어, 백엔드개발자 등으로 경력을 쌓으면서 데엔에 대한 공부를 꾸준히 하면 분명 좋은 기회가 올것이다.

 


 

다음 포스팅으로 지금 현업에서 사용중인 Airflow에 대한 설명을 다룰 예정이다.

 

 

 

728x90

'DB(DataBase) > DataEngineer' 카테고리의 다른 글

[Trino]Trino란 무엇일까?  (0) 2024.01.18
[Airflow] Apache Airflow(에어플로우) 알아보기  (0) 2024.01.02