jihwang.kim
SI Project

넷플레이스 마케팅 서비스 시스템

2024

개요

지역 마케팅 서비스의 온라인 창구를 구축하기 위해 진행했습니다.

역할과 기술스택

React 18, NestJS, MySQL, Docker Compose

React 18NestJSMySQLDocker Compose

성과 01

수작업 신청 흐름을 24시간 온라인 서비스로 전환

배경과 원인
마케팅 상품 안내와 신청을 담당자 문의와 수작업으로 처리해 정보 누락과 중복 위험이 있었고, 운영자는 신청 내용을 반복 입력해야 했습니다. 고객과 처리 상태를 공유하기도 어려웠으며 신청 가능 시간도 영업시간에 제한됐습니다.
고민과 선택 이유
고객 화면과 업무 API를 React와 NestJS로 분리해 독립적인 개발과 배포 경계를 만들고, 관리자 채널도 같은 API와 데이터 계약을 재사용하도록 구성했습니다. 화면 변경이 업무 규칙에 직접 영향을 주지 않고, 고객과 관리자 채널에서 신청 데이터를 중복 구현하지 않게 하기 위한 선택이었습니다.
결과
고객이 시간에 관계없이 회원가입과 로그인 후 상품을 조회하고 서비스를 신청할 수 있게 됐습니다. 신청 정보가 일관된 형식으로 저장되어 누락과 중복, 운영자의 반복 입력을 줄였고 고객과 관리자 채널이 동일한 신청 데이터를 공유하게 했습니다.
회고
온라인화는 화면을 만드는 데서 끝나지 않고, 누락과 중복을 막는 데이터 구조를 먼저 정한 뒤 고객 신청과 운영 처리를 하나의 흐름으로 연결해야 합니다.

성과 02

JWT 기반으로 고객과 관리자 권한 경계 분리

배경과 원인
고객과 관리자가 동일한 API를 사용하므로 로그인 여부만 확인해서는 내부 운영 기능과 데이터 접근 범위를 안전하게 구분할 수 없었습니다.
고민과 선택 이유
고객과 관리자 인증 경로를 분리하고 API에서 역할 기반 접근 제어를 적용했습니다. JWT는 HttpOnly 쿠키로 전달해 브라우저 스크립트가 토큰에 직접 접근하지 못하게 하면서도 두 채널이 동일한 인증 계약을 사용할 수 있게 했습니다.
결과
고객과 관리자가 같은 업무 API를 재사용하면서도 각 역할에 허용된 기능만 접근하도록 경계를 분리했습니다.
회고
인증은 로그인 성공보다 사용자 유형별 권한과 데이터 접근 경계를 먼저 설계해야 합니다.
목록으로
(c) 2026 Jihwang Kimv20261016.01
포트폴리오 PDF 다운로드