Work
Eight-plus years of backend engineering and DevOps across payments, fintech and real-time data — now reaching POS devices (SoftPOS / contactless) and hands-on AI engineering, from the code to the teams and infrastructure behind it. The short version is on my about page; here's the full track record.
Experience
Solo Engineer — SoftPOS Platform (Backend + POS App) · ITE
Banking partner: VietinBank
2026 — Present
- Built a SoftPOS payment app for Android-based POS devices that accepts contactless (NFC) card payments for banking partner VietinBank, integrating the Napas MPOC SDK and Napas MAP gateway.
- Delivered the system end to end as a solo engineer using an AI-assisted development workflow (Claude Code), accelerating delivery while owning the architecture and all design decisions.
- Architected the backend on Clean / Hexagonal Architecture (Java 21, Spring Boot 3.5) with clear domain, application and infrastructure separation for testability and long-term maintainability.
- Implemented OAuth2 + JWT (RSA-256) with long-lived refresh tokens so POS devices stay active without re-login, plus session tracking for token revocation.
- Integrated the Napas MAP gateway for NFC card and QR payment flows; handled instant payment notifications (IPN), transaction void and reconciliation.
- Built the POS device app (Android, Kotlin, Jetpack Compose) with NFC HCE emulating an NFC Type 4 Tag, transaction history (search / filter / pagination) and thermal HTML receipt printing.
Java 21 · Spring Boot 3.5 · PostgreSQL · OAuth2/JWT · MQTT · Docker · Kotlin · Jetpack Compose · Napas MPOC SDK · NFC HCE
.NET Leader / Technical Lead · ITE
2022 — Present
- Revived and shipped a stalled product (frozen ~2 years) by diagnosing the root issues and restructuring its architecture.
- Led the migration from a monolith to microservices, improving scalability and performance.
- Integrated multiple payment methods and hardened authentication & authorization with IdentityServer.
- Built and maintained a fully automated CI/CD pipeline (GitLab CI + Jenkins + Docker).
- Planned work, allocated tasks and coached an 8-member engineering team.
- Integrated OpenAI into the product to automate reporting, improve content quality and cut manual effort.
- Defined and rolled out an AI-assisted development workflow across the SDLC (planning, coding, review), and trained the team on agentic coding tools (Claude Code, Claude Co-Work) — driving adoption and faster delivery.
.NET Core · IdentityServer · PostgreSQL · Ocelot · Redis · Selenium · ELK · Jenkins · Docker · Portainer · MinIO
Senior Backend Developer · FPT Software
2021 — 2022
- Optimized API performance, cutting response times and resource usage.
- Worked directly with clients in Singapore and France to analyze and solve complex technical issues.
- Ran code reviews and mentored the team on backend best practices.
.NET Core · MS SQL
Sub-Team Leader / Backend Developer · ITE
2019 — 2021
- Built and optimized a secure payment gateway & routing platform for major partners (VNPost, ViettelPay, Bamboo).
- Led integration, SIT and release activities; improved internal Git workflows.
- Set up and maintained the company GitLab server and internal infrastructure.
Java · Spring Boot · Tomcat · Oracle · MySQL · MongoDB · Linux · GCP · Jenkins · Docker
Backend Developer · FiinGroup
2019
- Built a real-time processing service for stock-exchange data (HNX & HOSE).
- Sustained high throughput and low latency under peak load.
.NET Core · MS SQL · Redis
Backend Developer · NashTech / Harvey Nash
2018 — 2019
- Delivered performance improvements within a 16-member project team.
- Added robust unit tests and improved backend reliability.
.NET Framework · MS SQL
Backend Developer · VNPAY
2017 — 2018
- Built VNPAY's recruitment website and internal tools.
- Built a mobile web app for TPBank's airline-ticket purchasing flow.
- Integrated the VNPay payment gateway.
.NET Framework · Oracle · JavaScript · Framework7
Selected projects
Agentic Automation & AI Tooling
Self-directed
- Built agentic automation with Claude (Anthropic) via the Model Context Protocol (MCP), wired to tools like Notion and Jira and driven hands-free through a Telegram bot.
- Designed event-driven automation pipelines (n8n, webhooks) connecting LLMs to messaging and productivity systems.
- Prototyped a Retrieval-Augmented Generation (RAG) proof of concept and AI-usage observability with OpenTelemetry, tracking token cost and latency.
Claude (Anthropic) · OpenAI API · MCP · n8n · OpenTelemetry · Python · Bash
Toolbox
Languages
C#/.NET, Java, Kotlin, SQL, Bash
Frameworks
ASP.NET Core, Spring Boot, Jetpack Compose
Architecture
Microservices, Clean/Hexagonal, DDD, REST, OAuth2/JWT (IdentityServer)
Databases
PostgreSQL, MS SQL, MySQL, Oracle, MongoDB, Redis, Elasticsearch
DevOps / CI-CD
Docker, Portainer, Jenkins, GitLab CI, GitLab Runner, GitHub Actions, Git
Monitoring
Prometheus, Grafana, ELK (Logstash, Kibana), OpenTelemetry
Messaging / Gateways
MQTT, Nginx, Ocelot
AI / LLM
Claude (Anthropic), Claude Code, Co-Work, OpenAI API, LLM Agents, MCP, Prompt Engineering, RAG
Cloud / OS
GCP, Linux, Windows
Education
People Security Academy · Information Technology
2013 — 2017
Want the details or a fit for your team? Get in touch or connect on LinkedIn.