Trương Bỉnh Thuận AI engineer — from model weights to multi-tenant SaaS.

Based in Ho Chi Minh City. I fine-tune models, then build the product around them — currently TixiGen, an AI content platform at Tiximax.

sunbv56@gmail.com github.com/sunbv56 Vietnamese · English (B1)
5 MCP servers · 50 tools
850+
commits to TixiGen in 2.5 months
445
API routes audited for tenant isolation
50
tools across 5 MCP servers
5,804
UI keys per language, 3 languages

Watch an agent work

A replay of how the internal assistant answers a question: Claude plans, calls MCP tools that read real company systems, and answers only from what the tools return.

  • Read-only tools. Every MCP tool queries; none can write or send without a person.
  • Per-department access. A login decides which skills and data a person can reach.
  • No invented numbers. A shared rule forces the answer to cite the tool output.
agent session · replay
Illustrative replay; tool names match the real servers, figures are omitted.

Experience

Three roles in seven months — from ML research to owning production SaaS work.

Aug 2026 — now

IT Engineer

Tiximax JSC · TixiGen, a multi-tenant AI SEO content CMS

  • Second-largest contributor: 850+ commits, 41 tickets and 50+ merged MRs in two and a half months.
  • Led workspace-isolation hardening for the SaaS conversion — audited 445 API routes, closed 43 cross-workspace read/write gaps, backed by 368 test cases (341 automated). Shipped multi-workspace accounts, per-workspace subdomains, invites and public sign-up.
  • Built a customer-facing content API after benchmarking ten headless CMSs against the OWASP API Top 10: scoped, expiring per-workspace keys with rotation and a three-day grace period. Designed subscription tiers priced from measured LLM cost.
  • Extended the LLM pipeline: Claude API as primary provider, Gemini response schemas generated from Zod, embedding retrieval with LLM re-ranking, and a verified-facts layer so generated articles cannot invent statistics.
  • Implemented a 60+-criterion SEO rubric with a live in-editor scorecard and language-aware rules (Vietnamese, Japanese, Indonesian, Tagalog); its AI auto-fix never breaks a criterion that already passes.
  • Re-architected PostgreSQL into a trigger-enforced content tree (149 → 137 tables, 120+ migrations), replaced string-built SQL with parameter binding, localized the UI into three languages and cut editor SEO analysis from 53.6 to 22.4 ms.
  • Next.js
  • TypeScript
  • PostgreSQL
  • Drizzle
  • Zod
  • Claude API
  • Vertex AI
  • MinIO
  • Vitest
Read the case study →
SEO rubric6/6 pass
  1. Focus keyword in H1 and intro
  2. Meta description 120–160 chars
  3. Every image has alt text
  4. Internal links to related posts
  5. Numbers match the verified-facts set
  6. Readable for the target language
Each criterion re-checks live as the editor types.
Jun — Aug 2026

AI Intern

Tiximax JSC · internal AI tools

  • Developed an internal AI assistant platform on Claude Code: department skills over an Obsidian knowledge base plus five Python MCP servers exposing 50 tools (GA4, Search Console, revenue, mail), with per-department access. Lead developer, 72% of commits.
  • Built AutoDub Studio alone — video dubbing and localization (Whisper → Gemini → Edge-TTS → FFmpeg, optional Wav2Lip) for 12+ languages, with desktop and FastAPI web front ends.
  • Co-developed an AI video studio: multi-provider TTS voice studio (Edge-TTS, Piper, ElevenLabs), usage-quota dashboard, GPU crash fix.
  • Prototyped an intent classifier for the company chatbot using multilingual-e5 embeddings in Transformers.js.
  • Claude Code
  • MCP
  • Python
  • Whisper
  • Gemini
  • Edge-TTS
  • FFmpeg
  • FastAPI
  • Transformers.js
Agent platform case study →
AutoDub pipeline12+ languages
  1. Whisperspeech → text
  2. Geminitranslate
  3. Edge-TTStext → voice
  4. FFmpegmux video
Apr — Jun 2026

AI Engineer Intern

Amazing Tech · Mamba-Forecast-AD

  • Self-supervised anomaly detection on a Hybrid Mamba (selective state-space) backbone with linear complexity: POT F1 75.65%, 14.1× faster inference than LSTM.
  • EMA series decomposition into a linear trend path and a Mamba seasonal path; a physical-statistics head over eight vibration metrics cut validation MSE by 5.56%.
  • Extreme-value-theory threshold calibration: 0.18% false-alarm rate at 12.12 ms.
  • PyTorch
  • Mamba / SSM
  • Time series
  • EVT / POT
Research case study →
Forecast error1 flagged
Drag to move the threshold. Too low floods operators with false alarms; EVT picks it from the error tail instead of by hand.

Selected work

Five projects, each with what I did and what it changed.

01 / 05

By the numbers

Measured from git history and merge-request notes, not estimated.

Commits to TixiGen per month2026
56
Aug
518
Sep
528
Oct
GitLab plus the earlier GitHub repo, de-duplicated. Started mid-August.
Before → afterbefore after
Database tablesafter the content-tree refactor
149
137
−8%
Editor SEO analysisper pass, shared document index
53.6 ms
22.4 ms
−58%
News-article promptcharacters, shared prompt blocks
6,499
3,879
−40%

How a TixiGen article gets made

The path I work on every day, from a brief to a published, scored page.

  1. 01

    Brief

    Writers fill a brief in the Next.js editor. Brand voice, services and verified numbers load from the workspace's own context store.

    • Next.js
    • multi-tenant
  2. 02

    Retrieve

    Embedding search over PostgreSQL pulls the relevant context; an LLM re-ranks it before anything is written.

    • embeddings
    • re-ranking
    • PostgreSQL
  3. 03

    Generate

    Claude drafts the article. Output is validated against Zod schemas, and Gemini schemas are generated from the same types.

    • Claude API
    • Zod
    • Vertex AI
  4. 04

    Verify

    Every number is checked against the verified-facts set, then a 60+-criterion SEO rubric scores the draft live; AI auto-fix never breaks a passing check.

    • fact grounding
    • SEO rubric
  5. 05

    Publish

    Scheduled publishing, permalinks with redirects, images served from MinIO, and a content API that client sites pull from.

    • MinIO
    • content API
    • OWASP

Stack

AI & ML

  • Claude API
  • Claude Code
  • MCP
  • Vertex AI · Gemini
  • RAG
  • PyTorch
  • Hugging Face
  • PEFT / LoRA
  • RLHF / PPO
  • Sentence Transformers
  • LangChain
  • ASR

Web & data

  • TypeScript
  • Next.js
  • React
  • Tailwind CSS
  • Node.js
  • FastAPI
  • PostgreSQL
  • Drizzle ORM
  • Zod
  • MinIO / S3
  • REST · OpenAPI
  • i18n

Tools

  • Git
  • Vitest
  • Pytest
  • Playwright
  • Linux
  • n8n
  • Make.com
  • Fly.io
  • LaTeX

Research & open source

Mar 2026

Qwen3-ASR for Vietnamese music

LoRA fine-tuning of Qwen3-ASR (0.6B, 1.7B) on 50,000 Vietnamese song samples with a chunking pipeline for long audio. WER down 12.57 points, CER down 3.88.

Nov 2024 — Feb 2025

ViLawT5-RL

Vietnamese legal QA: ViT5-base tuned with RLHF and PPO, with reward shaping for stable training on low-resource text. BLEU 38.41, ROUGE-L 64.75.

B.Sc. Computer Science, Ton Duc Thang University, 2021–2025 · GPA 8.09/10

↑↓ move · ↵ open · esc close