상세 컨텐츠

본문 제목

자체 구축의 한계 : SuperAwesome의 Amplitude 적용기

🔥 Amplitude 활용 가이드

by Maxonomy 2020. 12. 11. 00:00

본문

오늘은, SuperAwesome의 최고제품젝임자(CPO)인 Mike Hutchinson가 자체 구축했던 분석 시스템을 Amplitude로 전환하게 된 스토리를 전달 드리고자 합니다.

 

 PopJam은 아이들에게 맞춤형으로 구축된 소셜 플랫폼입니다.

13세 미만 이용자의 안전 및 개인정보보호 정책(COPA, GDPR-K)을 위해 특별히 설계된 커뮤니티로서, 아이들이 선호하는 콘텐츠와 브랜드에 참여할 수 있도록 다양한 기능을 제공하고 있습니다. 특히, 아동(7~12세)을 대상으로 운영하고 있기 때문에 프라이버시 이슈와 아동법 준수를 매우 철처하게 관리하고 있지요.

 

 일반적으로 플랫폼에서의 중요한 관심사는 "측정" 및 "학습"에 사용하는 제품 분석 기능입니다.

무엇을, 어떻게 측정할 것인지를 결정하려면 신중하게 검토해야 하겠지만, 이것을 보다 쉽게 구현할 수 있도록 완벽한 기능을 제공하는 다양한 솔루션이 존재하고 있습니다. 그 중에 하나를 선택하는 것은 그리 어렵지 않은 일이지요.

 

 하지만 아동용 디지털 환경에서는 그렇지 않습니다.

아동용 앱을 개발할 때는 여러 제약이 추가됩니다. 예를 들어, 일반적인 분석 솔루션을 이용한다면 고객이 앱에 접속하는 순간, SDK는 고객을 식별하게 되며 식별된 정보를 솔루션 서버로 전달될 것입니다. 이런 정보는 더 많은 인사이트를 얻기 위해 활용되고 있지만 PopJam에서는 이러한 정보가 전달되지 않도록 예방 조치를 취하고 있습니다.

 

 여러분이 이 분야에 분석 솔루션 적용을 고려하고 있다면, PopJam에서 경험한 것들이 여러분의 결정에 도움이 되기를 바랍니다.

 

 

직접 운영하기

 PopJam 팀에서는 분석 솔루션을 직접 구현하여 사용하기로 결정 하였습니다. Amazon Redshift 데이터베이스를 확장하고, 오픈 소스 쿼리 러너인 Re:Dash를 적용한 후, 분석 이벤트 인프라를 정의하고 구현하는 작업에 착수했습니다.

 

 사용자를 식별하는데 활용되는 정보는 모두 제거하고, 제품 분석용 데이터만 수집하도록 클라이언트용 SDK를 직접 만들었으며, 서버로 전달된 요청 전문 상의 IP주소나 그 외, PII 정보를 제거한 raw 데이터만을 배치 작업을 위해 DB에 저장 하였습니다.

그 후, 수작업으로 작성한 ETL을  Re:Dash를 사용하여 실행 시켰습니다.

 

 처음에는 자체 구축이 매우 성공적으로 보였습니다. 원천부터 직접 구성하여 모든 부분에 대한 제어가 가능 했으므로, 저렴한 가격, 빠른 속도, 좋은 기능까지 모든 것을 충족하는 듯 보였습니다. 하지만, 문제가 발생하기까지 그리 오랜 시간이 걸리지 않았습니다.

 

 

생각만큼 싸지 않다.

운영비는 비교적 저렴했지만 인프라 관점에서 보면 운용과 유지보수가 결코 저렴하지 않았습니다. 매일 진행되었던 배치 작업에 활용된 Redshift, Re:Dash가 다소 불안정한 것으로 판명되었고, 기술 책임자가 이를 디버깅, 수정, 손실 데이터 원복, 고객 클래임 대응 및 기존 분석 기능 유지를 위해 상당한 시간을 소모 하게 되었습니다. 모든 기능들이 데이터를 기반으로 구현되었기 때문에 배치 작업에 문제가 발생할 경우, 캠페인 리포트, 커뮤니티 관리용 대시보드, 마케팅 정보 등 모든 부분에 영향을 주었습니다.

 

또한, 모든 지표, 그래프, 대시보드, 보고서 작성 도구 및 쿼리를 직접 구현해야 하는 당사 제품관리자는 이를 직접 공부하면서 작업해야 했으며, 문제가 발생하면 원복하는데 더 많은 시간이 소요될 수 밖에 없었습니다.

기회비용

 단순히 시간이 많이 걸리는 문제가 아닌, 실수에 따른 팀 사기 저하와 엄청난 기회비용의 소모를 야기한다는 문제가 있었습니다. 우리의 제품 담당자는 일주일 중 2일을 SQL에 몰두하느라 제품 개선에 노력을 집중할 수 없었으며, 질문에 답변을 주는데 더 많은 시간이 걸리게 되었습니다. 우리는 결국 질문에 답을 찾지 못하고 솔루션 구축 전의 단순한 분석에 의존하게 되었습니다.

 

 게다가, 자체 솔루션에 개선이 필요한 부분에 대해 이슈를 등록하면 우선 순위에 따라 처리되도록 설계 되었지만, 실제로는 기다리기만 해서는 어떠한 개선도 이루어지지 않았습니다. 

 

 

생각만큼 좋지 않다.

 Re:Dash는 나름대로 잘 작동했지만, 몇가지 단점이 있었습니다.(리소스 투자가 우선시 되었다면 해결이 가능했을 것입니다.) 우리의 주요 문제는 팀 내의 자체적인 통계분석과 질의작성 스킬에 의존한다는 것 이었습니다. 제품관리자는 데이터 사이언티스트가 아니었으며, 데이터 분석가가 따로 있지는 않았습니다.

 

 기본적인 작업을 직접 수행하면서 데이터에서 상당한 결과를 얻을 수 있었지만, 우리가 전문적인 분석 기술 영역에 도달 하기에는 한계가 있었습니다. 고객들의 데이터가 나타내는 것을 우리가 진정으로 이해할 수 있도록 우리의 능력을 극대화할 수 있는 분석 플랫폼이 필요했습니다.

 

 

해결방안 모색

다양한 문제가 지속적으로 발견되면서, 우리는 문제의 해결책을 찾아줄 전문가를 찾았습니다.

 

Amplitude를 선택하기 전, 몇 가지 다른 분석 솔루션을 찾아보았지만, 제품 개선에 특화된 Amplitude의 UI에 놀라움을 감출 수 없었습니다. 또한, Amplitude에는 이전에는 보지 못한 매우 강력하고 사용하기 쉬운 분석 기능이 많이 포함되어 있었습니다.

 

인상깊었던 점 중 하나는 어떤 데이터 포인트에서나 Microscope를 사용하여 코호트를 정의할 수 있다는 것 이었습니다. 제품팀은 정기적으로 코멘트를 작성하는 사용자들을 손쉽게 코호트로 만들어 그들이 다른 무엇을 하고 있는지 볼 수 있을 뿐 아니라, 마케팅 팀은 특정 마케팅 캠페인으로 유입된 고객들을 코호트로 작성하여 자신이 의도한 고객들이 유입 되었는가를 확인해 볼 수 있었습니다.

 

우리가 원했으나 만들지 못하였던 기능인 영향도 분석 기능도 있었습니다. 이 분석 기능을 사용하여, PopJam을 이용하기 시작한 고객들이 "성격 퀴즈를 접하고 즐기는 것이, 앞으로 PopJam을 어떻게 인식하고, 활용하며, 지속적으로 사용하는데 얼마나 많은 영향을 미치는지"에 "큰 영향을 준다"는 가설을 탐구할 수 있었습니다.

마이그레이션

Amplitude로의 마이그레이션은 간단했습니다. 우리가 기존에 세팅해두었던 코드는 유지하면서, 서버상에 수집되는 시점에 모든 데이터는 Amplitude의 HTTP API로 전달하도록 구성 하였습니다. Amplitude의 SDK를 사용하지 않고 우리가 자체 개발한 SDK를 활용함으로써, 전달할 데이터의 컨트롤을 전적으로 우리가 관리할 수 있었으며 원하는 정보만 Amplitude로 전송하는 것이 가능 했습니다.

 

그 결과, Amplitude의 강력한 프론트엔드 툴의 장점을 모두 누릴 수 있었으며, Amplitude에는 사용자의 개인정보 데이터가 전혀 포함되어 있지 않다는 확신이 할 수 있었습니다.

 

이전 솔루션에 비해 비용이 더 많이 들었지만, 우리에게 있어 가장 중요한 "가설 > 검증 > 개선을 통한 혁신"을 반복할 수 있는 우리의 능력에 다시 초점을 맞출 수 있었습니다.

 

Kid-safe 분석

현재 우리가 가지고 있는 툴셋은 분석의 고도화라는 측면에서 우리가 내부적으로 달성할 수 있었던 것 보다 훨씬 앞서 있으며, 제품 반복 사이클에 대한 인사이트와 지침을 얻을 수 있었습니다. Amplitude UI는 매우 직관적이며, SQL과 달리 쉽게 사용이 가능하므로 다른 팀에서도 Amplitude를 함께 활용할 수 있도록 사용자의 범위를 넓히고 있습니다.

 

PopJam의 책임자인 Scarlett Cayford는 전략가, 디자이너, 광고운영 책임자 등으로 구성된 팀을 이끌고 있으며, 이들은 모두 정기적으로 Amplitude를 사용하여 PopJam의 다양한 분야의 데이터를 분석하고 있습니다.

 "자체 제작한 솔루션이 작동 가능하긴 했지만, 측정 범위가 제한적이었고, 새로운 쿼리 작성을 제품관리자에게 전적으로 의존해야 했습니다. 하지만 Amplitude는 우리가 직접 쿼리를 구성할 수 있을 만큼 간단한 UI를 제공하며, 쿼리 결과를 다른 시간 프레임이나 지역으로 분할하는 것 또한 손쉽게 가능합니다. Amplitude 채택은 우리에게 권한 뿐만이 아닌 자율성도 부여하여, 보다 신속하게 대응할 수 있게 해주었습니다."

 

자체 제작한 오픈소스 시반 솔루션에서 Amplitude로의 전환은 우리에게 매우 좋은 선택 이었습니다. 13세 미만 사용자의 개인정보를 보호하면서도 Amplitude의 다양한 도구를 함께 활용할 수 있는 방법을 찾을 수 있었지요.

 

분석에 대한 부분은 Amplitude에서 지원하기 때문에, 이제 우리는 항상 개선된 툴과 새로운 기능을 활용할 뿐, 더 이상 분석 솔루션에 대해 걱정하지 않습니다. 우리는 더 이상 우리의 업무(어린이들을 위해 인터넷을 보다 안전하게 만드는 것)와 전혀 관계없는 분야의 전문가가 될 필요가 없습니다!

 

관련글 더보기

댓글 영역