Projects

Projects

Projects I have worked on. The badge on each card shows its current status.

Project status: Live

Pawloop

Pawloop ONE store feature graphic — map and home screens

An app that brings together dog-walk tracking, a map of pet-friendly places, shared family care and schedules, a neighborhood community with crews, and chat. Planning, the Flutter app, the Spring Boot server and the AWS infrastructure were done solo; it was released on ONE store in September 2026 and is in operation. It was written with an AI coding agent, and about 81% of commits carry a co-author trailer.

From planning documents and 23 decision records (ADRs) to the Flutter app, the Spring server, a Terraform-managed production setup, the ONE store release (09-18) and its update (09-21) — solo, in one repository

Flutter Java 21 · Spring Boot 3.5 MySQL 8 · Flyway AWS EC2 · S3 · SES · Route 53 Terraform Caddy +5
View case study →
Project status: Pre-launch

SCOUT

SCOUT system diagram (labels in Korean): app, web and console → Spring Boot API → Kotlin engine and PostgreSQL; model inputs change only through the approval gate

A valuation service that shows a stock's fair value as a range and a distribution, using public methodology — Damodaran-style DCF and Monte Carlo simulation. It is a pre-launch solo project, written with an AI coding agent and marked as co-authored in the commits. The project is being prepared as a business, so the source code and model parameters are private.

Model inputs change only after passing an approval gate, and the LLM advisor can only submit proposals to that gate

Kotlin Spring Boot PostgreSQL Flyway Testcontainers Flutter +2
View case study →
Project status: Completed

BARO FARM

BARO FARM system diagram — gold marks my part: the gateway's auth filters, the OPA server and policy bundle service, auth-service and the seller part of seller-service; grey marks teammates' services and platform

A five-person team project (Programmers Dev Course): a farm-to-table produce marketplace built as a Spring Cloud MSA. My part was the auth boundary — the member/auth service, the gateway's authentication and authorization filters, the OPA policy and its bundle service, and propagation of user and seller status changes. It went as far as the final presentation demo (2026-01-27) with no production use, and the design is described as of that point. At the presentation the policy allowed by default, and on main today the OPA authorization filter is no longer on the routes.

Kept only coarse permissions in the token, and designed and built the path that carries suspensions, withdrawals and seller approvals into authorization data: Kafka → policy bundle service → OPA polling

Spring Cloud Gateway Spring Security · JWT OPA (Rego) Kafka Redis Resilience4j +5
View case study →
Project status: Completed · server shut down

HeatTrip

Five HeatTrip app screens — Explore, emotion input (PAD sliders), For You analysis result, recommended destinations, Diary 🏆 Award

A mobile travel service that recommends places from Korea Tourism Organization data based on emotional input (mood chips, PAD sliders, energy, sociability, trip goals) and links them to schedules and a diary. As team lead of a three-person team for the 2025 Tourism Data contest, I handled planning, the server's place collection, explore, recommendation, media and auth, the Python recommendation server, the app's recommendation and explore screens, and the deployment and ONE store release. From March to June 2026 I reworked the server on my own. As of 2026-10 the server is not running.

Gave the LLM only 95 category names instead of ~50,000 places; Spring maps the chosen labels to category codes (cat3) and selects and ranks places with its own scoring

Java 21 · Spring Boot 3.5 MySQL 8 (FULLTEXT ngram) Python · FastAPI · Pydantic OpenAI API (recommendation server) Flutter AWS S3 · CloudFront +4
View case study →
Project status: Completed

OREUM

OREUM system diagram. The React web client sits in the middle above a single Spring Boot app. On the left are the CRA dev proxy and VWorld trails, the KMA API Hub, S3 with CloudFront, Naver/Google OAuth and the Flutter app; on the right are Kakao Maps, Iamport, MySQL, MongoDB, Redis and server memory. Gold boxes and arrows mark my part, and the numbers ①–⑧ match the two flows on this page. 🏆 Award

A hiking community web service for recording and sharing routes on a map, segment by segment. A team of four built it as the graduation project of the KDT Full-stack Bootcamp (Gangnam HiMedia), and it won the graduation-project Excellence Award. I set up the initial structure of both repositories and the server configuration, and built the map (mountain search, mountain forecast, trails), curation posts, social login and S3 upload on both server and screen. The demo ran locally and the source is private.

A map-centered feature built on both server and screen: posts in MySQL, route segments (GeoJSON) in MongoDB, mountain forecasts in Redis (12 h), 153 mountain locations in server memory

Java 17 Spring Boot 3.5 Spring Security OAuth2 Client / JWT MyBatis MySQL +8
View case study →