Backend Developer · Service Builder

아이디어를 서비스로
끝까지 구현합니다.

Node.js와 MySQL을 중심으로 API, 데이터베이스, 외부 서비스 연동과 배포 환경을 구현해 왔습니다. 기능 하나가 아니라 사용자가 실제로 이용할 수 있는 서비스 전체를 완성하는 개발자를 지향합니다.

4완성 프로젝트
API외부 데이터 연동
Deploy배포·운영 경험
컴퓨터로 작업 중인 캐릭터 일러스트

기능을 넘어 서비스의 흐름을 봅니다.

사용자의 요청이 API와 데이터베이스를 거쳐 결과로 돌아오고, 배포 이후 안정적으로 운영되는 과정까지 하나의 서비스 흐름으로 이해하려 합니다.

제가 중요하게 보는 것

구현 자체뿐 아니라 왜 이 구조를 선택했는지, 변화에 어떻게 대응할지, 문제가 생겼을 때 어디서부터 확인할지를 설명할 수 있는 개발을 중요하게 생각합니다.

01아이디어를 실제 사용 가능한 서비스로 완성
02API·DB·배포를 하나의 구조로 연결
03근거와 재현을 바탕으로 문제 해결

Backend

요청 처리, JSON 응답, CRUD와 외부 API 연동

Node.jsREST APIExternal API

Database

서비스 기능을 기준으로 한 데이터 구조 설계

MySQLSchemaCRUD

Deployment

동일한 실행환경 구성과 배포 후 오류 확인

DockerComposeNginxOVHcloud

AI Integration

외부 AI와 데이터를 실제 서비스 기능으로 연결

Gemini APIPrompt JSONValidation

대표 프로젝트

완성된 화면뿐 아니라 문제 정의, 설계 판단, 구현 과정과 운영 경험을 함께 보여주는 프로젝트를 선별했습니다.

PROJECT 01 · DATA SERVICE

ER-Dodge

게임 데이터를 분석해 사용자가 다음 경기에서 취할 행동을 제안하는 웹서비스

외부 게임 데이터를 수집·정규화해 사용자 전적을 기준 통계와 비교하고 행동 중심의 분석 결과를 제공합니다. OVHcloud VPS에 Docker 기반 실행 환경을 구성하고 Nginx를 앞단에 두어 도메인으로 직접 운영하는 서비스입니다.

Node.jsOVHcloud VPSDockerNginxExternal APILive Service

담당 및 설계

외부 게임 API와 기준 데이터 수집·정규화
사용자 전적과 티어·캐릭터 통계를 비교하는 분석 로직 구현
OVHcloud VPS에 Docker 기반 Node.js 서비스 배포
Nginx 리버스 프록시와 도메인 연결을 포함한 운영 환경 구성

문제와 해결

서버리스 플랫폼 의존 구조를 직접 관리하는 VPS 환경으로 이전해 실행 환경과 배포 구성을 통제할 수 있도록 개선했습니다.
외부 기준 데이터가 일시적으로 불안정해도 서비스가 중단되지 않도록 자동 갱신, 캐시, 번들 데이터 폴백 구조를 적용했습니다.
PROJECT 02 · MEDIA TOOL

gif_lower

목표 파일 크기 이하로 GIF를 자동 압축하는 실용 웹 도구

24.8 MB9.94 MB

사용자가 원하는 용량을 입력하면 팔레트, FPS, 해상도를 단계적으로 탐색해 목표 이하 결과를 만듭니다. 각 후보를 원본에서 다시 생성하며, Docker와 Nginx로 VPS에 배포해 실제 사용할 수 있도록 운영하고 있습니다.

Node.jsFFmpegDocker ComposeNginxJob QueueLive Service

담당 및 설계

목표 용량 기반 다단계 GIF 압축 탐색 로직 구현
업로드·백그라운드 작업·진행 상태·다운로드 API 구성
동시 작업 큐, 요청 제한, 임시 파일 자동 정리 적용
Docker 컨테이너와 Nginx 리버스 프록시로 HTTPS 운영 환경 구축

문제와 해결

압축 결과를 재입력으로 사용하지 않고 모든 후보를 원본에서 생성해 누적 화질 손실을 방지했습니다.
FFmpeg 작업이 몰릴 때 서버 자원이 고갈되지 않도록 동시 처리 수와 IP별 작업 생성을 제한했습니다.
More projects키오스크와 데이터 프로젝트 2개펼쳐보기 +
PROJECT 03 · DEPLOYMENT SYSTEM

Student Progress Kiosk

학교 키오스크 PC에서 학생별 프로젝트 진행상황을 조회·관리하는 현장형 시스템

공개 키오스크와 관리자 화면이 같은 데이터베이스를 사용하도록 구성하고, 신규 PC에서도 같은 환경으로 실행할 수 있도록 애플리케이션과 DB를 컨테이너화했습니다.

Node.jsMySQLDocker ComposeNginx

담당 및 설계

학생·프로젝트·진행단계·피드백 데이터 구조 설계
조회 화면과 관리자 CRUD 기능 구현
App·DB·Nginx를 Docker Compose로 구성
포트·환경변수·볼륨·서비스 의존성 설정

문제와 해결

PC마다 설치 환경이 달라지는 문제를 줄이기 위해 앱·DB·프록시를 하나의 Compose 구성으로 통합했습니다.
DB 초기화와 서비스 시작 순서에서 발생한 오류를 헬스체크와 의존성 설정으로 정리했습니다.
PROJECT 04 · PUBLIC DATA

Assembly Tracker

국회 공개 API를 통합해 의원과 법안 활동을 탐색하는 데이터 대시보드

서로 다른 공공 API의 응답 형식을 공통 데이터 구조로 정리하고, 검색·필터·차트에서 동일한 기준을 사용할 수 있도록 가공했습니다.

JavaScriptPublic APIData NormalizationCharts

담당 및 설계

여러 공개 API를 하나의 사용자 흐름으로 통합
서버 경유 방식으로 인증키 노출 방지
의원·법안 응답을 화면용 공통 구조로 변환
검색·필터·통계 시각화 구현

문제와 해결

API마다 다른 필드명과 응답 형식을 공통 모델로 정규화해 화면 로직의 중복을 줄였습니다.
인증키를 브라우저에 노출하지 않도록 서버를 경유하는 요청 구조로 변경했습니다.

프로젝트의 구현 내용을 직접 확인해 보세요.

각 프로젝트의 저장소에서 구조, 설정 파일, 데이터 처리 방식과 배포 구성을 확인할 수 있습니다.