우리는 하나다! 모노레포 with pnpm #우아콘2022 #Day2_음식그이상의것을문앞으로
우아콘 2022 우아한형제들 · YouTube
AI 핵심 요약
배민스토어 웹 프론트엔드 팀은 어드민과 셀러오피스 PC·모바일 프로젝트를 각각 관리하면서 공통 코드가 중복되고 UI 컴포넌트 수정도 반복되는 문제를 겪었다. 이를 해결하기 위해 pnpm 워크스페이스로 프로젝트와 공통 패키지를 한 저장소에 모으고, Next.js와 CRA 설정을 확장해 패키지 간 코드를 공유하면서 각 프로젝트는 독립적으로 빌드·배포하도록 구성했다. 그 결과 공통 컴포넌트와 정책을 한곳에서 관리하고 프로젝트를 병렬 개발·리뷰하기 쉬워졌으며, pnpm 사용을 돕는 대화형 CLI와 점진적 코드 공통화 문화도 마련했다. 다만 외부 패키지 버전의 반복 명시, CRA 설정 의존성, 공통 패키지 승격 규칙은 후속 개선 과제로 남았다.
- 모노레포 도입은 프로젝트 간 코드 중복과 공통 UI 컴포넌트의 반복 수정처럼 실제로 해결할 문제를 기준으로 판단한다.
- pnpm의 엄격한 의존성 구조는 패키지 선언 누락을 드러내지만, 기존 npm·Yarn 사용자에게는 사용법과 워크스페이스 개념을 안내할 필요가 있다.
- 패키지 매니저 워크스페이스만으로 시작하면 빌드 시스템 도입 부담을 줄일 수 있지만, 규모가 커질 때 캐싱과 영향 범위 기반 실행을 별도로 고민해야 한다.
- 코드 공유를 위해 Next.js와 CRA 설정을 확장할 수 있지만, 장기적으로는 패키지별 독립 빌드를 마련해 프로젝트 설정 의존성을 줄이는 방향을 고려한다.
- 공통 코드 승격 절차와 의존성 버전 관리 규칙을 정하고, 대화형 CLI와 코드리뷰 문화로 모노레포 사용 부담을 낮춘다.
소개
바쁜 일정 속에서 여러 프로젝트를 모노레포로 구성해야 했던 커머스 프론트엔드! 방법을 찾던 그들은 마침내 pnpm을 만나게 되는데... [발표자 소개] 윤태원 | 배민스토어웹프론트개발팀 우아한형제들에서 프런트엔드 개발(과 이것저것...)을 하고 있습니다. 배우는 재미를 찾고 즐기며, 나름 즐겁게 지내고 있습니다 :) 이수형 | 배민스토어웹프론트개발팀 개발은 항상 비즈니스와 커뮤니케이션해야 한다는 생각으로 구성원들과 적극적으로 커뮤니케이션하며 프로젝트에 임하고 있습니다. 미니멀리즘 코드를 지향하며 범용성과 확장성, 재사용성이 높은 아키텍처나 디자인 패턴을 위해 고민하는 것을 좋아합니다. 홍영준 | 배민스토어웹프론트개발팀 우아한형제들에서 프런트엔드 개발을 하고 있는 신입 개발자입니다. 매일 새로운 것들을 배우고 있고 그 내용들을 기록으로 남기려고 노력하고 있습니다. 발표자 코멘트) 지난 8월 pnpm 7에서 아래와 같은 에러가 보고되었습니다. *https://github.c...
비슷한 학습 자료
컨퍼런스 우아콘 2023
[WOOWACON2023 세션 다시보기] 👉 세션 설명 배민스토어는 올해 4월, 레거시 코드와 아키텍처를 전부 재작성하고 재설계하는 빅뱅을 겪었습니다. 그 과정에서 생산성과 효율성을 높이기 위해 여러 가지 기술을 한 번에 도입했고, 다양한 시행착오를 겪었습니다. 배민스토어의 전시 도메인 개발자들이 어떤 일을 하는지 소개하면서, Kotlin, Spring WebFlux, EDA 도입의 이유와 좋았던 점, 나빴던 점, 그리고 각 기술에 대한 개발자들의 생각까지 날것으로 풀어내 보겠습니다.ㅤ ㅤ 👉 발표자 소개 배민스토어서비스개발팀 김민태 좋은 시스템을 개발해서 밤에 약속을 나가고 싶은 개발자입니다. 배민스토어의 백엔드를 개발하며, 팀에서 광대를 담당하고 있습니다. 배민스토어서비스개발팀 오지산 좋은 코드를 써서 밤에 발 쭉 뻗고 자고 싶은 개발자입니다. 배민스토어의 백엔드를 개발하며, 팀에서 선생님을 담당하고 있습니다. 👍 추천 대상 Kotlin과 Spring WebFl...
백엔드 프로그래밍 언어
컨퍼런스 우아콘 2023
프론트엔드 개발의 미래, Module Federation의 적용 #우아콘2023 #우아한형제들
컨퍼런스 우아콘 2023
[WOOWACON2023 세션 다시보기] 👉 세션 설명 점차 비대해져가는 프론트엔드 애플리케이션에 지치셨나요? MSA 백엔드에 대응하는 모놀리식 프론트엔드에 싫증이 났을까요? 복잡한 의존성으로 인해 지쳐만 가는 프론트엔드 엔지니어들에게 보다 간단하게 Module Federation을 이용한 Microfrontend 적용에 대해 이야기해 보고자 합니다.ㅤ ㅤ 👉 발표자 소개 배민커머스웹프론트개발팀 박세문 15년 정도를 소프트웨어 엔지니어로 지내오고 있습니다. 현재는 배민커머스웹프론트 개발팀에서 프론트엔드 개발 및 아키텍처 설계와 같은 업무들을 진행하고 있습니다. 다양한 필드, 다양한 분야에서의 경험을 바탕으로 프론트엔드 업무를 보다 잘할 수 있는 방법에 대해서 늘 고민하고 또 고민하는 고민이 많은 엔지니어입니다. 👍 추천 대상 마이크로프론트엔드 도입을 고려 중인 프론트엔드 개발자 🙋🏻♀️ 세션에 대해 궁금한 점이 있다면 dev_relations@woowahan....
프론트엔드 풀스택
컨퍼런스 우아콘 2023
웹프론트 개발자들을 위한 '우아한스펙트럼' 서비스 제작기 #우아콘2023 #우아한형제들
컨퍼런스 우아콘 2023
[WOOWACON2023 세션 다시보기] 👉 세션 설명 배달의민족 웹프론트엔드 개발자들의 기술 공유 플랫폼 '우아한스펙트럼'을 소개합니다. 기획부터 서버, DB, 프론트 모두 프론트엔드 개발자 6명이서 만든, 눈물 없이 들을 수 없는 스토리ㅤ 👉 발표자 소개 셀러웹프론트개발팀 송지은 사회생활 3개월 차 리더가 된 프론트엔드 개발자 사실 본업은 사장님을 위해서라면 어디든 달려가는 배민셀프서비스 개발자 👍 추천 대상 - 우아한형제들 웹프론트개발자들의 기술 공유 방식이 궁금한 개발자 - 사내 사이드 프로젝트를 잘 운영하고 싶은 개발자 🙋🏻♀️ 세션에 대해 궁금한 점이 있다면 dev_relations@woowahan.com 으로 문의주시기 바랍니다.
프론트엔드 백엔드 풀스택
컨퍼런스 우아콘 2022
배민 커머스, 프론트엔드 진화! #우아콘2022 #Day2_음식그이상의것을문앞으로
컨퍼런스 우아콘 2022
B마트, 배민스토어, 배민쇼핑라이브의 기반을 이루고 있는 '배민 커머스 서비스'. 각각의 서비스를 위해 별도로 만들어져있었던 것을 하나의 웹프론트 개발팀으로 묶게 되면서 인원과 프로덕트가 많아져 재정비가 필요하게되었습니다. 그 과정에서 웹 프론트 아키텍처와, 보다 효율적으로 개발하기 위한 생산성에 대한 고민이 많았는데요. 고민의 결과와 앞으로의 방향까지 발표를 통해 공유합니다. 마광휘 | 배민스토어웹프론트개발팀 최근 팀원이 많아지면서, 더 높은 업무 효율과 생산성에 관심을 두고 있습니다. 적은 인원, 적은 코드로 폭발적인 가치를 창출하는 문화를 만드는 데 집중하고 있습니다.
프론트엔드
컨퍼런스 우아콘 2022
리액트 네이티브 리팩토링 #우아콘2022 #Day3_함께하고성장하는우리
컨퍼런스 우아콘 2022
수년간 여러 엔지니어들의 손을 거치면서, 배민 사장님용 앱의 소스코드는 일반적인 개발 트렌드에 비해 파편화되고 뒤쳐져 있었습니다. 이제는 소스코드를 업데이트하고 정리해서 최신 라이브러리 버전의 새로운 기능들을 사용해볼 때라고 생각하게 되었는데요, 장단점을 비교해본 끝에 리팩토링 프로젝트를 시작하게 되었습니다. 그 경험을 여러분께 공유드립니다. [발표자 소개] 안 윈(Huan Huynh, Jake) | Woowa Vietnam 후안 윈(제이크)는 2022년 우아한형제들에 입사하기 전까지 약 10년 가량 주로 안드로이드와 플러터를 다루는 모바일 소프트웨어 엔지니어이자 모바일 팀 리더로 경력을 쌓아왔습니다. 제이크는 모바일 클라이언트 엔지니어링 팀에서 리액트 네이티브(React Native) 엔지니어로 근무하고 있으며 입점 업주들에게 유용한 기능을 제공하는 동시에 입점 업주용 앱을 사용하는 사람들에게 최고의 유저 경험을 제공할 수 있도록 노력하고 있습니다. 트루옹 트란(Truong ...
모바일 앱 개발