Jena Chang
WorkWritingContact

© 2026 Jena Chang. Built with sea shells.

Back to projects
Web Application

Resumate

Role

Full-Stack Engineer & Designer

Timeline

June 2026 - Present

Status

live

Tech Stack

ReactNode.jsExpressPostgreSQLDrizzle ORMStripe APIClaude API

Overview & Challenge

Resumate is a full-stack SaaS application that tailors resumes and cover letters for job descriptions using Claude Sonnet 4.6. Features include dynamic document editing, a custom state-machine JSON parser to repair LLM outputs, and Stripe subscription billing.

To guarantee a zero-failure rate in the AI tailoring pipeline, I engineered a custom backend state-machine parser to dynamically sanitize, repair, and extract valid JSON payloads from LLM outputs. Additionally, to address strict single-page print constraints, I implemented a custom layout engine with dynamic asset-scaling controls to balance aesthetics and content density. This combined solution ensured both extreme data pipeline reliability and layout consistency under strict visual constraints.

Launch Live Demo
Source Repository
Resumate dashboard mockup

Prototype Showcase

Resumate showcase gallery slide 1
Resumate showcase gallery slide 2
Resumate showcase gallery slide 3
System Architecture

How it works under the hood

A React SPA communicating with an Express.js backend. Powered by PostgreSQL and Drizzle ORM, with Claude AI API calls routed through a custom state-machine JSON parser to ensure data reliability. Stripe SDK manages subscriptions.

By integrating raw-body webhook signature validation and utilizing stateless JWT-based authentication, the platform ensures secure payment verification and low-latency session management.

Resumate system design diagram