Skip to content
Projects

Backend Engineer

Virtual Golf Booking System

Designed a reservation workflow for simulator sessions, payment state, and schedule availability.

Updated July 6, 2026
NestJSPostgreSQLRedisStripeAWS

Overview

A reference design I built for a booking backend that runs indoor golf simulator sessions — coordinating customer reservations, availability windows, payment state, and last-minute schedule changes.

Role

I owned the reservation state machine, the API workflows, payment event handling, and the safeguards that stop two customers from booking the same slot.

Problem

Availability shifts the moment someone books, cancels, or reschedules. The backend has to rule out overlapping reservations while keeping payment confirmation and schedule state legible to the staff tools that depend on them.

Solution

PostgreSQL transactions guard reservation state, Redis holds short-lived availability locks, and Stripe webhooks confirm payment. Explicit reservation statuses make every transition visible, so customer actions and staff actions read from one shared state model.

Outcome

Clear workflow boundaries, conflict-resistant booking, and payment-state handling you can test without coupling UI to Stripe's details. As a reference design, it demonstrates the state model rather than a live booking history.

Related Projects

Maintained and extended a hybrid AWS e-commerce backend spanning Lambda, API Gateway, DynamoDB, EC2, and Aurora.

Node.jsAWS LambdaAPI GatewayDynamoDBAuroraSQSSNSEventBridge

Software Engineer

Game Publishing Platform

Designed distributed backend services for a game publishing platform serving 200K+ monthly active users with real-time, high-concurrency workloads.

FastifyPostgreSQLRedisAWS LambdaAPI GatewayS3GitLab CI/CD