요구사항 정리부터 출시 검증까지 연결하는 6년차 Full Stack Developer
박상우 | Software Engineer

- 초기 제품에서 화면·API·데이터·배포·운영 기록을 연결해 약 4년에 걸쳐 웹 서비스, WebView 앱 10여 개, 백오피스, 결제/정산을 출시
- 수동 배포와 점검 절차를 스크립트·manifest·Git 이력 기반의 재현 가능한 흐름으로 전환하고, 인프라 재설계로 월 고정비를 약 80% 감축
- AI-assisted workflow를 코드 생성보다 영향 범위 분석, 실패 지점 분리, 테스트와 기록 검증 중심으로 운용
소개
요구사항을 출시 가능한 제품 범위로 정리하고, 화면·API·데이터·배포까지 이어지는 흐름을 함께 다뤄 온 6년차 Full Stack Developer입니다.
스타트업 제품과 XR 콘텐츠 운영 도구를 만들며 결제/정산, 외부 API, WebView 앱, 운영 자동화처럼 제품이 실제로 운영되는 과정까지 연결해 왔습니다.
AI 페어링으로 구현 초안과 영향 범위 조사, 리팩터링 후보를 빠르게 만들되, 결과는 코드·로그·테스트·문서·Git 이력으로 다시 검증하는 흐름을 유지합니다.
경력
하이퍼클라우드
2025.10 ~ 현재XR 팀 · S/W Engineer (Full Stack)
- Unity 프로젝트 재배포에 의존하던 XR 콘텐츠 운영 흐름을 웹 기반 운영 도구로 옮겨, 운영자가 POI, 3D asset, 프로젝트 메타데이터를 직접 수정할 수 있게 구현했습니다.
- 고객사와 프로젝트 단위로 콘텐츠와 운영 권한을 분리 관리할 수 있도록 데이터, API, 관리 화면의 경계를 설계했습니다.
- B2G 운영 프로젝트에서 수동 빌드·배포·점검 절차를 단계별로 분리해 변경 이력을 Git·manifest로 추적 가능하게 만들고, 보안 감사 대응을 같은 흐름 위에서 진행했습니다.
- 인프라 운영 구조를 재설계해 월 고정비를 약 150만원에서 30만원 수준으로 낮추고, 배포 변경 이력을 추적 가능한 운영 흐름으로 정리했습니다.
- 축소 전 백업·복구·롤백 경로를 사전 점검해 비용 절감이 안정성과 운영 경로를 악화시키지 않도록 확인했습니다.
인썸니아
2020.01 ~ 2024.06 (4년 6개월)Full Stack Developer / 수석
스타트업 전문 웹 에이전시
- 인턴으로 합류한 뒤 수석까지 역할이 확대되며, C2C 거래·SNS·예약·투표 플랫폼과 운영 어드민까지 초기 제품의 릴리스부터 약 4년에 걸친 장기 유지보수까지 같은 코드베이스에서 이어 맡았습니다.
- Android, iOS WebView 기반 앱 10여 개의 출시, 리브랜딩, 스토어 심사 대응을 진행하고 사내 세미나와 코드 리뷰로 프로젝트 지식을 공유했습니다.
- 포트원, Toss Payments, 인앱 결제의 결제 시점, 검증, 정산 예외를 제품별 정책에 맞는 상태 흐름으로 구현했습니다.
- FCM, 알림톡, SNS 로그인, 지도, 오퍼월 광고 등 외부 API를 운영 흐름에 연결하면서, 장애·정산 실패 경로와 스토어 심사 대응을 재시도·회수 절차로 분리했습니다.
인썸니아
2019.09 ~ 2019.12 (4개월)대학교 4학년 2학기 ICT 인턴십 / 인턴
- Ruby on Rails 기반 웹 화면, API, 데이터 흐름 구현
- 초기 스타트업 웹/웹앱 서비스의 기능 개발과 유지보수 참여
기술
웹 개발
React, Next.js, Ruby on Rails, Django, NestJS
모바일
WebView 앱, 스토어 심사 대응
인프라 및 배포
AWS, Vercel, Kubernetes, Terraform
AI-assisted 개발
AI Pairing, Impact Analysis, Verification Loop
작업 방식
재실행 가능한 운영 절차
반복되는 운영 작업을 단계, 의존성, 실패 확인 지점으로 나누고 자동화할 부분과 사람이 판단해야 할 부분을 분리해 다시 실행 가능한 기준으로 남깁니다.
- 콘솔, SSH, 수동 체크처럼 흩어진 절차를 입력값, 실행 순서, 검증 기준으로 나누어 같은 순서로 다시 실행할 수 있게 정리합니다.
- 반복 명령은 script로 옮기고, 승인·점검·예외 판단은 checklist와 운영 문서로 남겨 자동화 범위와 수동 확인 범위를 구분합니다.
- 배포, 점검, 감사 대응처럼 여러 단계가 연결된 작업은 실패 지점과 재시도 기준을 함께 기록합니다.
변경 이력과 rollback 기준
운영 환경을 바꾸기 전 실제 상태와 선언된 설정을 먼저 대조하고, 영향 범위와 복구 경로를 설명할 수 있는 단위로 변경을 반영합니다.
- 실제 리소스 상태, manifest, 배포 이력을 먼저 비교해 수동 변경과 선언형 관리 대상을 분리합니다.
- 변경 단위를 작게 나누고 각 단위마다 관리 주체, 영향 범위, rollback 기준을 기록합니다.
- 비용 절감이나 리소스 정리는 안정성, 보안, 운영 경로가 악화되지 않는지 확인한 뒤 적용합니다.
AI-assisted 검증 루프
AI-assisted 작업은 초안 생성보다 검증 루프에 무게를 둡니다. 조사, 구현, 리팩터링 결과를 현재 코드, 로그, 테스트, 문서, Git 이력과 다시 대조합니다.
- AI로 구현 초안, 영향 범위 조사, 리팩터링 후보를 빠르게 만들되 그대로 반영하지 않고 현재 파일과 실행 결과로 확인합니다.
- 결정 이유, 파일 경로, 검증 명령, 남은 위험을 작업 기록으로 남겨 다음 세션이 같은 맥락에서 다시 검토할 수 있게 구성합니다.
- 과거 기록은 기준선으로만 사용하고, 적용 전 현재 상태와 다시 비교해 오래된 판단이 그대로 반영되지 않도록 확인합니다.
프로젝트
교보DTS CSPM 서비스
2024.12 ~ 2025.01AWS 계정의 리소스와 설정 취약점을 점검하는 CSPM 웹 서비스
Next.js / Spring / JPA / AWS / Docker
기술 리드
- 하드코딩된 AWS SDK 매핑에 묶여 있던 기존 CSPM 구조를 AWS 계정 등록, 리소스 수집, 취약점 검사, 보고서 생성 도메인으로 다시 나눠 검사 범위를 확장 가능하게 재설계
- AWS CLI를 서버 자식 프로세스로 실행하는 수집 방식을 POC로 검증하고, 명령/인자 화이트리스트로 실행 경계를 제한해 앱 코드의 AWS SDK 하드코딩 의존을 줄임
- 로컬 빌드 후 FTP 업로드로 흩어져 있던 배포를 Docker 기반 GitLab Runner와 CI/CD 파이프라인으로 옮겨 빌드 환경과 배포 변경 이력을 고정
배낭버스
2022.06 ~ 2024.06전세버스·통근버스 견적, 예약, 정산을 다루는 중개 플랫폼
React / NestJS / TypeORM / AWS / WebView 앱
풀스택 메인 개발자
- 100페이지 이상의 사용자/어드민 화면을 리브랜딩하면서 예약·결제 흐름을 깨지 않도록 화면 단위 작업 범위와 회귀 확인 지점을 분리
- 기사 휴무일, 출발 가능 지역, 예약 검색 조건을 제품 정책 기준으로 정리해 예약 가능 여부와 검색 결과 기준을 코드와 어드민에 일관되게 반영
- 예약 상태 전이를 푸시알림, 알림톡, 문자 발송과 연결해 운영자가 커뮤니케이션 이력과 다음 액션을 함께 추적할 수 있게 구성
- 승객 결제 시점과 기사·버스회사 확정 시점이 분리되는 도메인 제약에 맞춰 Toss Payments 자동결제, 예약 확정, 정산 예외를 별도 단계로 설계
- 결제 실패, 확정 거절, 환불, 수수료 정산을 각각 다른 상태로 다뤄 운영자가 사례별로 처리할 수 있게 구성
타바 TABA
2020.09 ~ 2024.04위치 기반 바이크·자전거 중고거래와 정비센터 탐색 서비스
Rails 6 / ActionCable / AWS / WebView 앱
풀스택 메인 개발자
- 위치 기반 매물 노출, C2C 거래, 정비센터 탐색을 사용자 화면, 거래/위치 API, ActiveAdmin 운영도구로 나눠 약 3년 7개월간 장기 유지보수
- 위치정보, 개인정보, 전자상거래/분쟁 대응 약관 변경이 매물 노출 범위와 운영자 화면에 함께 반영되도록 관리
- ActionCable 채팅을 거래·매물 상태 전이와 연결하고, 오프라인 도달은 FCM 푸시와 SMS 인증으로 보강해 거래 커뮤니케이션 경로를 분리
- 정비센터 데이터를 크롤링 API로 수집하고 ActiveAdmin에서 검수·정정하는 흐름으로 분리해 사용자 입력 부담과 기준 데이터 오기재를 줄임
리뷰노트
2023.04 ~ 2023.07캠페인 신청, 리뷰 제출, 정산을 다루는 체험단 마케팅 플랫폼
Next.js / Prisma / Supabase / Vercel
풀스택 메인 개발자
- Vercel 비용 증가 원인을 중복 요청, 무거운 Relation 조회, 비동기 작업 병목으로 나눠 리팩토링하고 기존 플랜 유지가 가능한 수준으로 서버 부하를 축소
- 외래키와 검색용 multi column 인덱스를 추가하고 무거운 Relation 조회를 분리해 쿼리 비용을 축소
- Background Job과 batch update로 반복 작업을 비동기화하고 React Query 캐시 옵션으로 중복 요청을 제거
- 단순 조회 API는 Supabase 직접 조회로 분리해 서버 부하를 낮추고 기존 플랜 유지에 필요한 여유를 확보
- 분 단위 cron으로 캠페인 상태를 전환하는 환경에서 정산 포인트 오류를 데이터 흐름과 트리거 시점 기준으로 추적하고, 코드 수정 범위와 기존 데이터 보정 범위를 분리
텐아시아 아티스트 탑텐
2022.07 ~ 2022.10아티스트 투표와 오퍼월 리워드를 운영하는 팬덤 투표 플랫폼
Rails / AWS / WebView 앱
풀스택 메인 개발자
- 연말 투표 마감 트래픽에 대비해 Rails Multiple Database와 read replica를 도입하고, GET API 안의 쓰기 동작을 분리해 replica 충돌을 정리
- 일회성 부하에 맞춰 primary scale-up 중심 대응 대신 read replica 기반 읽기 분산을 선택하고, 분리 대상 API와 잔존 쓰기 경로를 운영 기준으로 기록
- 리워드 광고 부정 수급을 지급 시점에서 막기 위해 동일 보상 중복 차단, 영상 5회당 1표 제한, HMAC 서명 검증을 콜백 처리에 적용
- 오퍼월 콜백은 벤더가 제공한 transaction_id와 HMAC-MD5 명세에 맞춰 검증하고, 비정상 수급분은 어드민과 회수 작업으로 되돌릴 수 있게 구성
- 주요 구현 책임자로 요구사항 정리, 웹 GAM 보상형 광고와 모바일 애디스콥 SDK 통합, 어드민 운영 기능, 배포까지 연결
피픽 Pipick
2021.04 ~ 2022.07명품 중고거래와 SNS형 탐색을 결합한 모바일 WebView 서비스
React / Django REST framework / AWS / WebView 앱
풀스택 메인 개발자
- 명품 중고거래의 분쟁 비용을 줄이기 위해 주문 상태를 분리하고, 결제·구매 확정·정산이 같은 트랜잭션에서 자동 진행되지 않게 설계
- 아임포트 결제 금액을 서버 재계산값과 대조하고, 불일치 시 cancel, 주문번호 재발급, OrderCancel 기록을 남겨 추적 가능하게 처리
- FCM 푸시, 팔로워 브로드캐스트, 외부 배송 추적을 Celery 작업과 조회 시점 갱신으로 분리해 결제·정산 트랜잭션이 외부 장애에 끌려가지 않게 구성
- React 클라이언트, Django REST/Channels 서버, AWS CDK 인프라를 함께 유지보수하며 고객사 커뮤니케이션까지 연결
학력
세종대학교
디지털콘텐츠학과(소프트웨어학과) 학사 졸업
2018.03 ~ 2020.02 / 편입
호서대학교
기계공학과 로봇공학전공
2013.03 ~ 2018.02
기타
- ASAC 해커톤 금상2024.12.06
- 제5회 세종대학교 SW 경시대회 장려상2018.12.14
자격증
- 정보처리기사2019. 08
- 정보처리기능사2016. 06