개인 회고

나는 왜 데이터 엔지니어가 되고 싶은지에 대해

  • -
728x90

들어가기 전에..

 나는 왜 데이터 엔지니어를 꿈으로 삼았는가 사실 이 부분은 내가 어떤 직무, 어떤 직업을 가지든 가장 중요한 문제라고 생각한다. 내 인생의 모토이신 페이커님도 프로게이머 희망 학생에게 가장 먼저 한 질문이 "왜 프로게이머가 되고 싶으세요?, 그게 가장 중요합니다."라고 했었다.(기습 숭배😎) 확실히 명확하게 데엔이 되고자 하는 이유가 생기면 원동력이 생기고 중간에 벽을 마주하더라도 버틸 수 있는 힘이 생길 것 같다. 때문에 이번에 한번 내가 데엔이 되고 싶은 이유를 글로 정리해보고자 한다.
 
 이번에 글또에 참여하게 되면서 고민공유 대나무숲에 데이터 엔지니어로의 커리어 관련 고민을 올렸다. 이때 성윤 님이 보통 학생들은 직무에 자신을 맞추는 경우가 많다고 하셨고 내가 하고 싶었던 것이 정말 무엇인지 알아보라고 하셨는데 나는 다행히 어느 정도 이유를 알고 있는 것 같다.
 

나는 명확한 것이 좋다.

 나는 통계학과이기 때문에 데이터를 굉장히 쉽게 접했다. 처음에 데이터를 이용해 문제해결을 한다는 사실 자체가 뭔가 멋있었고 재밌었다. AI 가 성장하며 데이터 관련 산업이 엄청 뜨기도 하고 이 업계에 내가 발을 담아보고 싶다는 열망이 불타올랐다. 때문에 처음에는 분석도 해보고 ML도 해봤다. 다만 분석은 공부를 하면 할수록 굉장히 명확하지 않다는 느낌을 받았다. 학교에서 A/B테스트나 인과추론 관련하여 수업을 들었을 때 특히 많이 느꼈다. 그냥 p값이 낮으니까 귀무가설을 만족한다. 라는게 수학적으로는 이해가 되긴 되지만 와닿지는 않았고 인과추론도 결국 내가 의사결정권자를 설득 혹은 이해시키기 위함인데 추론 결과가 이렇게 나왔으니 해당 서비스는 매출에 영향을 주었다.라고 말하는 것도 결국 추론이기에 찝찝한 느낌을 받았다. ML이나 DL은 혼동행렬 등을 공부하면 모델이 얼마나 정확하게 예측을 진행했는지에 대한 명확한 성능이 나오기에 흥미를 느끼면서 했었지만 채용공고를 보면 대부분 경력자 혹은 석박사를 채용하기에 나에게는 좀 부담이 컸다.
 

나의 직무선정 기준

📈[분석]
데이터를 다루는 것은 재미있고 흥미로우나 결과가 명확하지 않다. 추론의 한계를 느꼈다.
🤖[ML]
모델의 성능을 높이기에 최적화하는 것도 재밌고 명확한 결과도 시원하게 비교할 수 있으나 취업이 어렵다.
 

결국 내가 원하는 직무의 기준은 다음과 같다.

데이터를 이용한 문제해결을 해야하며 명확한 결과물을 도출할 수 있어야 한다. 
AI와 관련하면 좋으나 취업장벽이 너무 높지많은 않아야 한다.

 
 
이렇게 기준을 가지고 생각해보다가 데이터 엔지니어의 직무를 발견했다. 이 직무는 뭘까 '빅데이터를 지탱하는 기술' 책도 읽어보고 한국 데이터 엔지니어 모임에도 들어가 밋업도 참여하며 현업자 분들도 만나 직무탐색을 해보았다. 이렇게 여러 사람을 만나고 스스로도 찾아보며 내가 나름 생각하고 정리한 데이터 엔지니어의 직무의 특징과 역량을 크게 정리하면 다음과 같다.
 

  • 데이터 인프라 구축을 통해 고객에게 더 나은 데이터를 제공한다.
  • 분석가, 사이언티스트, 기업, 고객 등 모두가 사용하기 편리한 방식으로 빅데이터를 정제 및 가공한다.
  • 팀원 혹은 다른 부서 분들과 커뮤니케이션을 통해 실제 서비스를 개선하고 성능을 향상한다.
  • 문제를 정확하게 파악하고, 현재 주어진 리소스 내에서 최선의 해결책을 찾고 적용한다.

 
이렇게 정리하고 보니 굉장히 흥미가 들었다. 일단 '데이터를 이용한 문제해결' 정확히 말하면 '문제해결을 위한 데이터를 구축'을 하는 것이 정말 마음에 들었다. 또한 여긴 적지 않았지만 나의 가장 큰 장점은 커뮤니케이션이다. 학생 때 조별과제등을 진행하면 대부분 발표나 PPT는 내가 자진해서 맡았으며 사람과 이야기하는 것도 정말 좋아해, 내 장점이라고 평소 생각해 왔는데 데엔 이라는 직업이 소통이 정말 중요한직업 이라는 것을 알았을 때는 한번 더 흥미가 돋았다.(기능조직 회사에 들어가더라도 데엔이라면 소통을 많이 해야할 것 같다.) 또한 명확한 해결책을 제시할 수 있다는 점이 너무 좋았다. 아주 간단한 예를 들면 "스트림 처리를 할 거야 근데 돈이 없네? 비용 최적화를 위해서는 AWS kinesis 대신 KAFKA를 써야 해" 등 단순히 파이프라인 구성을 위해 도구를 고르는 것이지만 이유가 명확하게 들어간다. 내가 원하는 직무에 이 정도면 굉장히 잘 들어맞는다고 할 수 있다.
 

문제해결을 위해 데이터를 필요로 하는가? O
명확한 해결책을 제시할 수 있는가? O
커뮤니케이션을 많이 필요로 하는가? O
진입장벽이 최소 석사 이상인가? X

때문에 나는 데이터 엔지니어를 하기로 했다.

 

백각이 불여일행

백번 생각해 봐야 한번 행동하느니만 못하다. 내가 좋아하는 사자성어 중 하나다. 다른 사람보다는 행동력이 좋다고 생각하는 사람으로서 어느 정도 강점이라고 생각한다. 직무를 확실하게 정했기에 일단 학과가 가지는 의미가 굉장히 중요하다고 생각해 바로 교내 융합데이터공학부를 복수전공 신청하고 파이썬과 SQL airflow 등을 개인적으로 공부했다. 일단 데이터 엔지니어는 어느 정도개발 역랑이 중요한데 개발을 못하면 모든 게 무의미하기 때문이다. 파이썬은 분석할 때도 많이 써봐서 익숙했고 코딩하는 것이 생각보다 너무 재밌었다.(사실 나 컴공 가야 했을지도?) SQL도 사실 통계학과 1, 2학년 때 허구한 날 쓰는 게 group by,  join, pivot table이고 스키마 구조 또한 흥미롭게 배워나갔다. 내가 코딩에 거부감이 없구나!!라는 것을 느끼는 순간들이었다. 공부만 한건 아니고 꾸준히 데이터 엔지니어가 되기 위한 정보를 찾아봤는데 정말 많은 것들을 필요로 했다.
 

  • 파이썬, SQL, airflow, Kafka와 같은 기술적인 지식들
  • AWS나 GCP에 대한 이해(라이센스 등) 및 사용경험
  • 가고자 하는 분야의 도메인에 대한 적절한 이해
  • 프로젝트나 운영 시 발생한 에러에 대한 문제해결 능력
  • 기본적인 CS에 대한 이해
  • docker와 쿠버네티스 등 컨테이너 환경에 대한 학습
  • 기술블로그 탐색을 통한 다양한 파이프라인 구축에 대한 이해(우버 등)

 
할 게 굉장히 많다. 내가 적지 못한 것도 굉장히 많다. 물론 모든 걸 완벽하게 하는 건 현실적으로 불가능하다고 생각한다. 때문에 토이 프로젝트를 몇 개 해보면서 툴이나 클라우드 등을 사용해 보고 파이썬이나 CS공부 그리고 기술블로그 탐색 등은 꾸준히 해야겠다는 생각이 든다.
 

신입 데엔을 도전하기로 했다.

직무탐색을 하면서 여러 사람의 의견을 들었는데 많은 분들이 신입 취업은 어렵다고 하셨다. 사실 데이터 엔지니어가 신입으로서의 취업의 문이 좁다는 사실을 알고 있었다. 일단 기업이 데이터 엔지니어를 필요로 한다는 건 그 기업이 서비스를 어느 정도 성장시켰다는 의미다. 그 뜻은 어느정도 성장한 기업이 데이터 엔지니어를 필요로 하고 그런 기업은 보통 경력직을 뽑는다. 특히 벡엔드와 겹치는 부분이 있어 벡엔드 개발자 분들이 많이 이직을 한다. 나도 벡엔드로 먼저 취업을 하고 데엔으로 이직을 할까도 굉장히 많이 고민했다. 하지만 난 Java springboot node.js 등에 완전히 문외 하고(Java는 학교에서 좀 배우긴 했다.) 취직을 한다 하더라고 뭔가 DE로 이직을 못할 것 같았다. 때문에 그냥 신입 데이터 엔지니어를 도전해 보기로 했다. 원래 사람은 대종사(어떤 분야의 창시자)의 마인드로 살아야 성공한다. 사례가 아예 없는 것도 아니고 신입으로 시작하신 분들을 꽤 심심치 않게 찾아볼 수 있다. 또 나는 통계학과로써 ML 프로젝트를 다수 해봤다. 만약 AI를 다루는 곳에 입사한다면 데이터 사이언티스트 분들과 소통 측면에서 나만의 강점을 가지고 있다고 생각한다. 언젠가 이 글을 다시 보며 스스로를 귀여워하는 데엔이 되어 있었으면 좋겠다. ㅎㅎ 
 
 
 

728x90
Contents

포스팅 주소를 복사했습니다

이 글이 도움이 되었다면 공감 부탁드립니다.