영상 제작 매칭 서비스 두둠에 이어, 한국형 스톡 영상 플랫폼 드롭샷스톡이 나오기까지. 지로의 서비스들이 세상의 빛을 보는 과정에는 늘 개발팀이 함께했는데요. 고객의 안정적인 경험을 위해 가파른 열정으로 임하는 지로 개발팀의 Back-end Engineer, 봄결 님과 이야기를 나누었습니다.
안녕하세요! 먼저 자기소개를 부탁드려요.
안녕하세요. 저는 지로에서 백엔드 개발을 맡고 있는 이봄결이라고 합니다. 개발자로서의 커리어를 쌓게 된 지는 3년 정도 되었어요. 작년 지로에 합류해서 드롭샷스톡이라는 서비스를 개발하기 시작한 지도 벌써 1년이 넘었네요. 지로의 드롭샷스톡은 ‘누구에게나 편한 영상 제작’을 위해 탄생한 사이트인데요. 현재는 해당 서비스의 검색 엔진 개선과 새로운 구독권 출시를 준비하고 있습니다.
- 많은 개발 직군 중에서도 백엔드를 택하게 된 계기가 있을까요?
사실 처음부터 백엔드를 생각한 건 아니었어요. 가장 먼저 AI에 빠졌다가, 비교적 학습 접근성이 좋은 웹 개발을 먼저 해봐야겠다는 생각이 들더라고요. 저에게 맞는 개발 파트를 찾기 위해 프론트엔드와 백엔드 모두에 발을 들였는데요. 프론트엔드의 경우 내 코드가 즉각 화면에 반영되고, 유저들의 반응이 눈앞에서 펼쳐지니까 확실히 재밌더라고요.
이에 비해 백엔드는 유저가 직접 볼 수 있는 영역이 아니잖아요. 그럼에도 시스템의 핵심이 되는 로직과 데이터 흐름을 고민하고, 어려운 문제를 해결해내는 과정이 정말 매력적이더라고요. 이렇게 유저에게 안정적이고 신뢰할 수 있는 서비스를 제공하는 것이 저한테 더 맞다는 생각이 들어 백엔드 개발을 시작하게 되었습니다.
지로에 합류하기까지의 과정이 궁금해요.
지로에서 근무하는 개발자 지인이 있었는데요. 그분이 예전부터 회사 좋다는 말을 자주 하셨어요. 팀 분위기도 좋고, 업무 지원도 적극적이라고 하셨거든요. 근데 마침 백엔드 공고가 열렸으니 한번 지원해 보라고 제안을 주시더라고요. 평소에도 그런 부분들을 긍정적으로 생각해 왔기 때문에, 바로 지원서를 넣고 면접 합격이 되어 합류하게 됐죠.
사실 전 이때까지만 해도 영상 관련 도메인에서 일할 거라고는 생각 못 했어요. 저에게는 조금 생소한 분야기도 했고요. 그래서 처음 제안을 받았을 때는 설렘 반 두려움 반이었던 것 같아요.
- 상상도 못 했던 영상 도메인에서의 개발, 어떤가요?
우선 데이터 크기의 차이가 있어요. 스톡 사이트다 보니 영상 데이터를 다루잖아요? HD나 4K뿐만 아니라 원본 격인 Log 파일이 존재하는데, 수십 GB부터 몇 TB까지 그 용량이 어마어마해요. 사실 지금은 Log 파일을 그렇게 깊게 다루고 있지는 않지만, 언젠가 수요가 생기면 파일을 판매하거나 유저들에게 선보이게 될 텐데요. 이렇게 큰 용량을 다룬다는 것 자체가 좀 어렵지 않을까? 라는 생각이 들더라고요. 그렇다 보니 데이터 처리나 서빙에 있어서도 걱정이 생기고요.
그리고 사실 한국에는 스톡 서비스가 잘 없어요. 그래서 레퍼런스나 정보 탐색이 제한적일 때가 생기는데요. 그럴 때는 해외 자료를 찾기 위해 구글링을 열심히 하는 편입니다. 사실 이런 어려움들이 있긴 하지만, 그만큼 제가 다룰 수 있는 업무의 범위가 넓어지는 게 좋기도 해요. 이렇게 스스로의 한계를 넘기려고 노력하다 보면 큰 데이터들을 척척 다루는 자신을 발견하게 되는데요. 그럴 때 큰 뿌듯함이 느껴지죠.
지로 개발팀은 어떤 구성으로, 어떻게 일하고 있나요?
개발팀은 현재 팀 리더 1명, 프론트엔드 3명, 백엔드 2명으로 구성되어 있어요. 지로는 개발팀 외 스쿼드 조직으로도 분리되어 있는데요. 스쿼드로는 영상 크리에이터나 제작사를 매칭해주는 두둠이 있고요. 영상 제작 후 남은 클립이나 기획 촬영된 클립을 수급 및 판매하는 드롭샷스톡이 있습니다. 저는 현재 드롭샷스톡 스쿼드에 속해있어요.
각자 맡은 서비스가 다르고, 또 서비스의 성격이 다르기 때문에 업무의 경계는 항상 명확하지만 때로는 구분 없이 일하기도 합니다. '제 도움이 필요하시면 언제든지 불러주시라'는 이야기를 할 정도로 서로의 업무에 관심이 많은 편이에요.
스쿼드 조직이란?
💡
서비스 출시 등의 특정 목표를 위해 선별된 멤버로 구성된 조직이에요. 프로덕트 디자인, 개발 등 스쿼드 내 다양한 기능을 가진 구성원들이 함께 일하며 유저에게 전달되는 하나의 서비스를 처음부터 끝까지 책임지고 개발하게 됩니다.
지로 개발팀만의 특별한 문화가 있다면 소개해 주세요.
첫 번째로는 ‘작은 단위의 코드 커밋’이요. 예를 들어 어떤 기능을 개발하기 위해 코드 5천 줄을 작성했어요. 근데 이걸 한 번에 저장소로 보내면 리뷰하는 분들이 한 번에 5천 줄을 다 봐야 해요. 엄청 힘들겠죠. 그래서 웬만하면 최소 기능 단위, 즉 한 챕터 단위로 올리고 있습니다. 확실히 피로도가 많이 줄어들더라고요.
두 번째로는 매주 금요일에 진행하는 회의인데요. 여기서 좀 의아해하실 거예요. 회의가 왜 문화냐, 당연히 해야 하는 거 아니냐. 근데 저희는 조금 특별한 게, 제일 먼저 회사 주변 커피가 맛있는 곳을 찾아요. (웃음) FYI도 좋았고 카페 첼로라는 곳도 맛있더라고요. 일단 잠시 업무 공간에서 벗어나서 바람 쐬자 하는 게 있어요.
이 시간에는 좋았던 아티클이나 새로운 기술 트렌드를 공유하기도 해요. ‘이 기술 우리 서비스에도 적용할 수 있지 않을까?’ 라는 의견이 나오면 실제로 적용한 적도 꽤 많아요. 제가 가진 기술적 고민이나 문제를 상담하기도 하는데요. 물론 업무 시간에도 당연히 얘기할 수 있지만, 이렇게 편안한 공간에서 서로 대화하듯 나누는 게 리프레시가 되더라고요.
- 서로 공유한 내용이 회사에 적용된 사례가 많다고 하셨는데요. 그중 하나만 소개한다면?
Redash라고 들어보셨나요? 다양한 지표를 확인할 수 있는 통합 사이트를 만들면 좋을 것 같다는 대화가 나온 적이 있는데요. CTO님이 며칠 만에 바로 레이아웃을 짜오셨더라고요. Redash를 툴로 끌고 와서 SQL을 다 넣어놓으신 거예요. 이후 다른 팀원들도 Redash에 접속해서 필요한 특정 데이터를 바로 확인할 수 있게 됐어요.
추가로 이것도 소개해 드리고 싶은데요. 개발자 도구 기능이 잘 없다 보니 모바일상에서는 리뷰가 힘들거든요. 이루다라는 라이브러리가 있는데, 그걸 도입해서 모바일 환경에서도 개발자 도구를 열어서 쉽게 QA 할 수 있게 한 적도 있어요.
이러한 문화를 녹여낸 지로 개발팀만의 업무 방식이 있다면?
우선 오전에 하는 일일 스크럼이 있어요. 오늘 내가 어떤 일을 할 건지 서로 공유하는 시간을 갖고요. 해결이 안 된 과제라든지 아이디어 확산이 필요할 때도 이 스크럼을 활용해요. 회사 문화 중 하나가 오버 커뮤니케이션인데요. 서로의 Context가 불일치되는 문제를 줄이기 위해서라도 이런 시간에 서로 많은 대화를 하려고 노력해요.
또 매달 한 번씩 CTO님이랑 1on1을 진행하는데요. 어떤 부분은 잘했고 어떤 부분이 아쉬웠는지 등에 대해 서로 공유합니다. 사실 이런 건 누군가 말해주지 않으면 인지하기 쉽지 않잖아요. 이런 시간을 통해서 부족한 부분들을 채워나갈 수 있더라고요.
- 최근 업데이트된 업무 방식이 있다면?
요즘은 특히 문서화를 하려고 노력하고 있어요. 서비스가 커지다 보면 외부 툴을 사용하게 되는 경우가 많은데요. 덩달아 연동하고 기능을 추가하거나 개선하는 과정들도 많아져요. 이때 문서화가 빠지면 담당자 외에는 잘 모르거나, 심지어 담당자도 휘발이 되니까 추적이 힘들더라고요. 그래서 과정이나 특이 사항을 꼭 문서로 남겨두려고 합니다.
그리고 이건 또 다른 문화인데요. 혹시 슬랙에 있는 도메인 지식 채널이라고 아시나요? 저희가 이번에 검색 개선 과정을 위해서 엘라스틱 서치라는 기술을 새로 도입했는데요. 개발을 같이 진행하다 보면 즉각 문서화하기가 힘들 수 있잖아요. 그러면 도메인 지식 채널에 ‘엘라스틱 서치’라는 스레드를 올려놔요. 관련 내용들을 다 올려두고 추후 팔로업에 도움이 되게끔 하는 거죠.
지로 개발팀이 가지고 있는 고민이 궁금해요.
우선 개발팀 공통적으로는 업무 자동화요. 누군가가 코드 리뷰를 요청을 해요. 근데 알림이 많이 오거나 하면 묻히거나 잊혀지기가 쉽거든요. 그래서 요즘은 자동화를 위해 라벨을 붙여놓고 있습니다. 예를 들어 오늘이 목요일인데 만약 ‘금요일까지 리뷰해 주세요' 라면 D-1이잖아요. 라벨을 붙여둔 후 하루가 지나면 D-day로 바뀌는 식으로 자동화를 해두는 거죠. 최근에는 배포 소식도 자동으로 작성되도록 하고 있어요.
백엔드의 고민으로는 모노레포가 있습니다. 최근 두 서비스의 분리 되어있던 코드를 하나의 저장소에서 관리하기 위해 합쳤어요. 그런데 각 서비스 라이브러리의 버전이 다 다르고, 원래는 하나만 고려한 어떤 코드나 파일들이 다른 서비스로 들어가니까 각종 버그가 생기더라고요. 서비스가 커지면서 코드도 계속 커져 나갈 텐데 ‘어떻게 하면 확장성 있게 잘 관리할 수 있을까’를 계속 고민하는 것 같아요.
그리고 i18n. 국제화인 Internationalization의 줄임말인데요. 현재 두 플랫폼 모두 한국어와 영어를 지원하고 있어요. 그렇지만 저희는 글로벌 서비스를 지향하고 있기 때문에 여기가 끝이 아니거든요. 예를 들어서 일본에 진출한다면 일본어 데이터를 들여오고 라인 페이 같은 결제 모듈도 맞춰야 해요. 이렇게 국제화 문제에도 항상 관심을 두고 있습니다.
지로 개발팀에서 일하며 재밌거나 뿌듯했던 일화가 있다면?
전장에 있다 보면 전우애가 생긴다고 하잖아요. (웃음) 최근 정기 구독 관련한 기능을 다뤘는데요. 주말 출근도 불사를 정도로 볼륨도 크고 기획적으로 고려해야 할 부분들이 많았어요. 근데 팀원 모두 각자 힘든 걸 아니까 오히려 서로 더 배려해 주려는 모습들이 생기더라고요.
예를 들어 “제가 대신 도와드려도 될까요?”, “제가 처리할 수 있을 것 같아요.” 같은 말들이 자연스럽게 나와요. 비 온 뒤 땅이 굳어진다고 하잖아요. 이럴 때 쓰는 말인지는 모르겠지만, 한 번 큰 고생을 하고 나니 팀이 하나로써 더 단단해진 게 느껴지더라고요. 이런 느낌을 받을 때 되게 뿌듯하죠.
반대로 봄결 님을 가장 힘들게 했던 것은 무엇인가요?
위에서도 말씀드렸지만 정기 구독 피처를 다루는 게 최근 가장 어려웠어요. 정기 결제는 매달, 특정 시간에 결제가 되게끔 하는 거잖아요. 그런데 한국의 시간뿐만 아니라 지원하는 각 나라의 시간을 고려해야 해요. 그런 시차의 문제도 있었고, 또 언제나 돈은 정확해야 되잖아요. 돈을 다루는 테스크인 것도 스스로 생각해 보면 까다로웠죠.
그래도 이런 퀘스트를 잘 해결하면 성장이 체감될 것 같아요.
맞아요. 특히 커뮤니케이션. 개발팀으로 지내면서 개발자끼리만 얘기하지는 않잖아요. 혹은 유관 부서와 협업해야 하는 상황이 생기면 최대한 이해가 쉽도록 설명하기 위해 고민을 많이 해요. 이런 과정에서 확실히 커뮤니케이션 역량이 많이 늘고, 그게 자연스럽게 문서에도 반영이 돼요.
마인드셋도 꽤 바뀌었어요. 사실 저는 납득이 안 되면 몸이 잘 안 움직여지는 타입이거든요. ‘왜 해야 하지?’ 혼자 계속 되뇌게 돼요. 근데 그런 의문점이나 배경, 목표에 대해 회사가 설득을 잘해주시더라고요. 이러면 동기부여도 높게 가질 수 있게 되죠. 그리고 예전엔 업무적으로 힘들거나 어려운 일이 있을 때 혼자 고민을 했다면, 이제는 내게 도와줄 동료들이 있다는 든든함도 있거든요. 이런 믿음과 신뢰를 바탕으로 일하다 보면 내적으로도 많이 성장했음을 느끼죠.
마지막 질문이에요. 어떤 동료와 함께하고 싶나요?
다름을 인정할 수 있는 동료요. 물론 개발 실력도 중요하지만 그건 함께 일하다 보면 저절로 맞춰진다고 생각하거든요. 내 팀원은 나와 다른 사람이라는 걸 인정하고, 거기서 나오는 배려가 중요한 것 같아요. 소통이 잘 안되더라도 설득하고 이해시키려고 노력하시는 분이면 좋겠어요.
또, 실패를 두려워하지 않고 꾸준히 도전하는 태도가 중요한 것 같습니다. 일주일이나 시도해 봤는데 무언가 잘 안됐다. 그래도 괜찮아요. 그걸 포기하거나 두려워하지 않고, ‘그럼에도 불구하고’ 도전하는 분이면 좋겠습니다. 감사합니다!