데이터 분석가 Damla's blog

데이터 엔지니어가 되려면 본문

성장 | 생각 기록

데이터 엔지니어가 되려면

DA Damla 2023. 2. 4. 23:59

이전 글에서 데이터와 관련된 대표적인 직무 3개에 대해 이야기했다.

 

이번에는 데이터 엔지니어가 되려면 필요한 역량 또는 기술에 대해 이야기하려고 한다.

 

앞서 데이터 엔지니어는 데이터 분석가와 데이터 사이언티스트가 업무를 위해 데이터를 더 쉽고 효율적으로 활용할 수 있도록 데이터 ETL파이프라인을 설계하고 구축하는 역할을 한다고 했었다.

 

그렇다면 ETL파이프라인은 무엇인가?

E(Extract)

데이터를 추출하는 과정

- 기본적으로 사용되는 Excel, csv, json과 같은 형식의 데이터를 받아오거나,

- 웹, 앱의 로그를 추출하는 것을 말한다.

 

T(Transform)

데이터를 활용할 수 있는 형식으로 변형하는 것

- Extract 과정으로 데이터를 추출한 이후에 해당 데이터를 정형화된 형식 (열(Column) 또는 행(row)형식으로 변형하여 SQL등으로 활용할 수 있도록 변형하는 과정을 말한다.

 

L(Load)

데이터 적제 및 저장 후 불러오는 과정

앞서 E-T과정을 거친 데이터를 데이터 레이트 또는 데이터 웨어하우스에 저장하는 것을 말한다.

 

이렇게 데이터를 활용하기 위해 데이터를 추출하기 이전의 날 것(?)의 데이터를 추출하고, 정제(변형)하고 저장하는 과정을 ETL 파이프라인이라고 한다.

 

 


그렇다면,

데이터 엔지니어가 되기 위해 필요한 역량은 무엇일까?

 

하드스킬 _ 컴퓨터 코딩 지식,

ETL 파이프라인을 설계, 구축하는 사람으로서  컴퓨터 코딩 실력, 데이터베이스에 대한 높은 이해도와 같은 지식이 필요하다

 

소프트스킬 _ 커뮤니케이션 스킬

회사 분위기에 따라 다르겠지만 모든 비즈니스에서 데이터를 필요로 하기 때문에 이해관계가 있는 구성원들과 커뮤니케이션하기 위한 스킬은 필수적이다.

(물론 모든 직무가 그러하겠지만)

 

1. 컴퓨터 과학 지식 _ 백엔드 엔지니어(기술자)이 역량과 상당부분 일치할 정도로 벡엔드적인 기술이 필요로함

(Git, API, OS, 컴퓨터 구조, 네트워크, 자료 구조 등)

 

2. SQL + 추가 코딩 언어 (예를 들어, 파이썬, Java script, Scala, GO 등)

 

3. 데이터와 데이터 베이스에 대한 깊은 이해도 

 

4. 클라우드 서비스에 대한 이해도

(AWS, GCP, Azure 등)

 

이러한 역량을 갖춰야 한다.

 

출처: 코드스테이츠 _ '데이터 엔지니어가 하는 일은?'

 https://www.codestates.com/blog/content/%EB%8D%B0%EC%9D%B4%ED%84%B0%EC%97%94%EC%A7%80%EB%8B%88%EC%96%B4%EB%A1%9C%EB%93%9C%EB%A7%B5