pakddo.github.io

personal blog based on github pages

View My GitHub Profile

데이터 엔지니어링 스택

by Dooho, Park a.k.a pakddo

이 글은 towardsdatascience.com에 연재된 The New Data Engineering Stack을 번역한 글입니다. 원문링크

도입

소프트웨어 개발 산업에서 풀스택 개발자(데이터 모델링, 백엔드 코드를 작성하며 프론트 엔드 작업을 수행하는 개발자)가 각광받기 시작했던 때를 기억하시나요? 복합적인 기술을 한 사람이 작업한다면 각 기술을 서로 긴밀하게 연결시켜 사용할 수 있다는 사실이 발전된 형태였습니다. 약 5년 전 데이터 엔지니어가 탄생하면서 데이터 산업에도 비슷한 일이 일어나고 있습니다.

다들 아시겠지만, 풀스택 개발자는 신화적인 존재로 남아있습니다. 프론트엔드와 백엔드 그리고 데이터를 다루기 위한 기술을 모두 다 익히는 것은 쉽지 않기 때문입니다. 하지만, 완전한 데이터 엔지니어는 신화 속의 존재가 아닐 수 있습니다. 그 이유 중 하나는 시각화 (비즈니스 인텔리전스)가 그 자체로 거대한 분야가 되었기 때문일 수 있습니다.

데이터 엔지니어는 데이터를 사용할 수 있는 상태로 만들고, 접근할 수 있도록 하며, 데이터를 한 저장소에서 다른 저장소로 이동시키는 등의 다양한 시스템을 구축하는 역할을 수행합니다. 비록 많은 기업에서 데이터 엔지니어가 시각화까지 수행하기를 원하지만, 이는 일반적인 경우는 아닙니다. 그럼에도 불구하고 BI 스킬 셋은 데이터 엔지니어가 익히면 확실히 업무에 도움이 되는 기술입니다.

이 글에서는 데이터 엔지니어로써 놓치면 안 되는 중요한 기술들에 대해 이야기하려고 합니다. 이 기술들을 모두 마스터할 필요는 없으며 모든 기술을 완벽하게 익히는 것은 불가능한 일입니다. 하지만 데이터 엔지니어링 분야에서 경쟁력 있게 일을 하기 위해서는 이러한 기술 대부분을 인지하고 어느 정도 익혀 놓는 것이 중요합니다. 새로운 기술들은 꾸준히 등장하고, 과거의 기술도 조금씩 발전하고 변화한다는 것을 잊지 마십시오.

이러한 기술들을 나열하는 철학은 투자 세계에서 차용되는 단순한 아이디어에서 비롯된 것입니다. 세계가 움직이는 방향대로 투자도 움직입니다. 기술 동향의 흐름을 이해하는 것은 중요합니다.

기술 목록

데이터 베이스

클라우드 서비스

작업 관리

ETL (Extract / Transform / Load)

인프라 스트럭처 구축

코드 통합 관리 (CI/CD)

테스팅

코드 버전 관리 (Source Control)

언어

결론

데이터 엔지니어는 단순히 데이터를 추출(ETL)하는 사람이 아닙니다. 또한, 그들은 데이터베이스만을 관리하는 사람도 아닙니다. 데이터 엔지니어는 이 글에서 이야기한 모든 것들과 좀 더 많은 것들을 융합하여 일하는 사람입니다. 다시 말하지만, 글에 언급된 모든 기술의 숙달은 불가능하다는 것을 기억하십시오. 시간이 필요하겠지만, 나열한 기술을 익히고 숙련되게 다룰 수 있다면 향후 몇 년 동안의 트렌드를 빠르게 따라갈 수 있을 것입니다.