블로그

29 PEOPLE|성장을 만드는 문화를 함께 고민해요.

2022.11.09

Guide For Better Work

당신의 직장엔 당신의 레퍼런스가 있나요?

서로가 서로에게 영감이 되고 가이드가 되는 29 PEOPLE 이야기.

개발 조직의 희창님은 이번 인터뷰에서 개발, 성장, 문화 라는 키워드를 많이 언급하셨어요.
회사라는 조직. 누구나 그 안에서의 성장을 위해 노력하잖아요.
하지만 노력을 요구하기보다 자연스럽게 노력을 끌어 내는 문화를 먼저 고민하는 29PEOPLE 희창님!

성장을 이끄는 문화 조성, 그 안에서 개인과 팀의 가치를 새롭게 써 내려가는 개발 조직 리더 희창님의 이야기 지금부터 시작할게요.


희창님 안녕하세요. 본인소개 부탁드려요.

안녕하세요. 이희창입니다.
저는 09년부터 IT 업계에 입문했어요.
쿠팡과 토스를 거쳐 지금 29CM에서 개발 조직 리더를 맡고 있는 14년 차 개발자입니다.

쿠팡에서는 물류 서비스를 개발하고 관리하는 WMS에서 일했었고, 토스에서는 toss-x라는 신사업 팀과 페이먼츠팀, 보험팀에서 2년 반 정도 일했네요.
클래스 101 회사에서는 개발 디렉터로서 서비스 고도화와 개발 업무 프로세스를 개선하는 프로젝트를 진행했었습니다. 그곳에서 비교적 짧은 시간에 동료 개발자 2명과 함께 구독 서비스를 안정적으로 만들었던 경험도 생각나네요.

지금은 29CM의 개발 조직 리더로서 팀의 성장에 필요한 기술 역량을 만들어내기 위해 노력하고 있습니다.

팀의 업무와, 어떤 구성원들이 함께하는지 궁금해요.

29CM는 ‘Guide To Better Choice’ 즉, ‘고객의 더 나은 선택을 돕는다’라는 미션을 가진 ‘온라인 셀렉트샵’입니다. 고객의 취향을 존중하고 각자의 개성과 가치가 반영된 라이프 스타일을 위해 다양한 브랜드 스토리를 다채로운 콘텐츠와 서비스로 소개하고 있죠. 29CM의 이러한 방향성은 2011년 창업 이래로 많은 유저들의 공감과 사랑을 받아왔고, 특히 2018년을 기점으로 지금까지 매년 2배씩 성장세를 기록하고 있어요. 올 1분기에는 ‘거래액 1천억 돌파’라는 값진 성과를 얻었고, 이는 전년 대비 72% 성장한 수준이에요.
저희 개발팀은 이런 급격한 성장 속에서 더 나은 고객 경험을 위해 다양한 실험과 시도를 이어가고 있어요. 동시에 그 이면에 발생할 수 있는 시스템 장애를 포함한 여러 가지 이슈에 대해 발 빠르게 대처하고 안정적인 시스템 유지를 위해 노력하고 있습니다.

29CM의 개발 조직은 크게 백엔드, 프론트엔드, 모바일, 데이터, 서비스플랫폼과 인프라보안으로 구성되어 있습니다. 개발 조직의 구성은 직무별로 나뉘어 있지만 실제 제품 개발과 운영은 PO와 개발, 디자인, 데이터가 하나의 목적을 이루기 위한 스쿼드 단위로 이루어집니다. 이를 통해 각 개발의 직무 전문성은 유지하면서도, 높은 수준의 유저 경험을 만들어 갈 수 있도록 팀이 운영되고 있습니다.

“개인의 성장과 회사의 성장을
균형있게 추구하는 팀을 만들고 싶어요.”

팀의 리더로서 가장 집중하고 계신 건 무엇인가요?

무엇보다 회사와 팀, 동료들이 지속해서 성장하는데 필요한 시스템과 문화를 만들어 가는 일에 집중하고 있어요.

처음 팀 리더를 맡게 되었을 때 회사의 목표 달성을 위해, 조직의 전반적인 기술 역량을 책임지고, 지속적인 가치를 창출해야 하는 사람이라고 스스로의 역할과 책임을 정의해 봤어요. 그리고 이를 실제로 이루어내기 위해서 무엇이 필요할까 생각했을 때 개인의 성장과 회사의 성장을 균형 있게 추구하는 팀을 만들어야 한다라고 생각했고요. 이는 개인과 회사의 성장 가치를 따로 정의하는 것이 아니라 그 둘이 서로 균형을 이루어야 지속이 가능하기 때문이에요.

지속적인 성장을 위한 구체적인 이야기를 듣고 싶어요.

20년 8월 이전의 모놀리틱 서비스 구조¹는 회사와 구성원의 지속적인 성장을 도모하기 어렵겠다는 문제 의식을 가지고 마이크로서비스² 로의 전환을 시작했어요. 20년 당시에도 29CM는 거래액이 1,800억 수준으로 성장세를 이어가고 있었고 앞으로도 규모와 유저 경험 측면에서 큰 성장이 이루어질 텐데, 그 당시의 아키텍처와 서비스 구조로는 빠르고 안정적인 성장을 꾀하기 어렵다고 판단했습니다. 회사의 성장 속도를 돌아봤을 때 거대한 레거시와 모놀리틱 구조 안에서는 동료 개발자들이 높은 수준의 자율성과 책임감을 가지고 일하는 것은 상당히 어려웠을 거예요. 마이크로서비스 아키텍처에서는 애플리케이션을 여러 개의 작은 애플리케이션으로 쪼개어 변경과 조합이 가능해요. 애플리케이션을 핵심 기능별로 세분화하고, 세분화된 서비스를 독립적으로 구축하고 배포할 수 있어요. 자율성과 전문성이 무엇보다도 중요해지기 때문에 동료들의 성장을 위해서라도 구조의 변화는 반드시 필요하다고 생각했습니다.

¹모놀리틱 서비스 : 다양한 비즈니스 도메인이 하나의 서비스에 모두 구현된 서비스
²마이크로 서비스: 비즈니스 도메인을 중심으로 모델링된 독립적으로 배포 가능한 서비스

지금은 마이크로서비스로 전환하는 과정에서 도출된 주요 도메인을 중심으로 약 20여 개의 서비스를 분리하여 운영하고 있어요. 스쿼드라는 목적 조직 구조 안에서 PO와 개발, 디자인, 데이터가 하나의 목표를 가지고 긴밀하게 협업하며 제품을 개발하고 있어요. 같은 목표를 바라보면서 협업하는 것이기에 스쿼드 구성원 간의 팀웍도 좋아지고, 도메인 지식도 깊어졌습니다. 정보와 의사소통의 현장에 직접 참여하기 때문에 주인의식을 가지고 일할 수 있고 이는 결국 유저에게 조금 더 좋은 제품을 기존보다 빠르게 제공할 수 있는 기반이 되었죠. 저는 이제야 개발자를 포함한 제품팀의 모든 구성원들이 높은 수준의 책임과 자율성을 가지고 구체적인 성과 도출이 가능한 환경이 만들어졌다고 생각하고 있습니다.

더 높은 성장을 위해 앞으로는 어떤 계획을 가지고 계신가요?

22년 하반기 마이크로서비스 전환의 다음 스텝 일감을 정의하고, 성장을 위해 필요한 다양한 장치 마련을 위해 고민하고 있어요.

지금까지의 마이크로서비스 전환은 주로 동기식 HTTP API 기반의 호출과 하나의 데이터베이스를 기반으로 코드만 분리하여 운영했다면, 이제는 급격한 서비스 성장에 발맞춰 비동기 메시징 기반의 통신 방식을 추가하고 서비스별로 데이터베이스를 분리하는 작업을 진행해야 하는 시점이 왔다고 보고 있습니다. 현재 수준의 전환에서도 과거에 비해 많은 장점을 얻었다고 생각하고 있지만, 유저 경험을 위한 다양한 요구사항이 생겨나면서 서비스간 통신 방식에도 여러 가지 옵션이 추가되어야 하고, 또 서버로 인입되는 트래픽이 점진적이고 급격하게 늘어나면서 이런 트래픽을 온전하게 받아내기 위해서는 서비스별로 데이터베이스를 가져가는 개선이 필요하다고 보고 있습니다.

성장 문화 측면을 돌아볼 때는 구성원이 점점 많아지면서 과거에 비해 질문하고 지식을 나누는 것에 주저하는 모습이 발견되곤 하는데, 예전처럼 팀 내의 지식 공유와 축적을 원활하게 할 수 있는 문화와 장치를 만드는 것도 고민하고 있습니다.

저는 같이 일하는 구성원들이 유저 경험을 개선하고 회사의 목표를 달성하는 과정에서 커다란 성취감을 얻기를 바래요. 그 과정에서 성장과 배움도 크게 얻어가기를 바라고. 이를 위해 필요한 기술적인 개선과 팀 업무 문화를 만들어가기 위해 노력하고 고민을 이어가고 있습니다.

“실제 생활에서 느끼고 경험하는 본질적인 가치를 위해
성공과 실패, 이를 통한 또 다른 성장이 가능한곳.
그곳이 29CM이에요.”

저는 코드 리뷰나 기술 블로그 작성과 같은 일상적인 업무 기반의 문화도 중요하지만, 팀원 모두가 실제 생활에서 느끼고 경험하는 본질적인 가치가 더욱 중요하다고 생각합니다. 개발자가 크게 성장할 수 있는 환경은 내가 업무를 주도할 수 있고 그러면서도 다양한 시도를 기반으로 성공과 실패를 통한 러닝을 경험할 수 있는 곳 이어야 하는데, 그런 관점에서 29CM 의 개발 문화는 개발자가 성장하기에 좋은 환경을 갖추었다고 생각합니다.

더불어 개발자의 성장 관점에서 볼 때 29CM는 수년간 거래액이 2배씩 증가하면서 다양한 요구사항과 극적인 트래픽에 노출되어 있는 시스템이고, 자율적인 업무와 성장을 장려하는 유연한 팀 문화를 갖추고 있습니다.

회사의 성장 뿐 아니라 개발자 개개인의 성장에 많은 관심을 가지고 계신 부분이 참 인상적입니다. 개발자의 성장 관점에서 추가로 어필하고 싶으신 부분이 있을까요?

특정 서비스가 기능을 런칭한 직후 개발 구성원 분들에게 하루에서 5일 정도의 자체 회고 시간 을 드리는 것을 이야기할 수 있겠습니다. 개발과 오픈 과정에서 본인이 생각했을 때 좋았던 점, 아쉬웠던 점을 돌아볼 수 있는 시간을 드리는 거죠. 그 과정에서 스스로 했던 수많은 선택을 돌아보고 필요하다면 코드에 대한 리펙토링³을 진행할 수도 있습니다. 사실 오픈 직후에는 예상치 못한 이슈를 급하게 대응해야 할 때도 있고, 유저의 반응에 따라 추가 개발이 필요한 경우도 있어서 약간의 여유 시간을 갖는 것이 업무 효율에 더 좋다고 생각했어요.

요즘엔 오픈 후의 감동이 잊혀지기 전에 기술 블로그를 작성하는 것을 강하게 권장하고 있습니다. 긴 시간 개발한 결과물과 경험을 직접 글로 정리하면 개인의 성장에 큰 도움이 된다고 생각하고, 이를 공유하는 문화가 개발 조직의 브랜딩에도 도움이 된다고 생각하기 때문이에요.

이런 맥락을 기반으로 21년 2월부터 지금까지 발행된 기술 블로그 아티클이 15개 정도 됩니다. 각각의 글감은 단순한 이론의 나열이 아니라 실제 29CM 내에서 유저 경험과 비즈니스 목표 달성을 위해 고민하고 실행한 흔적입니다. 그래서 현업에서 개발 업무에 매진하는 개발자 분들에게는 좀 더 가치 있게 읽히는 글이 아닐까 싶습니다.

지금은 백엔드 팀에서 많은 수의 기술 블로그를 작성하고 있지만 제가 볼 때는 모바일이나 프론트엔드, 데이터 쪽에서도 공유되면 좋을 업무 경험 기반의 글감이 많다고 생각돼요. 앞으로 아직 공개되지 않은 29CM의 이야기들이 조금 더 활발하게 공유될 수 있는 분위기를 만들어 보려고 합니다.

³리펙토링 : 코드의 동작은 그대로 유지하면서 코드의 내부 구조는 좀 더 나은 방식으로 개선하는 것을 의미

개발 조직의 목표를 말씀해 주세요.

언제나 그렇듯이 29CM 을 사용하는 유저 분들에게 높은 수준의 경험을 제공하기 위한 기능 개발과 운영을 지속하는 것이 개발 조직의 목표입니다. 그 과정에서 같이 일하는 동료 개발자들이 지금보다 더 큰 역량을 갖출 수 있도록 성장하는 문화를 만들어가는 것도 목표이구요. 다행히 지금까지는 이와 같은 조직의 목표가 잘 지켜지고 있다고 생각하구요. 이를 위해 제가 고민하고 실행해야 하는 것들을 열심히 수행할 생각입니다.

“특정 기술을 위해서가 아닌 공동 목표를 위해
개발의 방향을 찾아가는 여정을 함께하고 싶어요.”

마지막으로 함께 하고 싶은 개발자는 어떤 분이세요?

29CM 개발 조직은 비즈니스 마인드와 개발 마인드가 균형 있게 잡힌 분을 선호합니다. 단순히 특정 기술을 쓰고 싶어서 회사에 도입했다고 말하는 개발자보다는 명확한 목적과 제약 조건을 고려하여 기술과 개발 방향을 선택하는 분이 함께 성장하기 좋을 것 같아요. 모든 기술과 아키텍처에는 트레이드 오프가 존재하는데 이를 고려하여 개발하고 운영하는 경험이 풍부한 분, 본인의 역량과 노력으로 유저 경험과 비즈니스 임팩트를 만들어 낸 분이 있다면 정말 함께하고 싶어요.

저희는 회사와 개인의 성장을 동시에 추구하는 팀 문화를 가지고 있어요. 그런 관점에서 러닝과 실패를 두려워 하지 않는 분을 무척이나 좋아합니다.

[함께 성장할 동료를 찾습니다]

29CM ((주)무신사)는 3년 연속 거래액 2배의 성장을 이루었습니다.

이제 더 큰 성장을 위해 기존 모놀리틱 서비스 구조를 마이크로서비스 구조로 전환하고, 앵귤러 기반 프론트엔드 코드를 리액트로 전환하는 등의 기술적인 시도를 진행하고 있습니다. 모바일 앱 내부 구조도 모듈러 아키텍처로 개선하는 과정에 있습니다.

함께 성장하고 유저 가치를 만들어낼 동료 개발자분들을 찾습니다.

29CM 채용 페이지 : https://www.29cmcareers.co.kr/

▷연관 포지션 바로가기

[29CM] 백엔드 개발자 : https://29cm.career.greetinghr.com/o/14970
[29CM] 프론트엔드 개발자 : https://29cm.career.greetinghr.com/o/14960
[29CM] 추천 엔지니어 : https://29cm.career.greetinghr.com/o/30569
[29CM] 검색 엔지니어 : https://29cm.career.greetinghr.com/o/14969
[29CM] iOS 개발자 : https://29cm.career.greetinghr.com/o/29959
[29CM] Data Engineer : https://29cm.career.greetinghr.com/o/59873
[29CM] Data Analyst https://29cm.career.greetinghr.com/o/26642

📌채용이 완료되면 공고가 닫힐 수 있으니 빠르게 지원해주세요!

공유하기