“데이터가 굉장히 많이 쌓이다 보니 방대한 데이터를 다룬다는 것 자체가 데이터 엔지니어로써 아주 만족스러운 점이에요.”
안녕하세요. 스노우입니다.
오늘 만나볼 스노우의 구성원은 올해 경력직으로 입사하신 데이터 엔지니어 강현구님입니다.
스노우 앱에서 수집하는 방대한 데이터를 어떻게 업무에 활용하고 있는지 궁금하시지 않나요?
또 어떤 이유로 스노우에 합류하셨는지, 어떤 점을 가장 만족스럽게 생각하고 있는지, 데이터 엔지니어의 매력과 가장 필요한 자질까지, 커리어와 관련하여 자세한 이야기 들어보겠습니다.
안녕하세요. Server 부서에서 데이터 엔지니어링 업무를 맡고 있는 강현구입니다. 데이터 엔지니어링 업무이라고 하면 포괄적이라, 좀 더 상세히 설명드리자면, 이용자가 앱에서 버튼을 클릭하는 모든 과정들이 로그 데이터로 기록되면 이를 수집하기도 하고요, 또 구독 데이터베이스에서 데이터를 가져와야 하는데, 이런 데이터들을 잘 추출하고 정제하여 기획이나 마케팅 부서에서 활용할 수 있도록 지표를 만들어 제공하는 업무를 하고 있어요.
저는 데이터베이스에서 데이터를 가져오는 업무는 이미 많이 해보았기 때문에 로그 수집 업무를 해보고 싶었어요. 또 Kafka라는 기술을 활용해 보고 싶은 니즈가 컸습니다. 당시 스노우의 채용 공고를 보니 제가 하고 싶은 업무와 핏이 잘 맞는다는 생각이 들었어요.
또 저의 이전 커리어는 제가 즐겨 하지 않는 게임을 만드는 회사였는데요, 다음에는 제가 즐겨 사용하는 서비스의 데이터를 다뤄보면 좋겠다고 생각했어요. 스노우는 제가 애용하는 서비스이기도 했고, 국내에서 카메라 도메인으로 다양한 서비스를 갖고 있는 유일무이한 기업이라는 점이 굉장히 매력적이라 지원하게 되었습니다.
요즘 특히 집중하는 업무는 데이터 저장소 이관 작업입니다. 기존에 사용하던 Hive는 대용량 처리 관점으로 설계되어 있기 때문에 데이터의 업데이트나 삭제 작업을 지원하지 않는 문제점이 있었는데, 이번에 업데이트나 삭제 작업도 가능하고, 압축 효율도 높인 오픈소스 파일 스토리지를 적용하여 이관작업을 진행하게 되었어요. 더불어 성능도 개선과 함께 정합성도 맞추고, 그간 스터디하였던 신기술도 도입할 수 있었습니다. 현재 어느 정도 이관을 완료해서 테스트 중인데 확실히 속도가 빨라져서 굉장히 만족스럽습니다.
첫 번째로, 우리 사우 분들을 위한 서비스를 제공한다는 것이 저에게는 정말 큰 매력이에요. 많은 이용자들을 위한 서비스를 만드는 것도 좋지만, 사우 분들을 위한 서비스의 경우 피드백이 굉장히 빨리 오고 쉽게 피부에 와닿거든요. 제가 만든 지표를 참고하여 회의를 진행한다거나, 더 좋은 서비스를 만들 수 있도록 지표를 활용한다는 것 자체가 저에게 큰 뿌듯함을 안겨줍니다.
또 두 번째로, 데이터 엔지니어링은 자동화 업무의 끝판왕이라고 생각하는데요, 자동화를 좋아하는 분들에게는 이것도 매력 포인트가 된다고 생각해요. 모든 데이터가 자동으로 흘러가서 사용자에게 제공돼야 하기 때문에 제가 자고 있거나 휴가를 가더라도 데이터는 계속 흘러서 사용자에게 제공된다는 점이 매력적이죠.
방대한 데이터를 제대로 잘 분류하려면 데이터를 잘 이해하고 있어야 해요.
데이터를 잘 이해하고 있지 않으면 데이터를 잘 분류하는 것이 불가능하거든요. 또 이런 작업들이 한 번에 처리되는 것이 아니라 100대 이상의 컴퓨터로 분산처리를 해야 하는데 어떤 컬럼이나 데이터를 기준으로 파티셔닝을 할 것인지에 대한 기준도 있어야 하고요.
또 한 가지 더 말씀드리자면, 기술적으로 뛰어난 분들도 서비스에 대한 도메인 지식이나 이해도가 충분하지 않으면 업무 수행이 어려울 수 있어요. 기획자와 지표에 대해 소통할 때 더 나은 방향으로 지표를 만들 수 있도록 의견을 제시할 수도 있어야 하고, 개선 사항을 제안할 수도 있어야 하기 때문에 도메인에 대한 이해도를 갖추는 것도 굉장히 중요합니다.
스노우에 합류 후 데이터 엔지니어로서 정말 많이 성장하고 있다고 느껴요. 업무를 확장시키면서 제가 할 수 있는 것들이 많아지면 성장으로 이어진다고 생각하는데요, 스노우는 다양한 방면으로 성장의 기회가 많이 주어지는 곳입니다. 특히 제가 속한 Server 개발부서는 백엔드 개발자와 함께 업무를 진행하다 보니 그간 경험할 수 없었던 다양한 영역까지 확장하여 성장하게 되는 것 같아요.
또 개인적으로는 앞서 말씀드린 대로 로그 데이터를 다룰 수 있다는 점이 만족스럽고요. 로그를 수집하는 파이프라인을 구축하는 과정에서 데이터가 굉장히 많이 쌓이고 있어요. 방대한 데이터를 다룬다는 것 자체가 데이터 엔지니어로서 아주 만족스러운 점입니다.
서로의 역할이 다르고 전문적으로 잘하는 영역이 다르기 때문에 언제나 존중과 이해가 담긴 커뮤니케이션을 하는 것이 가장 중요하다고 생각해요. 업무 요청을 받았을 때 안되는 이유에 대해 설명드리기가 참 어렵게 느껴질 때가 많거든요. 예를 들어, 테이블이 조인을 해야 하는데 성능상 이슈가 될 수도 있다는 말을 할 때 ‘이건 당연한 건데 왜 모르지?’ 라는 마음을 가지고 소통하게 되면 갈등의 시작이 될 수 있어요. 그렇기 때문에 개발 직군이 아니더라도 누구나 이해하기 쉽게 설명하기 위해 노력하고 있지만 아직은 많이 부족하다고 느낍니다. 다행히 스노우에서는 모든 분들이 상호 존중에 기반한 커뮤니케이션을 하고 있어요. 각자의 역할을 이해하면서 다양한 의견을 존중하기 때문에 어려움 없이 협업을 진행하고 있습니다.
스노우는 본인이 하고 싶은 일에 대해 자유롭게 의견을 개진할 수 있는 곳입니다. 그만큼 책임감도 필요하지만 그로 인해 성장할 수 있는 조직이에요. 데이터 엔지니어분들 중에서 데이터 파이프라인만 만드는 업무를 하는 분들도 많은데요, 한정적인 업무만 수행하는 것이 아니라 확장된 업무를 경험해 보고 싶다면 정말 잘 맞는 곳이라고 생각합니다.
예를 들어 어떤 서비스의 통계 데이터가 필요하면 API로 구현하여 서빙하기도 하고, 데이터 파이프라인을 만들고 파이프라인이 잘 작동되는지 모니터링하는 시스템을 만들기도 하고, 로그 데이터 수집과 데이터베이스에서 데이터를 수집하는 작업까지 진행해 볼 수 있어요. 데이터 관련 업무라면 무엇이든 경험해 보고 싶다는 마인드를 가진 분이라면 스노우의 업무 환경과 잘 맞으실 거예요.