Netplace Marketing Service
2024Screens

Overview
Built to establish an online storefront for a regional marketing service.
Role & Tech Stack
React 18, NestJS, MySQL, Docker Compose
Achievement 01
Turning a Manual Application Flow into a 24-Hour Online Service
- Background & Cause
- Marketing-product information and applications were handled through staff inquiries and manual work. That risked omissions and duplicates while requiring operators to re-enter application details. Customers could not easily share processing status, and applications were limited to business hours.
- Decision & Rationale
- I separated the customer interface and business API into React and NestJS to create independent development and deployment boundaries. The admin channel reuses the same API and data contract. This keeps interface changes from directly changing business rules. It also prevents duplicate application-data implementations across the customer and admin channels.
- Outcome
- Customers can sign up, log in, browse products, and apply for services regardless of time. Application information is stored consistently, reducing omissions, duplicates, and repeated operator entry. Both channels share the same application data.
- Retrospective
- Putting a process online does not end with the interface. Define the data structure that prevents omissions and duplicates first, then connect application and operational processing in one flow.
Achievement 02
Separating Customer and Admin Authorization Boundaries with JWT
- Background & Cause
- Customers and administrators use the same API. Checking only whether someone is logged in cannot safely distinguish internal operational functions and the scope of data access.
- Decision & Rationale
- I separated customer and admin authentication paths and applied role-based access control in the API. JWTs are delivered in HttpOnly cookies, preventing direct token access by browser scripts. Both channels still use the same authentication contract.
- Outcome
- Customers and administrators reuse the same business API while being limited to functions allowed for their respective roles.
- Retrospective
- Authentication design should begin with authorization and data-access boundaries for each user type, not merely successful login.