hi, my name is
✷ open to fullstack roles · Ho Chi Minh City
about me ↴
I'm a fullstack developer who likes the unglamorous parts — the webhook that must never double-charge, the calendar that has to handle overlapping slots, the upload that resumes after the wifi drops.
Two-plus years building production apps with React / Next.js on the front and Node.js / NestJS on the back, across MongoDB and PostgreSQL. I've shipped subscription billing with Stripe Connect, real-time scheduling over Socket.io, resumable S3 uploads, and background job pipelines on BullMQ / Redis.
Most of that work happened on small, international, cross-functional teams — two to five people, sprint boards, code reviews, and a lot of API contracts agreed in writing. Currently studying IT at the University of Information Technology after an Advanced Diploma in Web Development at FPT Polytechnic (GPA 3.5/4.0).
me, mid-sprint
CURRENTLY
TGR Fusion — Fullstack Developer
Nov 2022 → Sep 2026
NFC Dental — Fullstack Developer
Nov 2024 → Mar 2026
where I learned it ↴
BACHELOR'S DEGREE
University of Information Technology · Credit Transfer Program
ADVANCED DIPLOMA
FPT Polytechnic College
things I shipped ↴
Sports creator monetization platform — fan subscriptions, commission splits and creator payouts, built end-to-end with one other developer.
Multi-tenant platform connecting clinics and labs — patients, appointments, orders, and a real-time scheduling calendar.
Content monetization platform — resumable TUS uploads to S3, automated moderation with Rekognition, delivered with an international team of five.
CASE STUDY 01 · FEB 2026 → SEP 2026
Turning fan attention into recurring income for athletes — without the finance team.
ROLE
Fullstack Developer
TIMELINE
8 months
TEAM
2 developers
CLIENT
TGR Fusion
A monorepo with a Next.js (Page Router) frontend and a NestJS backend. Customizable creator profiles, content feeds, gated premium content, and supporter engagement on one side; subscriber management, revenue tracking and analytics dashboards on the other.
Stripe handles subscription billing; my layer handles commission splits, idempotent webhook event processing and creator payout workflows. Background jobs and decoupled event handling run through BullMQ on Redis so a slow payout never blocks a request.
Secure authentication, role-based authorization and protected routes throughout — creators, supporters and admins each see only their own surface. Reusable React components and media uploads keep the UI consistent across devices.
the shape of the work ↴
3
PRODUCTION PLATFORMS SHIPPED
2+
YEARS END-TO-END DELIVERY
5
CROSS-BORDER TEAMMATES ON ZEXTER
0
DESIGNERS NEEDED TO SHIP A UI
built with ↴
Got a product that needs shipping, or a backend that needs untangling? I read every message.

the desk
Got a project, a bug that won't die, or a role you think fits? Say hi — I usually reply the same day.
↳ open to fullstack roles & freelance builds

the gear