담당 역할 및 기술 스택
•
커피어때 KIOSK 제품의 전체 소프트웨어 개발 포지션을 담당함.
•
Front-End 기술 스택
◦
Preact
◦
PNPM Workspace + Turborepo
◦
Electron
◦
Vite
◦
Tailwind CSS
◦
Mantine UI
◦
Socket.io
◦
AWS S3 + AWS Cloudfront Static Serving
◦
SWR
◦
React-Hook-Form
◦
Zod
◦
Day.js
•
Back-End 기술 스택
◦
Nest.js
◦
Maria DB
◦
TypeORM
◦
Redis
◦
Socket.io (with Redis Pub/Sub adaptor)
◦
AWS Lightsail
◦
PM2
주요 개발사항
•
커피어때 KIOSK Electron Desktop / Backend 신규개발 (2024.04.29 ~ 2024.05.08)
◦
커피어때 KIOSK 신규 개발을 위한 Frontend UI와 Desktop 패키징, 그리고 Backend API 개발을 진행함.
▪
•
이를 통해 커피어때 점주관리서비스로 KIOSK를 로그아웃/재부팅/종료/점검모드활성 등을 제어할 수 있음.
▪
점포별 KIOSK 등록/수정/삭제를 위한 계정계 API와 QR 기반 KIOSK 로그인 기능 UI 및 API 개발
•
일반적으로 KIOSK와 테블릿 오더 등과 같은 제품에서 많이 사용되는 관리페이지 히든 버튼을 보안을 위해 넣지 않음. 대신 QR을 통해 점주의 스마트폰으로 KIOSK를 로그인시키고, 커피어때 점주관리서비스를 통해 점주의 스마트폰으로 KIOSK를 관리할 수 있도록 함.
▪
점포별 KIOSK 메뉴 등록/수정/삭제를 위한 UI 및 API 개발
•
SPC Secta9ine의 O2POS 등록 상품 및 키오스크 설정과 연동되도록 하며, 자체 개발한 “electron-proxied-axios” 라이브러리를 통해 O2POS API를 호출하도록 함(CORS 문제를 우회하기 위함.)
•
Axios에 Electron IPC를 랩핑하여 Axios의 DX를 유지하며 Electron 환경에서 CORS를 우회할 수 있는 electron-proxied-axios 라이브러리를 개발함.
▪
점포별 쿠폰 조회 및 사용을 UI 및 API 개발
•
쿠폰 생성 시, 이용 가능 매장 범위를 전역or점포 유형으로 선택할 수 있고, 사용 가능한 메뉴를 전체or특정메뉴or특정카테고리로 선택할 수 있도록 함.
▪
점포별 KIOSK 내 주문을 위한 UI 및 API 개발
•
매일 0시에 초기화되는 영수증 번호 생성 API을 개발하여, SPC Secta9ine O2POS 내 신용 승인 내역과 동기화될 수 있도록 함.
▪
HANASIS K-220x KIOSK 제품의 영수증 프린터 연동 기능 개발
•
사용자 인터렉션이 필요한 Web Serial API 우회를 위해 Electron IPC를 통하여 electron main 런타임에서 영수증 프린터와 시리얼 통신할 수 있도록 함.
▪
SPC Secta9ine의 O2Check IC 카드 단말기에 대한 승용 결제 승인 연동 기능 개발
▪
불필요한 인프라 및 관리 비용을 절감하기 위해 별도 프레임워크(ex: Next.js) 없이 Preact로 개발하여 AWS S3 + AWS Cloudfront를 통해 정적 서빙하도록 함.
◦
특이사항:
▪
10일만에 KIOSK에 대한 모든 기능이 개발됨.
•
커피어때 KIOSK Electron Desktop / Backend 유지관리 (2024.05.08 ~ 2024.10.03)
◦
커피어때 신규점포에 대한 신규 KIOSK 등록 및 현장 설치 수행
◦
AS/CS 및 현장대응 팀을 위한 원격기술지원 수행