Print-On-Demand 서비스 위드굿즈의 개발을 담당했습니다.
위드굿즈(Withgoods)는 사용자가 이미지를 업로드하여 굿즈(제품)를 제작/판매할 수 있는 온-디맨드(On-Demand) 굿즈 제작 플랫폼입니다.
저는 위드굿즈의 첫번째 버전 릴리즈 이후 약 3개월 후 위드굿즈 팀에 합류하였으며 풀스택(full-stack) 개발자로서 신규 기능 개발 및 유지 보수의 역할을 맡았습니다.
약 10명의 구성원 중 개발자는 저를 포함해 2인이었고, 기획, 디자인, 제작 파트와 끊임없이 소통하며 신규 기능을 개발하고 비즈니스 요구사항에 맞춘 인터페이스, API 개발 및 AWS Dev-ops 태스크를 담당했습니다.
주요 사항
1. 자동 생산 이미지 처리
사내 생산 담당자/디자이너가 포토샵 등의 프로그램으로 수동 처리하던 생산 이미지를 이미지 프로세싱을 통해 자동화했습니다. 주문 상품 당 최소 3분에서 최대 10분까지 걸리던 작업을 최소 5초에서 최대 40초로 줄여, 최대 90% 이상의 리드 타임을 줄일 수 있었습니다.
2. 종합 주문/생산 관리 시스템
기존 주문 내역 테이블로는 생산 관리자가 주문 상태, 생산 플로우, 배송 정보 등을 한 눈에 관리하는데 어려움이 있었으며 주문이 많아짐에 따라 오배송, 송장번호 오기입, 생산 할당량 미달 등의 문제가 발생하여 종합적으로 생산 관리를 진행할 수 있는 시스템을 만들었습니다.
생산 관리자는 한 눈에 전체 주문 관리, 주문 상태 변화, 제작 시작, 제작 완료, 배송 시작 등을 관리할 수 있으며 배송 상태 변경(제작 시작, 배송 시작 등)에 따라 주문자에게 카카오톡/이메일 알림 등을 클릭 한번으로 전송할 수 있습니다.
생산 관리자는 한 눈에 전체 주문 관리, 주문 상태 변화, 제작 시작, 제작 완료, 배송 시작 등을 관리할 수 있으며 배송 상태 변경(제작 시작, 배송 시작 등)에 따라 주문자에게 카카오톡/이메일 알림 등을 클릭 한번으로 전송할 수 있습니다.
3. 굿즈 편집/ 이미지 업로드 기능 강화
위드굿즈 사용자가 늘어남에 따라 다양한 기능 개선 요구사항이 있었는데 그 중 가장 많은 요구사항은 복수 이미지 추가와 쉬운 이미지 업로드였습니다.
데이터 구조 상의 문제로 개선할 수 없던 사항이라 데이터 구조 변경 migration을 먼저 배포하고 복수의 이미지를 허용하는 UI/UX 및 Backend API를 작성하여 사용자는 추가 이미지를 통해 다양하게 굿즈 편집이 가능합니다. 이미지 업로드는 모달 및 drag and drop으로 가능합니다.
또한 작은 이미지의 업로드를 허용하되, 각 제품이 필요로 하는 해상도와 사용자가 업로드한 이미지의 해상도의 관계에 따라 이미지의 최대 사이즈를 동적으로 제한하는 로직을 작성하였습니다.
기타 기여 사항
- Image Processing (Sharp.js)
- E-commerce 기능 개발/유지보수(결제 연동, 장바구니, 상품 조회 등)
- Vue component 의 제거 문제로 인한 메모리 누수 문제 해결
- 메모리, 데이터 용량 문제로 인한 모바일 환경의 경우 Server-side Canvas 구현을 통한 최적화
- 디자이너 UI/UX 구현
- 마케터 요청에 따른 SQL 구문 작성 및 데이터 추출
- 위드굿즈 샵 기능, 필터 강화
- Back-end 로직 일부 TDD를 통한 개발
- Admin 단에서의 Blog 기능 도입 및 강화 (WYSIWYG)
- 제품 판매자 정산 기능
- 기타 사이트 전반 풀스택 개발 및 유지보수
Tech Stack
- Front-end (Nuxt.js, Vue.js, Vuex)
- Back-end (Node.js, Express, TypeScript, Sequelize(MySQL))
- DevOps (AWS)
자세한 사항은 제 포트폴리오에서 확인 가능합니다. (https://www.notion.so/Sungmok-Kim-Software-Engineer-f8f6b808cdfc451aa57a4b5adb8c0278)
더보기