250x250
Notice
Recent Posts
Recent Comments
Link
«   2025/04   »
1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30
Archives
Today
Total
관리 메뉴

y.developer

[240325] [테크 블로그 스터디] 당근마켓 본문

카테고리 없음

[240325] [테크 블로그 스터디] 당근마켓

y.developer 2024. 3. 25. 15:13
728x90

당신 근처, 당근마켓

월간 순수 사용자 1,800만을 자랑하는 지역 생활 중고거래 애플리케이션.

이전의 중고거래 플랫폼 중고나라, 번개장터에 비해 인지도는 낮았으나 입소문을 타면서 직거래만 선호하는 이용자들에게 널리 사용되어 이제는 11번가, G마켓과 같은 커머스 앱을 제치고 전체 쇼핑 앱 카테고리에서 쿠팡에 이은 2위에 올랐다.

 

 

다양한 콘텐츠로 확장

기업 소새 사이트 이외에도 콘텐츠 중심의 웹사이트가 존재한다.

당근이 중고거래 뿐만 아니라 동네 업체, 알바, 부동산, 중고차, 모임까지 다양한 콘텐츠를 다루고 있다. 동네 범위에서 이루어지는 커뮤니티라는 특색을 잘 살린 콘텐츠라고 생각한다. 중고거래를 하기 위해서 들어갔다가 자연스럽게 다른 콘텐츠도 살펴볼 수 있는 확장성 높은 아이템이다.

 

 

이 필요했을까?

당근은 앱이 메인이었기 때문에 과연 웹사이트이 필요했을까?

그렇기 때문에 웹의 필요성이 대두되기 전까지 오랜시간이 걸렸다.

 

당근은 MAU 1,800만 명 이라는 큰 숫자의 유저를 보유하고 있다. 그러나 몇년 전까지만 해도 앱에 많은 콘텐츠가 갇혀 앱이 없는 유저는 어떤 글이 공유되고, 어느 콘텐츠가 있는지 확인을 하지 못했다. 무조건 앱을 다운로드하거나 안 보거나 두 가지 선택지 밖에 없었던 것이다.

 

다양한 콘텐츠가 앱으로만 한정되는 것은 매우 큰 손실이다. 굳이 앱을 다운로드 받고 싶지 않은 유저, 앱 다운로드까지 전환되지 않는 유저 등을 커버하지 못하고 서비스로 유입될 확률을 자체적으로 낮춰 놓는 시스템이다. 당근이 얼마나 다양한 서비스를 운영하고 있고, 더 많은 유저층을 확보할 수 있는 기회가 없는 것이다. 그래서 웹을 만들기로 했다. 누구나 쉽게 당근의 다양한 콘텐츠를에 접근하여 이용할 수 있도록 했다.

 

당근에는 아직 정리되지 않은 웹사이트가 많이 퍼져 있다. 단기적으로 나가는 마케팅성 페이지와 company-centric 콘텐츠를 담은 어바웃당근, 유저의 콘텐츠를 담은 당근닷컴, 그리고 서비스가 그대로 다른(서브) 도메인으로 분리되어 나가 있는 비즈니스당근당근페이 등의 사이트도 있다. 서비스 별로 웹을 활용하고자 하는 이유와 방향은 모두 다를 수 있지만, 계속된 파편화로 인한 관리 부재를 막기 위해서는 웹사이트를 관리하는 주체가 필요하다.

 

 

코어 팀에서 웹 개발을 하는 이유

각 팀에서 웹을 개발하지 않고 코어 팀에서 진행한다.
웹은 보이지 않는 뒷단에서 돌아가는 많은 정책이 필요하다. 하지만 목적 조직으로 이루어져 있고, 자유롭고 다양한 기술의 채택을 장려하는 당근의 개발 문화에서 하나의 통일된 정책을 만드는 것은 어려웠다. 그래서 하나의 코어 팀에서 총괄하여 제작한 것이다.

 

 

파머링크

가장 중요했던 부분이 URL 규격 설정이었다.

파머링크는 변하지 않는 고유한 ID로서의 링크를 의미한다. 물론 변경이 불가한 건 아니지만, ID로서 존재하는 링크이기 때문에 변경된다면 특정 데이터를 고유하게 가리키는 identifier가 될 수 없다. 따라서 최대한 변경될 여지가 있는 속성을 제거해야 했다.

 

도메인]/[국가코드]/[언어(생략가능)]/[콘텐츠타입]/[타이틀]-[publicId]/

 

 

보이지 않던 뒷단의 일

유니버셜 링크와 딥 링크를 설정했다.

처음으로 알바팀 콘텐츠가 나가고, 이러서 부동산, 중고차 모든 버티컬 서비스가 나감과 동시에 추가적으로 정책이 필요한 부분들이 생겼다. 기존 중고거래 사이트는 유니버설 링크 등의 설정없이 모든 페이지에 접근 시 앱을 열도록 강제하고 있었다. 하지만 이건 사용자 경험에 분명 좋지 않은 영향을 준다. 동일한 사이트를 접속하는데도 매 페이지마다 앱을 열도록 모달을 띄웠기 때문이다. 이를 해결하기 위해 유니버설 링크와 딥 링크를 등록했다.

 

이렇게 링크를 등록하면, 유저가 등록된 링크로 접속했을 때 iOS라면 앱이 있는 경우에는 해당하는 앱스킴으로 이동시키고, 안드로이드의 경우 Google Play Store로 이동할지, 앱으로 이동할지 등의 선택지를 제공한다. 원하지 않는 경우에는 웹에 머무를 수 있다. 무조건 앱 설치 페이지로 이동하지 않고 앱 다운로드 없이 웹에서 탐색할 수 있게 된다. 또한, html tag를 사용하여 앱으로 이동할 수 있도록 스마트앱 배너를 추가하면 상단 배너도 띄울 수 있다.

 

서브 도메인도 정리했다.

이전에 중고거래, 동네생활과 동네정보는 서브도메인이 daangn.com/ 과 town.daangn.com/ 으로 분리되어 있었다. 하지만 이 둘 모두 관리되고 있지 않아 코어팀에서 퍼머링크를 만들고 당근닷컴에 다른 서비스를 올리면서 town.daangn.com/ 의 콘텐츠도 모두 당근닷컴으로 옮겨오게 되었다.

 

하지만 이미 반복적으로 크롤링되어 인덱싱 된 페이지였기 때문에 검색 결과에 노출되고 있고, 다른 사이트와 링킹되어 (링크를 다른 사이트에서 포함하고 있는 등) 상위에 노출되고 있었기 때문에 이 결과를 유지하며 옮겨와야 했다. 따라서 당근닷컴의 “동네업체” 탭으로 redirection 처리를 하면서 기존에 나가있던 페이지가 유실되지 않도록 구글 서치콘솔과 빙 웹마스터 등의 도구를 사용하였다. 또한 당근닷컴으로 배포된 URL을 canonical url 로 설정하면서 동일한 페이지를 가리키는 여러 URL 중 검색봇에게 알려주는 대표적인 URL을 변경했다.

 

 

거대한 리소스를 하나로 연결하는 작업

대부분의 경우 앱으로만 서비스를 이용하다 보니 웹이 존재하는지 모르는 경우도 있을 것이다. 하지만 누군가는 웹을 통해서 당근 서비스를 접했을 수도 있다. 당근이라는 존재를 모르고 SEO를 통해서 당근을 알게 된 사람도 있을 것이다. 그리고 다양한 콘텐츠의 허브가 되는 웹사이트가 존재함으로써 안정적으로 콘텐츠들을 확장할 수 있게 되었다.

 

성장을 거듭하며 거대해진 리소스, 그러나 뿔뿔이 흩어져 있던 리소스들을 하나로 합치는 일은 정말 어렵다고 생각한다. 모든 것을 아우르는 규칙이 필요하고, 이를 하나로 합치는 과정이 필요하다. 다시 처음으로 돌아가서 모든 것을 세팅해야 한다.

 

모든 것을 처음부터 설계하고 들어갈 수 없기 때문에 이와 같은 시스템 변화는 필히 존재한다. 그 상황에 어떻게 대처하는지, 어떤 방법이 효율적인지 판단하는 것이 중요하다. 당근의 사례를 보며 과감하게 변화를 선택하는 용기도 필요하다는 것을 알게 되었다.

 

 

 

 

 

참고 자료

더보기

 

728x90