People

숨고 플랫폼 챕터가 일하는 방법

시간이 흘러도 변하지 않는 가치를 만드는 사람들

2021-08-20 숨고 Soomgo

숨 쉬는 모든 것들은 결국 늙어버리는 것이 자연의 섭리지요. 신이 준 생명은 아니라도, IT 서비스에도 생명이 있습니다. 결국 사람이 만들고, 사람이 쓰는 것이니까요.

그러나 모든 서비스가 무력하게 늙어만 가는 것은 아닙니다. 오늘의 서비스를 넘어 내일의 서비스를 생각하는 사람들이 있으니까요. 충분히 익는 것, 잘 자라 의미 있는 일들을 해내는 것. 성숙해진다는 것은 그런 의미가 아닐까요?

숨고 서비스가 사람들 곁에서 더 오래 성숙할 있도록 노력하는 사람, 숨고의 플랫폼 챕터 Paul을 만나 이야기를 들어보았습니다.


반가워요, 폴! 먼저 자기소개 부탁드립니다.

안녕하세요. 저는 숨고 플랫폼 챕터를 리딩하고 있는 폴이라고 합니다. 숨고의 플랫폼 챕터는 올해 7월에 처음 생겼어요. 숨고 서비스의 라이프 사이클을 늘려서 롱런하기 위해 만들어졌는데, 전사적으로 많은 기대와 도움을 동시에 주고 계셔서 요즘 어깨가 무겁습니다. (웃음)

새로 생긴 챕터라니 더 궁금해지네요. 숨고에 플랫폼 챕터가 생긴 배경이 무엇인가요?

숨고는 지난 7년 동안 놀라운 성장을 했어요. 많은 기능들을 출시했고, 고객도 정말 많이 늘었어요. 자연스럽게 테크 팀의 규모도 늘어나고, 코드 베이스도 증가했죠. 소프트웨어 엔트로피와 기술 부채가 늘어나면, 생산성과 품질은 낮아질 수밖에 없습니다. 인프라 비용도 높아지기 때문에 가용성도 검토해야 했어요.

플랫폼 챕터가 생긴 것은 숨고 멤버들이 목소리가 반영된 결과입니다. 지금이야말로 당장의 서비스 개발에서 한 발짝 물러나서 숨고의 엔트로피를 낮추고, 기술 부채를 상환해야 할 최적의 시점이라고 판단했어요. 서비스가 거대해지면 누군가는 깨진 창문을 보수하고, 기둥을 개축하는 작업을 해야 합니다.

프로덕트 챕터가 서비스의 확장에 집중한다면 플랫폼 엔지니어들은 깨진 창문을 보수하고 개축하기 위한 인프라, 데이터의 확장과 아키텍처 이전에 집중하고 있습니다. 견고한 서비스가 되도록 말이에요.

지구를 들어 올리는 플랫폼 팀 (출처: laptrinhx)

견고한 서비스라는 말씀이 와닿네요. 혹시 그동안 폴이 진행하셨던 프로젝트 중에 기억에 남는 것은 무엇인가요?

숨고파이(Soomgo-py) 프로젝트를 말씀드리고 싶어요. 숨고는 7년 이상 서비스 중인 모놀리식 서버를 사용하고 있었는데 개발이나 운영 이슈가 컸고, 생존을 위해 마이크로서비스 아키텍처(Microservices Architecture)를 도입하지 않을 수 없었어요. 기술 트렌드인 쿠버네티스와도 잘 맞는 아키텍처가 MSA이기도 했고요.

긴 시간 노력 끝에 프레임워크 Soomgo-py를 완성했고, 현재는 사용성이나 확장성 측면에서 정말 만족하고 있어요. 재사용성 측면에서도 생산성이 높은 편이고요. 아직은 Soomgo-py는 외부에 오픈소스로 공개된 프레임워크는 아니지만, 모두가 쓸 수 있도록 개선하여 오픈소스로 여러분들을 만날 수 있도록 준비할 예정입니다.

▶ 숨고의 MSA Architecture 프레임워크 Soomgo-py가 궁금하다면?

숨고에 조인하신 지는 얼마나 되셨나요? 폴이 생각하는 숨고의 장점은 무엇인가요?

이제 1년이 좀 넘었네요. 개발자로서 숨고에서 가장 만족스러운 것은 주변의 동료들이에요. 성장에 욕심이 있는 분들이라면 다들 그럴 거예요. 기술로 도태되지 않는 게 무엇보다 중요하니까요. 이전 회사는 B2B 서비스를 하는 곳에서 일을 했는데, 확실히 B2C만의 매력이 있어요. 제품이 릴리즈되어 반응이 바로 바로 오는 게 정말 다이나믹하거든요.

숨고가 개발자 친화적인 조직이라는 점도 저에겐 큰 장점입니다. 수평적인 조직이고, 근무 환경이 유연하고 이런 건 요즘 너무 당연한 거라서 굳이 강조할 필요도 없을 거 같네요. (웃음)

플랫폼 챕터의 훈훈한 분위기

평소 업무를 하시면서 가장 중요하게 생각하는 가치는 무엇인가요?

숨고의 핵심가치 중에 Impactful이 있는데, 제가 개인적으로 중요하게 생각하는 것도 임팩트입니다. 사실 플랫폼 챕터의 업무는 당장 눈으로 보기는 어려워요. 하지만 한 사람 한 사람 이용자가 늘어나고, 그렇게 시간이 흐르고 코드가 쌓이다 보면 문제는 눈덩이처럼 커져버리게 돼요.

모든 숨고 멤버들이 그렇겠지만, 플랫폼 챕터는 특히 더 일의 효과성을 많이 생각합니다. 먼 미래의 확장 가능성에 대해서도 늘 고민하고요. 임팩트를 생각한다는 것은 그런 의미입니다, 시간이 흘러도 노후화되지 않는 제품이 될 수 있도록 시스템과 트래픽을 책임지는 것이죠.

플랫폼 챕터의 사명감이 느껴지는 답변이네요. 업무가 아닌 폴의 일상에 대해서도 듣고 싶어요. 요즘 폴의 즐거움은 무엇인가요?

저는 도시를 떠나 자연을 즐기는 것을 좋아해요. 제가 말티즈 두 마리를 키우거든요. 대박이랑 메밀이 데리고 산책을 하면 정말 기분이 좋아요. 멀리는 아니더라도, 교외의 카페 같은 곳에서 강아지들과 함께 풀냄새도 맡고, 커피도 마시는 것이 제 즐거움입니다. 코로나가 끝나서 자유롭게 다닐 수 있는 날들이 빨리 왔으면 좋겠어요.

모자를 쓴 대박이

공을 좋아하는 메밀이는 모두 유기견 보호소에서 왔다고! (폴, 좋은 사람.....복 받아요....)

마지막으로, 앞으로의 목표나 계획에 대해 한 말씀 부탁드려요!

살아있는 것들은 모두 늙어요. 제품도 살아 움직이는 것이기에, 노후화를 피할 수는 없죠. 하지만 우리는 다른 선택을 할 수도 있어요. 늙어버리는 게 아니라 성숙해지려고 노력하는 것이죠. 숨고도 조금씩 노후화가 되는 곳이 있지만, 새로운 시스템으로 대체해서 성숙한 제품이 되도록 노력하고 있습니다.

숨고 서비스가 사용자들에게 좋은 경험을 주기 위해서는 높은 가용성을 유지해야 한다고 생각해요. 어떤 서비스라도 장애를 완벽하게 막을 수는 없죠. 하지만 장애가 발생하더라도 그 원인을 빠르게 찾고, 회복탄력성을 높이기 위해 노력한다면, 사용자들의 경험은 좋아질 수 있어요. 매 순간 모니터링과 셀프 힐링을 꼼꼼히 하고 있지만 아직 부족한 부분도 많아요. 이 부족한 부분을 채워 가용성 100%을 채우는 것이 당면한 목표고요.

숨고가 Data-driven 조직인 만큼 데이터 시스템에서 해줘야 할 일들도 많이 있어요. 많은 일을 했지만 아직 부족한 부분도 많기 때문에, 좋은 팀원을 더 모셔서 함께 문제를 해결해나가고 싶습니다!

숨고 Soomgo People
숨고는 고수와 고객 간의 연결을 넘어, 유의미한 삶의 변화를 만들어 갑니다