Skip to content
View ndh0408's full-sized avatar

Block or report ndh0408

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
ndh0408/README.md
Nguyễn Đức Huy — Full-Stack Software Engineer
Backend architecture, self-hosted infrastructure, and cross-platform mobile — built to run in production.
GitHub Vietnam Focus

👨‍💻 About Me

Full-Stack Software Engineer building enterprise applications, self-hosted infrastructure, and cross-platform mobile experiences. I design backends for long-lived production systems, not demos — the software I ship serves real users and is maintained over time.

I use modern AI tooling to accelerate code reviews, refactoring, documentation, and architecture exploration — while remaining responsible for every implementation and technical decision. I care about documentation, and I usually start from the business problem itself: mapping real-world processes — quotations, approval flows, permissions — into maintainable systems. I consistently prefer production-ready, usable software over throwaway prototypes.

Outside of work, I enjoy building homelab infrastructure, running community gaming servers, experimenting with Apple ecosystems through Hackintosh, and finding ways to make software more reliable and enjoyable to use.

Interested in: secure-by-default backend systems • RBAC & auditability • enterprise software • self-hosted infrastructure • production operations

Domains Technologies
Backend Engineering★★★★★TypeScript / Node.js★★★★★
Enterprise Software★★★★★PostgreSQL / Prisma★★★★☆
System Design / Architecture★★★☆☆Docker / Linux★★★★☆
DevOps & Self-hosting★★★★☆Flutter / Dart★★★★☆
Full-Stack★★★★☆React / Vite★★★☆☆

🚀 What I'm Building

  • Quotation & approval platform — an enterprise system for building, versioning, and approving quotes, used daily by a real business.
  • Phố Game Chill — a cross-play (PC + Mobile) Minecraft community server for the ~1,500-member gaming community I founded and run.
  • Discord community bots — music (Lavalink), ticket/support systems with payment integration, moderation, and party games (Werewolf, lottery), built in Python, TypeScript & Java.
  • Native iOS app — built with Swift / SwiftUI, including a full self-configured build-and-deploy pipeline.
  • Self-hosted homelab — a multi-node Proxmox + Docker + Coolify + Cloudflare Tunnel stack running my services end to end.

🛠️ Tech Stack

Languages

TypeScript JavaScript Dart Java C# Python Swift

Backend

Node.js Express NestJS ASP.NET Core Prisma EF Core REST APIs JWT Server-Sent Events

Databases

PostgreSQL Redis

Frontend

React Vite HTML5 CSS3

Mobile

Flutter SwiftUI

DevOps & Infrastructure

Docker Docker Compose Proxmox Linux Bash Nginx Cloudflare Coolify

🏗️ Architecture Expertise

I structure backends as a layered, modular architecture and apply Clean Architecture principles where they earn their keep: HTTP concerns stay at the route layer, business rules live in services, and data access goes through Prisma. This keeps enterprise logic — multi-stage approval workflows, RBAC / role-permission models, and the full quotation lifecycle (draft → version → review → approve/reject) — testable and independent of transport and storage.

flowchart LR
    A[Client] --> B[Express Routes]
    B --> C[Service Layer]
    C --> D[Prisma Client]
    D --> E[(PostgreSQL)]

    B -. Zod validation .-> B
    C -. RBAC / Approval workflow .-> C
    C -. Background jobs / SSE .-> C
Loading

A rarer, high-value specialty I've built out is dynamic Excel automation via raw OOXML — stitching multiple spreadsheet templates together at the XML level to produce complex, brand-accurate exports that off-the-shelf libraries can't express. Combined with server-side PDF generation, this powers the document engine at the heart of the quotation platform.

📈 GitHub Activity

GitHub activity — 926 contributions and 911 commits in the last 12 months

🏆 Featured Projects

Every project below is public — click through and read the code.

Quản Lý Báo Giá · TypeScript

Production quotation platform, used every working day by two companies. Express + Prisma 7 + PostgreSQL, 5-role RBAC enforced server-side, SSE live totals, BullMQ workers, Helm chart with a NetworkPolicy.

The interesting part: Excel output had to be byte-for-byte the company's own template, so xlsxStitcher.ts splices rows into the template's sheet XML and repacks the zip — rewriting shared strings, merge ranges and dimension refs — instead of generating a workbook from scratch. The browser grid does Excel formulas, RFC-4180 paste and IME-safe editing.

358 commits · 28 models · 141 endpoints · ~22k LOC · 30 test files

LUMA · Java Flutter React

Event ticketing & management platform — Spring Boot 3 / Java 21 API behind three clients: a Flutter attendee app, and React organiser + admin consoles. Interactive seat maps, ticket transfer, coupons, Stripe payouts with a commission ledger, WebSocket event chat, FCM push, Flyway migrations.

University capstone, team of 3 — I authored 106 of 140 commits across all three surfaces.

452 endpoints · 94 JPA entities · 75 controllers · 42 Flutter screens

LifeOS AI · TypeScript

AI-first personal life OS. One input box: type a sentence, a parser decides whether it's an expense / task / meal / sleep / mood and files it, with atomic undo. Bare React Native 0.74 (not Expo) + NestJS 10 + Prisma monorepo.

Per-user OpenAI keys are encrypted AES-256-GCM at rest and only ever decrypted in memory; rotating refresh tokens with theft detection; vi/en parity throughout. Secret generation, rotation and audit are documented in docs/SECRETS.md.

119 commits · Maestro e2e · BullMQ · i18n parity

Hôm Nay Ăn Gì? · Flutter NestJS

AI food-decision app for Vietnam over 14,319 real restaurants scraped from OpenStreetMap Overpass across 63 provinces, normalised to 62 provinces, queried through PostGIS. Dishes carry properly-licensed images from Wikidata/Wikimedia.

One pipeline, two deploy targets: GitHub Actions SSHes over a private tailnet to a Linux box for docker-compose and to a macOS machine that signs the iOS build with Fastlane. Nothing is port-exposed — public traffic goes through Cloudflare Tunnel.

~30 screens on a live API · PostGIS · Redis · Mapbox

SKCheckin · C#

QR check-in system for film screening events. ASP.NET Core 8 + EF Core + PostgreSQL + Redis, deployed by Docker or NSSM. Config is OVERRIDE_VIA_ENVIRONMENT_VARIABLE by default — nothing runs on a committed default.

Ships with the parts people skip: a database guide, a deploy guide, an operations runbook, a security audit, and a secret-rotation playbook.

ASP.NET Core · EF Core · Serilog · perf tests

Vietnamese-history RPG Minecraft server — 14 historical chapters from Văn Lang to 1975, as two custom Paper plugins (71 Java files) plus BetonQuest quest content and ~400 tuned plugin configs. Java + Bedrock crossplay via Geyser.

Ships its own operations layer: systemd units, Prometheus alerts, offsite backup with verification, and MikroTik router rules for DDoS mitigation.

Paper API · Docker · Prometheus · crossplay

Also public: Hackintosh-Y9000P — OpenCore 1.0.7 EFI for a Lenovo Legion Y9000P (i9-14900HX): ACPI/DSDT patching, device-property injection and hardware bring-up notes.

Private repositories (available on request): a Discord community bot stack (TypeScript + Lavalink + Redis + Postgres, with a five-layer self-healing watchdog for voice-node recovery), a Flutter + Fastify ambient-presence app, an English-learning app, and an internal document-conversion tool for accountants with remote versioning.

🎯 2026 Roadmap

  • Native iOS app (Swift/SwiftUI)
  • Dockerize all self-hosted services
  • CI/CD pipelines (GitHub Actions) — lint/typecheck/test/coverage/audit gates on quanly-baogia; hnag runs five workflows including SSH deploy and a Fastlane iOS build on a remote macOS host
  • Kubernetes — Helm chart with ingress + NetworkPolicy for the quotation platform; Argo Rollouts canary manifests with Prometheus auto-rollback for HNAG
  • Migrate a production service off docker-compose onto a real cluster
  • Microservices architecture
  • Deeper AI integration

🤝 Contact

Email GitHub LinkedIn

Popular repositories Loading

  1. quanly-baogia quanly-baogia Public

    Production quotation platform for two Vietnamese companies. TypeScript/Express + Prisma 7 + PostgreSQL, 141 endpoints, 5-role RBAC enforced server-side, SSE live totals, and an Excel exporter that …

    TypeScript 1

  2. luma-event-platform luma-event-platform Public

    LUMA — event ticketing & management platform. Spring Boot 3 / Java 21 API (452 endpoints, 94 JPA entities) + Flutter attendee app + React organiser/admin console. Seat maps, Stripe payouts, WebSock…

    Java

  3. ai-personal-life-planner ai-personal-life-planner Public

    LifeOS AI — AI-first personal life OS. Bare React Native 0.74 + NestJS 10 + Prisma/Postgres monorepo. Per-user OpenAI key encrypted AES-256-GCM at rest, rotating refresh tokens, vi/en parity.

    TypeScript

  4. sk-checkin sk-checkin Public

    SKCheckin — QR check-in system for film screening events. ASP.NET Core 8 + EF Core + PostgreSQL, Redis-backed, Docker + NSSM deploy, with operations/runbook docs and a secret-rotation playbook.

    C#

  5. realmforge-vn realmforge-vn Public

    RealmForge VN — Vietnamese-history RPG Minecraft server. Two custom Paper plugins (71 Java files), 14 historical chapters of BetonQuest content, ~400 tuned plugin configs, Java+Bedrock crossplay vi…

    Java

  6. Hackintosh-Y9000P Hackintosh-Y9000P Public

    macOS Sequoia Hackintosh for Lenovo Legion Y9000P IRX9 (i9-14900HX) - OpenCore 1.0.7 EFI + comprehensive docs

    ASL