본문으로 이동
당근마켓 광고 서버 NodeJS→Kotlin 전환기 | 당근마켓 Server 밋업 1회
컨퍼런스

당근마켓 광고 서버 NodeJS→Kotlin 전환기 | 당근마켓 Server 밋업 1회

당근 밋업 당근 · YouTube

원문 보기

AI 핵심 요약

지역광고 팀은 같은 기능을 Node.js와 Kotlin으로 각각 운영하면서 중복 구현이 늘고 기술 노하우가 분산되는 문제를 겪었다. gRPC의 타입 지원과 Kafka 클라이언트 생태계, 팀의 JVM 기반 데이터 파이프라인을 고려해 상품 컴포넌트를 Kotlin으로 통합하기로 했다. 기능을 한 번에 옮기는 방식은 전환 위험과 신규 기능 개발 지연이 우려됐지만, 팀은 통합을 선택해 약 3개월 동안 전환을 진행했다. 전환 직후에는 버그를 수정하고 있었으며, 언어 통합은 팀의 실제 기술 환경과 장기적인 유지보수 필요에 맞춰 결정해야 한다는 점을 공유했다.

  • 언어 선택은 유행이나 선호보다 서비스 아키텍처와 팀의 데이터 처리 방식에 맞춰 판단한다.
  • gRPC의 타입 지원과 Kafka 클라이언트의 기능 범위처럼 실제 사용하는 라이브러리 생태계를 비교한다.
  • 두 구현이 같은 기능을 맡으면 중복 개발과 도메인 지식의 분산이 생길 수 있다.
  • 전환 중 기능 개발을 멈추는 비용과 코드 이관에 따른 오류 위험을 함께 고려한다.
  • Kotlin의 패턴 매칭, 조건식 반환값, 컬렉션 API를 활용하면 데이터 처리 코드를 간결하게 구성할 수 있다.

소개

당근마켓 성장과 함께 프로덕트를 만드는 과정에서 겪은 다양한 경험을 공유합니다. 첫 번째 SERVER 밋업에서는 코틀린과 스프링을 주제로 몇 가지 세션을 준비했습니다. 🥕 로컬 광고 서버 NodeJS→Kotlin 전환기 - 김바다 님(당근마켓 지역광고 팀)

비슷한 학습 자료

컨퍼런스 당근 밋업

당근의 성장과 함께 프로덕트를 만드는 과정에서 겪은 다양한 경험을 공유해요. 🥕 JavaScript 생태계를 이용해서 신사업 제품의 서버 개발하기 (김경덕/버티컬 사업실) #javascript #nodejs 🥕 당근 공고 살펴보기 : https://about.daangn.com/jobs/ 🥕 발표 자료 : https://daangn.notion.site/SERVER-5599a1755889426bafd4e87a0562e0b6 * 당근 Server 밋업 1회 다시보기 : https://youtube.com/playlist?list=PLaHcMRg2hoBr5s_jn5CzZrpkmHOY0N8w7&si=VRdpYyoT0bjZ3VOW

백엔드 프로그래밍 언어

컨퍼런스 당근 밋업

당근마켓 성장과 함께 쌓아온 안정적인 인프라 구축과 운영 노하우를 당근마켓 SRE 팀에서 공유합니다. 이번 SRE 밋업에서는 사내 개발자 플랫폼 개발과 관련된 다양한 세션을 준비했습니다. 🥕발표자료: https://daangn.notion.site/SRE-c62abc2b6f0347a4ace9ee9cdfc49b6b?pvs=4 🥕 당근 SRE에 지원하기: https://about.daangn.com/jobs/ * 1회 밋업 다시보기: https://youtube.com/playlist?list=PLaHcMRg2hoBqWWla-pCBSRqU-jSriiZHj * 2회 밋업 다시보기: https://youtube.com/playlist?list=PLaHcMRg2hoBqJRSlnE7Xw_QpVkf8u6ISH

데브옵스 · 인프라 클라우드

컨퍼런스 당근 밋업

당근마켓 성장과 함께 쌓아온 안정적인 인프라 구축과 운영 노하우를 당근마켓 SRE 팀에서 공유합니다. 이번 SRE 밋업에서는 사내 개발자 플랫폼 개발과 관련된 다양한 세션을 준비했습니다. 🥕발표자료: https://daangn.notion.site/SRE-c62abc2b6f0347a4ace9ee9cdfc49b6b?pvs=4 🥕 당근 SRE에 지원하기: https://about.daangn.com/jobs/ * 1회 밋업 다시보기: https://youtube.com/playlist?list=PLaHcMRg2hoBqWWla-pCBSRqU-jSriiZHj * 2회 밋업 다시보기: https://youtube.com/playlist?list=PLaHcMRg2hoBqJRSlnE7Xw_QpVkf8u6ISH

데브옵스 · 인프라

컨퍼런스 당근 밋업

당근마켓 성장과 함께 프로덕트를 만드는 과정에서 겪은 다양한 경험을 공유합니다. 첫 번째 SERVER 밋업에서는 코틀린과 스프링을 주제로 몇 가지 세션을 준비했습니다. 🥕 Kotlin Coroutines 톺아보기 - 김태우 님(당근마켓 로컬 커머스 팀) 🥕 밋업자료: https://www.slideshare.net/xodn4195/kotlin-coroutines-250871163 🥕 밋업코드: https://github.com/gaaon/kotlin-coroutines-examples

프로그래밍 언어

컨퍼런스 당근 밋업

당근 SRE 두 번째 밋업에서는 서비스 배포를 주제로 다양한 세션을 준비했습니다. 🥕 당근마켓은 왜 배포 시스템을 만드는가? - 변정훈 님(당근마켓 SRE 팀 딜리버리 파트) 🥕 발표자료: https://www.notion.so/daangn/SRE-ca64e762e18e492fa449f8e43f0114d5 🥕 당근마켓 SRE팀에 합류하기 : https://team.daangn.com/jobs/4473170003/ 2021년 1월 17일 녹화. https://festa.io/events/1912 * 1회 밋업 다시보기: https://www.youtube.com/playlist?list=PLaHcMRg2hoBqWWla-pCBSRqU-jSriiZHj * 2회 밋업 다시보기: https://www.youtube.com/playlist?list=PLaHcMRg2hoBqJRSlnE7Xw_QpVkf8u6ISH

데브옵스 · 인프라

컨퍼런스 당근 밋업

1. 고언어를 도입하기 전 상황 2. 플랫폼팀에서의 목표 3. 고언어 도입 결정 이유 4. 고언어 플랫폼 등장 5. 고언어의 장점 6. 고언어 프로젝트를 진행하며 느낀 어려웠던 점 7. 고언어 활용법 8. 인프라 및 코드레벨에서의 장점 채용 https://dngn.kr/join-us-dev 발표자료 https://www.slideshare.net/KyuhyunByun1/ss-239755306 Dynamoutil https://github.com/daangn/dynamoutil

프로그래밍 언어