T
TechInsights
목록으로
Infra•2025. 12. 22.

“우리가 직접 만들겠습니다” — 무신사의 POS 내재화 여정

무신사
무신사 Engineering Team
무신사

핵심요약

원문 보기

무신사가 외부 POS 솔루션 의존성을 탈피하고 자체 개발한 MPOS(Musinsa POS) 시스템 구축 과정을 상세히 공유합니다. Electron을 선택한 이유, 개발 과정에서의 기술적 난제 해결 경험, 내재화 이후 달라진 점 등을 다룹니다.

무신사의 POS 시스템 내재화 여정: MPOS 구축기

배경 및 필요성

  • 외부 3rd party POS 솔루션 사용 시 온라인 플랫폼과의 연동성, 개발 대응 속도 한계 발생.
  • 외부 의존성으로 인한 개발 지연, 비용 부담, 유연성 부족, 시스템 통합 복잡성 등의 문제 해결 필요.
  • POS 시스템의 전면 내재화를 통해 외부 의존성 제거 및 자체 개발 시스템 전환 결정.

내재화 결정 요인

  • 개발 속도 향상: 외부 업체 협의 없이 자체 개발을 통한 빠른 기능 추가 및 수정.
  • 비용 절감: 외부 솔루션 사용료 및 커스터마이징 비용 절감.
  • 비즈니스 유연성 확보: 요구사항 변화에 대한 신속하고 유연한 대응.
  • 시스템 통합 간소화: 내부 시스템 간 직접 연동을 통한 복잡도 감소.
  • 데이터 및 프로세스 통제: 모든 데이터와 프로세스 직접 관리 및 품질 보장.

기술 스택 선정: Electron

  • 고려 사항: 개발 속도, 하드웨어 통신 용이성, 크로스 플랫폼 지원, 안정성 및 커뮤니티.
  • Electron 선택 이유: JavaScript/HTML/CSS 웹 기술 스택 재활용, Node.js 기반 하드웨어(프린터, 스캐너 등) 통신 용이성, Chromium 내장으로 시스템 브라우저 독립성, VS Code/Slack 등 검증된 생태계.
  • 대안 검토: Tauri (Rust 기반, 러닝 커브 부담), 네이티브 개발 (Windows/macOS 별도 개발 부담).

Electron 적용 후 경험 및 개선점

  • 빌드 환경 및 비용: Windows runner 중심 빌드 최적화, Linux runner는 테스트/lint 작업으로 비용 절감.
  • IPC 통신 끊김 방지: powerSaveBlocker 활용하여 Sleep 모드 진입 방지 및 메인 프로세스와 UI 간 통신 안정화.
  • SerialPort 통신: serialport 패키지 번들링 이슈 해결 (prebuilds 경로 수정 및 절대 경로 참조).
  • ESC/POS 표준 대응: 오픈소스 라이브러리 한계로 자체 ESC/POS 명령어 구현 및 라이브러리화.
  • 인증서 적용: OV CodeSign 인증서 적용 및 GitHub Actions CI/CD 파이프라인 연동으로 신뢰도 확보.
  • 네트워크 안정성: 기준정보 캐싱 전략 및 Network Information API 활용으로 네트워크 불안정 상황 대응.
  • 모니터링 및 장애 대응: Datadog RUM, Slack 알림 연동으로 실시간 모니터링 및 신속한 장애 대응 체계 구축.

내재화 이후 변화

  • 의존성 제거: 외부 업체 의존성 해소 및 자체적인 문제 해결 능력 확보.
  • 비용 절감: 외부 솔루션 사용료 제거 및 장기적인 운영 비용 감소.
  • 개발 속도 향상: 빠른 피드백 루프 및 시장 변화에 대한 신속한 대응.
  • 간결한 통합 구조: 내부 API 중심의 아키텍처로 장애 추적 및 유지보수 용이.
  • 데이터 활용 증대: 모든 로그 자유로운 수집 및 분석을 통한 데이터 기반 의사결정 강화.

향후 개선 과제

  • 메인 프로세스 부하 분산: 영수증 출력 로직 렌더러 프로세스로 이관 및 메인 프로세스 역할 최소화.
  • 경량 런타임 대안 검토: 저사양 장비 대상 Tauri 등 Rust 기반 경량 런타임 병행 운영 고려.

결론

  • POS 시스템의 전면 내재화를 통해 개발 속도, 비용, 유연성, 통합, 데이터 관리 측면에서 큰 성과 달성.
  • Electron 기반 MPOS 구축은 무신사 오프라인 스토어의 기술적 혁신과 운영 효율성 증대에 기여.
#Infra#FrontEnd#BackEnd
무신사
무신사

무신사 Engineering Team

기술 인사이트를 전달하는 공식 채널

You might also like

View all
토스 피플 : 새로운 길을 만들 땐 내 선택을 믿는다

토스 피플 : 새로운 길을 만들 땐 내 선택을 믿는다

"이 버튼 왜 안 눌려요?" 물류 현장의 목소리로 PDA 시스템 완성하기

"이 버튼 왜 안 눌려요?" 물류 현장의 목소리로 PDA 시스템 완성하기