1 of 45

이커머스 개발에 관하여

e-commerce programming

허광남 kenu@okdevtv.com

2 of 45

www.bing.com in Microsoft Edge 브라우저

3 of 45

Agenda

  • 경험했던 이커머스
  • 이커머스 프로세스
  • 개발팀의 도전과 역할
  • 비즈니스와 기술

4 of 45

About me

  • OKKY.kr 공동대표, OKdevTV 프로그래밍 방송BJ
  • 現 '12~ 전자정부 표준프레임워크 에반젤리스트
  • 前 '21~'22 이노베이션 아카데미 멘토
  • 前 '19~'20 GS Fresh 프론트엔드 AA
  • 前 '17~'19 헬로네이처 CTO, 펫프렌즈 CTO
  • 前 '15~'17 GS SHOP 벤처투자팀 CoE 파트
  • 前 '04~'08 GS SHOP 정보전략팀 과장

5 of 45

이커머스 경력

2001 - pharmsnet.com 의약품 전자상거래 서비스

2004 - lgeshop.com > gseshop.co.kr 온라인 홈쇼핑

2015 - gsshop.com 벤처투자팀 CoE (10x10, 29cm, 다노, 등)

2017 - hellonature.net 신선식품, 온라인 농산물 직거래 서비스

2018 - pet-friends.co.kr 반려동물을 위한 이커머스

2020 - gsfresh.com 신선식품 이커머스

6 of 45

2007

이커머스

컨퍼런스

DevDay

7 of 45

2007 이커머스 개발의 고민

8 of 45

이커머스 두 번의 CTO

2017 - hellonature.net 신선식품, 온라인 농산물 직거래 서비스

2018 - pet-friends.co.kr 반려동물을 위한 이커머스

  • 유통은 변동비가 큰 서비스
  • 거래 물량이 늘어나면 인건비, 물류비 등이 비례해서 증가
  • 수작업(엑셀)에서 시스템으로
  • 오피스와 물류, 우선순위
  • 병목구간 ToC(Theory of Constraint) 시스템화
  • 시스템화 = 자동화 = 적은 인원으로 많은 일을 정확히 할 수 있게

9 of 45

10 of 45

이커머스 프로세스

발주

입고 / 적치

진열

장바구니

주문

결제

피킹

포장

배송

정산

환불

재화 생산

파트너

서비스 제공자

고객

11 of 45

이커머스 프로세스

발주

입고 / 적치

진열

장바구니

주문

결제

피킹

포장

배송

정산

환불

재화 생산

파트너

서비스 제공자

고객

마케팅

12 of 45

이커머스 팀별 역할과 시스템

마케팅

발주

입고 / 적치

진열

장바구니

주문

결제

피킹

포장

배송

정산

환불

재화 생산

마케팅

물류

CS

MD

물류

물류

MD

MD

13 of 45

온라인 서비스 이해관계자

마케팅

CS

물류

MD

경영

디자인

개발

기획

요구사항

14 of 45

온라인 서비스 개발 요청

마케팅

CS

물류

MD

경영

디자인

개발

기획

디자인

개발

기획

디자인

개발

기획

디자인

개발

기획

디자인

개발

기획

디자인

개발

기획

디자인

개발

기획

디자인

개발

기획

요구사항

15 of 45

업무별 필요 시스템

ERP, BI : 경영, MD, 마케팅, 기획, 물류

조회 : CS

WMS : 물류, MD, 경영

TMS : 물류

Barcode : 물류

마케팅

CS

물류

MD

경영

기획

16 of 45

17 of 45

왜 개발이 안 되나요?

답1 : 개발팀 인력이 부족하네요.

답2 : 우선 순위에 밀려 있는 업무라서요.

답3 : 정책적으로 막아 놓은 거예요.

답4 : 디자인이 아직 안 나왔어요.

답5 : 담당팀 요구사항이 아직 정해지지 않았어요.

18 of 45

왜 개발자가 안 구해지나요?

답1 : 잘하는 친구들은 다 한 자리씩 차지하고 있어요.

답2 : 회사 연봉으로 맞춰서 데려오기 힘드네요.

답3 : 저희 팀과 성격이 맞는 사람이 지원을 안 해요.

답4 : 저희 회사를 누가 오려고 하겠어요. #개고생팀

답5 : ...

19 of 45

개발팀의 도전과 역할

  • 적정 기술 #scope
  • 적시 기술 #time
  • 적정 인력 #man-power
  • 두 종류 고객: 동료도 고객처럼 소중하게
  • 모니터링
  • 장애 대응과 기록
  • 품질 관리

20 of 45

적정 기술

21 of 45

적정 기술 appropriate technology

  • 한정된 자원에서 선택과 집중
  • 엔지니어의 욕심은 오버 엔지니어링으로 귀착
  • 매출, 트래픽 규모에 맞는 기술 선택이 필요
  • 소프트웨어는 조직의 상태를 투영하게 되어 있음
    • Conway’s law
  • 서비스의 성장에 따라 기술 세트도 성장

22 of 45

모바일 중심 mobile first

  • 매출의 80% 이상이 모바일 주문으로 발생
  • 데스크탑과 공존하는 디자인
  • 효율적인 개발

23 of 45

적시 기술 Time to Market

  • 이커머스에서 시간은 매우 중요
  • 타이밍에 맞는 기획과 개발
  • 시간에 맞춰 개발할 수 있는 양 협의
  • 중간 점검 및 진행 상황 공유

24 of 45

기술 선택

  • 어떤 기술을 사용할 것인가?
  • 언어와 프레임워크는 각각의 해결 영역이 존재
  • 기술에 대한 백업 필요하기 때문에 팀 공유 필수
    • Pull Request를 이용한 Code Review
  • 팀 내 기술 공유 시간, 페어 프로그래밍, 코드 리뷰
  • 클라우드는 CPU, 메모리에 비례한 가격

25 of 45

적정 인력

  • 싸고 좋은 인력을 기대하지 마시길
  • 이커머스 개발은 꾸준한 변화가 생명
  • 개발자 대 현업 비율 (교수 대 학생 비율)
  • 각 실무자의 업무를 시스템으로 자동화할 수 있는 개발 인력

26 of 45

개발팀 관리

  • 누가 무엇을 하고 있는지 투명하게
  • 이슈트래커 (등록 ➜ 할당 ➜ 진행 ➜ 완료)
  • 마일스톤과 이슈
  • 작업 기록 검색

27 of 45

두 종류 고객

  • 문자 그대로 서비스를 이용하는 고객
  • 개발팀의 또 하나의 고객은 현업 담당자
  • 현업의 업무 병목 해소
  • jupyter : SQL + Excel

28 of 45

모니터링

  • 트래픽, 매출 추이
  • 시간마다 메일링
  • 메트릭(CPU, RAM, Network, IO) 모니터링
  • GA(웹), Firebase(앱)
  • Elastic Stack(로그)
  • Sentry(Exception)

29 of 45

장애 대응

  • 한 번은 일어날 수 있지만, 같은 장애 두 번은 안 된다.
  • 장애 리포트
  • 모니터링 중요
  • 임계점 설정해서 SMS 알림
  • CloudWatch
  • Elastic Stack

30 of 45

품질

  • 테스트 케이스
  • 테스트 자동화할 만한 것 Function
  • 테스트하기 힘든 것 UI, DB, Network
  • 변경을 위한 보험, 안전장치
  • 테스트 시간은 짧게 유지해야 함
  • 버그도 테스트 케이스에 추가

31 of 45

32 of 45

비즈니스와 기술

  • 기술력이 비즈니스보다 앞선 경우
  • 기술력이 비즈니스보다 쳐진 경우
  • 자동화의 효과

33 of 45

기술력이 비즈니스보다 앞선 경우

  • 만드는 기술과 파는 기술은 다르다.
  • 자칫 오버 엔지니어링이 될 수 있음
  • 현재 비즈니스의 방향을 제시하는 영역
  • 두 가지의 균형이 맞는 것이 중요

34 of 45

기술력이 비즈니스보다 쳐진 경우

  • 컴퓨터가 없던 시절에도 상거래는 이루어 짐
  • 낮은 품질의 소프트웨어는 고객의 불만
  • 기술력 보강이 필수이지만, 서비스 재화가 중요
  • 따릉이 사례

35 of 45

자동화의 효과

  • 적은 인력으로 많은 일을 정확하게 수행
  • 자동화 과정에는 데이터 검증 포함
  • 수작업 배포를 자동화한 것 CI/CD

36 of 45

데이터 기반 의사 결정

  • 회사 모든 멤버가 현재 매출 추이를 알 수 있도록
  • 데이터에 손쉬운 접근
  • 데이터 시각화 도구
  • GA
  • Tableau
  • Jupyter

37 of 45

AARRR Funnel

38 of 45

보안

  • 보안은 시스템 보안과 정책적 보안
  • 보안과 자유도의 밸런싱
  • 시스템 보안 : VPN, Logging, ACL
  • 정책적 보안 : 보안 서약서, 개인 정보 취급 절차
  • 매달 캠페인 필요

39 of 45

개발팀 다루는 법

  • 요구는 명확하게, 또는 요구르트 아줌마에게
  • 이슈트래커에 올려주세요. 우선 순위는 매출이 정합니다.
  • 중간 점검 꼭 해주세요.
  • 시스템 개발 완료시 예상되는 효과도 함께 얘기해 주세요.
  • 맛있는 것 완전 좋아합니다.

40 of 45

푸시와 트래픽

  • 동시 접속 20배? 시스템은? 물류 한계는?
  • 푸시 분산 발송
  • A/B 테스트 - 10% 10% 80%

41 of 45

쿠폰과 매출 그리고 이익

  • 커머스의 핵심은 상품과 가격 그리고 배송
  • 쿠폰 발행에 비례한 매출 증가
  • 마진율

42 of 45

업계 용어

  • 상품, 메인페이지, 카테고리, 매장, 상세, 장바구니, 주문, 결제, 간편결제, 가상계좌, 무통장입금, 배송, 기획전, 이벤트, 구매확정, 쿠폰, 적립금, 포인트, 사은품, GNB, 마이페이지, 구매이력, 검색, 추천상품, 햄버거 메뉴, 찜하기, 품절, 입고알림, 비회원 결제, 배송주소록, 배송요청사항, 회원등급, 배송추적, 상품 옵션, 패키지상품, 합포장, 정률할인, 정액할인, 취소, 반품, 환불, 부분환불, CS, 물류창고, 재고, 발주, 입고, 적치, 바코드, 까대기, 푸시알림, ...

43 of 45

배송

  • 자체 배송
  • 택배 배송
  • 업체 배송
  • 새벽 배송
  • 단건 배송

44 of 45

지켜 볼 기술

45 of 45

감사합니다

허광남 kenu@okky.kr