버즈빌리지

버즈빌을 만들어가는 버즈빌리언의 이야기.
People&Culture

개개인이 성장하는 클라이언트 개발팀을 꾸리고 싶어요!

2021.09.17

 

클라이언트 개발자인 당신, 좋은 동료와 함께 성장할 수 있는 회사를 찾고 있나요? 그곳이 바로 버즈빌입니다. 이번 글은 클라이언트 개발자를 이끄는 Alan Kim와의 인터뷰입니다. 지금 클라이언트 개발자들이 어떤 업무에 몰입하고 있는지, 그리고 개발자들이 어떤 문화 속에서 좋은 동료와 성장하고 있는지를 지금 확인하세요.

 

간단한 자기소개 부탁드립니다.

 

안녕하세요. 지난 16년 동안 소프트웨어 개발자로 활동한 Alan Kim입니다. 버즈빌에서 서버 개발자로 시작했지만, 현재는 개발팀을 리드하고 있습니다.

 

지금 리드하고 있는 팀은 무슨 일을 하나요? 

 

버즈빌은 Demand group과 Supply group으로 2개의 큰 조직으로 나뉘는데요. Demand group은 광고주에게 높은 ROAS(Return On Ad Spend; 광고비 대비 매출액)와 같은 고객 가치를 제공하고, Supply group은 퍼블리셔에게 광고 수익률과 같은 고객 가치를 제공합니다. 저는 Supply group 소속의 클라이언트 개발자를 리딩하고 있습니다.

 

Supply group의 개발자는 퍼블리셔가 더 많은 수익을 얻을 수 있는 양질의 광고지면을 만드는 데 집중하고 있습니다. 우리가 만든 광고 지면이 얼마나 효과적으로 고객 가치를 창출하고 있는지 증명하기 위해 데이터 파이프라인을 구축하고, 빅데이터를 관리·분석·시각화하는 업무도 맡고 있습니다.

 

최근 가장 몰입하고 있는 업무는 무엇인가요?

 

최근에는 두 가지 목표를 이루는데 몰입하고 있는데요. 첫 번째로는 효과적인 Server-Driven UI의 도입입니다. 저희 광고 SDK를 사용하는 수백개의 퍼블리셔가 있고, 광고지면 수로 보면 훨씬 더 많습니다. 퍼블리셔마다 수익 창출을 극대화하기 위해서 광고지면에 브랜딩 또는 기능적인 커스터마이징을 요구합니다. 이러한 요구를 만족하게 하기 위해서 지금까지 SDK에서 필요한 기능들을 API로 제공하는 방식을 따랐다면, 앞으로는 SDK와 통신하는 서버에서 퍼블리셔가 원하는 기능을 제공하는 방식을 채택하고 있습니다. 기존 방식은 퍼블리셔 측에서 개발 작업이 많이 들어갔다면 새로운 방식은 퍼블리셔의 개발 시간과 노력이 많이 줄어들 것을 기대하고 있습니다. 즉, 연동 과정이 빨라지고 가벼워집니다.

 

두 번째는, Microservice architecture를 기반으로 돼 있는 버즈빌 시스템을 어떤 기준을 가지고 관리할지를 정하는 것에 집중하고 있습니다. 아마도 Systems architecture에 관해 관심 있는 분들은 아마존, 넷플릭스, 스포티파이 등 수많은 회사에서 이미 사용 중인 핫한(?) 구조라는 것을 아실 겁니다. 버즈빌 플랫폼은 수백개의 서비스가 독립적이면서 유기적으로 동작하는 시스템이기 때문에 각각의 서비스들의 상태를 잘 모니터링하는 것은 상당히 중요합니다. Supply group의 모든 개발자는 단순한 모니터링을 넘어서 이것을 서비스 차원에서 어떤 기준을 가지고 관리할 것인지를 함께 논의하고 결정해 나가고 있습니다.

 

Alan의 커리어 여정이 궁금합니다.

 

대학교 때는 학사 병역특례로 IT 회사에 다니게 됐고, MFC·C·C++를 주로 사용하는 업무를 2년 동안 수행했었습니다. 복학 후 대기업에서 인턴 경험을 하면서 스타트업에 가야겠다고 생각하게 됐어요. 개발자로서 아무리 실력이 좋아도 입사하게 되면 소프트웨어 개발과는 전혀 상관없는 부서로 발령이 날 수도 있다는 이야기를 실제 회사 직원에게 듣기도 했고, 스타트업에 가면 좀 더 도전적으로 일해볼 수 있겠다고 생각했거든요.

 

대학교 졸업 후 넥슨에 개발자로 입사하게 됐는데, Java(J2ME)를 경험했었습니다. 프로그래밍 이외에도 다니는 동안 많은 것을 배울 수 있었는데요. ‘함께 일하는 동료가 얼마나 중요한지' 느끼게 해준 긍정적인 경험이었습니다. 뛰어난 동료들에게 많이 물어도 보고 배움도 받았던 기억이 아직도 좋은 인상으로 남아요. 

 

그후로는 미국 최대 잠금화면 앱을 만드는 ‘슬라이드조이’에 조인했고, 그 회사가 버즈빌에 인수되면서 버즈빌에 합류하게 됐습니다. 서버 개발자로 버즈빌에서 일을 시작했는데, 갑자기 클라이언트 개발 작업이 시급한 상황이어서 관련 경력이 있는 제가 클라이언트 개발을 맡게 됐는데, 현재는 리딩까지 하고 있습니다. 

 

그 여정 속에서 가장 기억에 남는 개발 프로젝트가 있나요?

 

병역특례로 회사에 근무한 지 2년 차가 되었을 때, 회사 사장님이 미션을 하나 주시더라고요. 폴더폰을 하나 보여주면서 2달 안에 이 핸드폰에 게임 3종을 넣어야 하는 미션이었죠. 게임 3종은 고사하고 핸드폰에 게임을 어떻게 넣을지도 몰랐던 상황이었어요. 핸드폰은 RTOS(실시간운영체제)를 사용하고 있었고 소프트웨어는 C로 되어있다는 정보만 있었습니다.

 

상식적으로 timer / button event는 핸드폰 소프트웨어에서 받아야 하고, 화면에 이미지를 보여주는 것은 memory-mapped I/O 기반일 것이기 때문에 약간은 막연하지만, 메모리를 할당해 놓고 RGB 값을 찍어가며 개발했습니다. PC용 에뮬레이터뿐만 아니라 graphics library와 bitmap 압축 알고리즘도 만들었습니다. 모든 것을 단독 개발을 하면서 성공적으로 프로젝트를 완료한 게 기적이었죠. 물론 게임은 테트리스 수준의 간단한 편이었지만, 이 당시에 개발자로서 자신감을 키울 수 있는 좋은 경험이 되었습니다. 당시에는 훈장처럼 생각했던 것 같아요.

 

버즈빌 이야기를 더 해볼게요. 버즈빌도 도전정신이 투철한 회사인 만큼 누군가에겐 자신감을 키울 수 있는 회사일 거라고 생각해요. Alan이 생각하시기에 버즈빌은 왜 개발자가 성장하기 좋은 회사인가요?

 

저는 대기업, 중소기업, 스타트업에서 근무한 경험이 있고, 다양한 회사와 협업하면서 최소한 15곳의 회사문화를 경험해 봤는데요. 버즈빌에 다니는 후배들이 가장 부럽습니다. Agile, DDD, Clean architecture, BDD, Solid principle 등 이런 것들은 버즈빌에서는 일상적으로 논의되고 활용되고 있습니다. 제가 병역특례를 시작했던 작은 IT 회사에서는 아무도 신경 쓰지 않던 것들인데 말이죠.

 

다양한 툴이나 기술을 사용하는 게 항상 좋은 것만은 아니지 않나요?

 

여기서 포인트는 버즈빌 엔지니어들은 고객 가치를 전달하기 위해서 항상 더 빠르고 효율적으로 일할 방법을 끊임없이 찾는다는 것이에요. 지속적으로 논의한다는 것은 개발자에게 매우 좋은 습관이고, 계속 성장해나갈 수 여지를 만드는 방법인 것 같아요. 물론 새로운 툴을 도입해야 하는 상황이 오면 충분히 팀원들과 소통하고 있습니다. 정말로 변화가 필요한지, 리소스를 어떻게 효율적으로 활용할지 등을 많이 이야기하는 것 같아요. 모두가 납득하는 결과에 이르도록 최선을 다 하는 것이 리더인 제가 해야하는 일이고요. 

 

버즈빌의 개발문화는 어떤가요?

 

버즈빌에는 문화적으로 이런 분위기가 있습니다. 제 경험상으로 아주 특별한 특징이라고 생각하는데요. “동료에게 긍정적인 자극을 주는 사람이 되어야 한다” 그리고 “인정받는 사람이 되어야 한다”는 생각을 모두 가지고 있는 것 같아요. 버즈빌이 채용할 때 이 분이 주도적으로 일하는 성향인지를 특히나 보기 때문에 적극적으로 일하시는 분이 여기에 많이 계신 것 같아요. 물론 실력을 기본이어야 하고요.

 

경험했던 회사 중에서는 서로를 견제하거나 성과를 과장하는 사람도 있고, 시키는 일만 기계적으로 하는 사람들도 있었습니다. 코드 퀄리티는 담당자가 바뀌었을 때나 드러날 때도 있죠. 이런 것은 버즈빌에서는 제가 아는 한 있을 수 없는 일이고, 만약 있더라도 빠른 피드백을 주고받으면서 문제를 개선하고 있습니다.

 

리더로서 후배들이 성장할 수 있도록 어떤 노력을 하고 계신가요?

 

회사와 개인의 성장은 버즈빌이 핵심가치 중의 하나이고 그러기 위해서는 건설적인 피드백을 주고받을 수 있어야 합니다. 특히 좋은 피드백을 주려면 당연하게도 팀원들 각각이 어떤 업무에 몰입하고 있고 어떻게 진행하고 있는지를 더 깊이 있게 알고 있어야 한다고 생각해요. 아무래도 제가 여러 역할과 책임을 지고 있어서 쉽지는 않지만, 팀원들의 실제 업무 진행 과정을 더 깊이 있게 파악하고 모두 지속적인 성장이 가능하도록 안내하는 것에 우선순위를 두려고 노력하고 있습니다.

 

마지막으로 하고 싶은 한마디가 있다면?

 

전 버즈빌 구성원들이 모두 자랑스럽습니다. 서로서로 동기 부여하며 기술적인 역량을 키우기 위해 노력하고, 자발적으로 팀에서 해야 할 일을 논의하고 주도적으로 해결해 나갑니다. 지금의 문화를 유지하고 촉진하는 것이 저의 역할이라고 생각하고 있습니다. 혹시 내가 클라이언트 개발자이고, 좋은 동료와 함께 일할 수 있는 회사를 찾는 분이시라면 버즈빌의 문을 두들겨주세요!

문의하기