Projects
Production work & real projects — built from scratch, deployed, documented
Digital Defense Ecosystem
Role: Lead Developer (Personal Project)
Multi-repo microservices platform (6 repos) for scam call/SMS blocking, phone & bank account verification, and community reporting. Go + Gin API with JWT, RBAC, Bloom Filter blacklist. iOS (Swift/CallKit), Android (Kotlin), Next.js 15 web dashboard.
Key Features
- ▸Go + Gin API: JWT auth, RBAC middleware, Bloom Filter O(1) blacklist lookup
- ▸Multi-repo microservices: vshield-api, vshield-core, vshield-web, vshield-ios, vshield-android
- ▸iOS: Swift + CallKit real-time call screening & blocking
- ▸Android: Kotlin + Jetpack Compose + CallScreening API
- ▸Community reporting pipeline: Pending → Verified → Rejected with anti-abuse rules
- ▸Phone/bank account verification with community trust score aggregation
- ▸GitHub Actions CI/CD per repo: test + lint gate before merge
- ▸PostgreSQL 16 with JSONB + Bloom Filter index; Redis for rate limiting & session
CaHeo
🏢 ProductionFull-Stack Production Platform — INTRATECH
Role: Backend Developer (Intratech)
Multi-repo full-stack platform built at INTRATECH JSC. Django 5 + DRF backend, Next.js frontend, GitHub Actions CI/CD. Contributed API specs, data dictionary, test cases, and backend features.
Key Features
- ▸Django 5 + DRF backend with modular app structure
- ▸Next.js frontend with SSR/SSG (caheo-frontend repo)
- ▸GitHub Actions CI/CD pipeline (caheo-cicd repo): test → lint → deploy gates
- ▸Authored full API specification, data dictionary, and test case documentation
- ▸Multi-repo Document-First workflow: docs updated before code
- ▸Scrum workflow: Sprint Planning, Daily Standup, Sprint Review, Retrospective
IPO Ready
🏢 ProductionPre-IPO Strategic Analysis Platform — INTRATECH
Role: Backend Developer (Intratech)
Production fintech platform for pre-IPO companies: 50+ endpoints, 14 data models (CapTable, FundingRounds, Shareholders, KPIs). Async CSV/Excel import via Celery — 10,000+ rows. 95% Docker build time reduction.
Key Features
- ▸50+ REST endpoints: CapTable, FundingRounds, Shareholders, Financials, KPIs, Scenarios
- ▸JWT authentication: register / login / refresh / profile with RBAC authorization
- ▸Async CSV/Excel import (pandas + openpyxl): column validation, type checking, duplicate detection
- ▸Celery background workers processing 10,000+ rows; polling status endpoint for frontend
- ▸Swagger UI at /docs/ + Postman collection
- ▸Docker build optimization: 70–80s → 3–5s (95% reduction) via multi-stage layer caching
EduHealth360
🔬 ResearchSchool Health & AI Attendance Platform
Role: Lead Developer & Research Lead
Face recognition attendance (ArcFace R50, 512-dim embeddings) + AI health risk scoring. 12-domain PostgreSQL schema with Views, Triggers, Stored Procs. Isolated AI microservice via Docker internal network.
Key Features
- ▸Face attendance: ArcFace R50 512-dim cosine similarity (InsightFace buffalo_l model)
- ▸12-domain PostgreSQL schema: core, attendance, finance, health, face, auth, audit, billing…
- ▸PostgreSQL: Views, Triggers, Stored Procedures for billing & attendance automation
- ▸AI health risk scoring: Logistic Regression & Random Forest (AUC, F1, Brier evaluated)
- ▸FastAPI microservice: isolated face recognition via Docker internal network, zero port exposure
- ▸RBAC middleware (requireRole), rate limiting, CORS whitelist
GoFoody
🎓 AcademicFullstack Food Delivery Platform
Role: Full-Stack Developer
End-to-end food delivery: .NET 8 Clean Architecture (4 layers), Repository Pattern, JWT + RBAC, smart recommendation engine, revenue analytics dashboard, React + Vite frontend.
Key Features
- ▸.NET 8 Clean Architecture: Api → Application → Domain → Infrastructure (4 strict layers)
- ▸EF Core migrations + auto-seed (roles, categories, sample data on first run)
- ▸JWT auth + RBAC: CUSTOMER / ADMIN / RESTAURANT_OWNER
- ▸Smart food recommendations: tag-based similarity + "frequently bought together"
- ▸Revenue dashboard with daily/monthly order statistics
- ▸React + Vite frontend with TypeScript
VietTelco CSDLPT
🎓 Academic3-Site Distributed Telecom System
Role: Full-Stack Developer
3-site SQL Server horizontal fragmentation by phone prefix (MB/MT/MN). Linked Server cross-site queries, Triggers, global parallel reports via Promise.all. Docker Compose 5 containers.
Key Features
- ▸3-site SQL Server horizontal fragmentation by phone prefix (MB: 096, MT: 091, MN: 090)
- ▸Linked Server cross-site queries: MB → MT → MN
- ▸Site MN = OCS: TaiKhoan (all-network) + TheCao management
- ▸Trigger tr_BaoVeGoiCuoc: validates subscriber existence across all sites before GoiCuoc deletion
- ▸Global revenue report: Promise.all([MB, MT, MN]) parallel queries with COUNT pushdown
- ▸Docker Compose: 5 containers (3 SQL Server + backend + nginx), auto db-init, 15× retry
UniBrainAI
⚡ PersonalPersonalized RAG Study Copilot
Role: Solo Developer
NotebookLM-inspired study app — upload lecture PDFs, RAG chat via Gemini, auto-generate flashcards (SM-2 spaced repetition) and MCQ quizzes.
Key Features
- ▸PDF upload → pdfjs-dist text extraction → 800-char overlapping chunks → Zustand localStorage
- ▸RAG Chat: keyword scoring → top-5 chunks → Gemini 1.5 Flash prompt injection → source citations
- ▸Auto Flashcard Generation: Gemini generates structured JSON Q&A pairs
- ▸SM-2 Spaced Repetition: 6-level rating (0–5), interval multiplied by easeFactor
- ▸MCQ Quiz: Gemini generates 4-option questions with explanations + live scoring
- ▸Gemini API key management with connection test; zero backend required
This Portfolio Website
Role: Solo Developer
Bilingual (EN/VI) portfolio built with Next.js 15 & React 19. i18n via React Context, Firebase Firestore contact form, animated with Framer Motion.
Key Features
- ▸Bilingual EN/VI via React Context (no external i18n library) — 300+ strings
- ▸localStorage language persistence across sessions
- ▸Next.js dynamic() lazy imports for all below-fold sections
- ▸Firebase Firestore contact form (lazy-loaded SDK on submit)
- ▸next/image priority + AVIF/WebP auto-conversion for avatar
Download My CV
Choose the version that fits the role you're hiring for
Interested in working together?
I'm actively seeking Backend Developer & Full Stack Developer opportunities. Let's connect!
Get In Touch