Batman
Batman

A software engineer who enjoys building products.

Languages
Python
Frontend
Databases
PostgreSQL
Cloud
APIs
RESTgRPC
Infra
Tools
Claude

Experience

1y 8m08/2024 - Present
  • Built enterprise SaaS platform for Mizuho Financial Group (Japan's 3rd largest bank) — cross-org SSO, custom domains with SSL, IP restrictions, and MFA hardening
  • Led end-to-end CloudSign and DocuSign e-signature integrations — API design, webhook-based status sync, AWS Secrets Manager for secure API key storage, role-based permissions, and envelope history tracking
  • Designed coarse-grained GraphQL mutation for bi-directional ARCH↔SFA/CRM sync with distributed locking and deduplication, reducing duplicate data and race conditions
  • Reduced CI build time by 60% (35m → 14m) and lint time by 69% (32m → 10m) via Docker layer caching and ESLint 8→9 migration
  • Optimized Kubernetes reliability — HPA, PodDisruptionBudget, readiness probes, graceful shutdown, and DB connection pool tuning
  • Built reusable custom plugins for Lexical rich-text editor, powering the platform's block-based content system
  • Established E2E testing with Playwright and unit testing with Vitest + React Testing Library

Education

Hanoi University of Science and Technology logo

Bachelor of Computer Science

Hanoi University of Science and Technology
2018 - 2023
  • CPA: 3.48 / 4.0
  • IEEE published paper → View
  • 1st prize — HUST-IBM Hackathon 2021
  • Deep Learning Specialization (Coursera)

Projects

ARCH Platform logo
ARCH Platform

@ Geniee International Group

Enterprise SaaS platform for presales and customer success, serving Mizuho (Japan's 3rd largest bank) and other major Japanese corporations. Features a collaborative workspace with Notion-like editing built on Lexical core.

  • Monorepo architecture with multiple React/TypeScript apps on Vite — vendor management, shared workspace, form builder, and Salesforce integration — plus shared component libraries and editor wrappers (Lexical, Editor.js)
  • Schema-first GraphQL API on Node.js/Express with PostgreSQL, TimescaleDB for analytics, and Firebase authentication
  • Data sync from Chikyu SFA (Company, Customer, CollectionPage) via SQS and GraphQL API; Salesforce bi-directional sync via dedicated GraphQL integrations
CHIKYU (SFA-CRM) logo
CHIKYU (SFA-CRM)

@ Geniee International Group

SFA/CRM platform serving 6,300+ companies across Japan with 99% retention rate — SIers, manufacturing, trading, HR, and real estate industries.

  • Python 3.9 backend on AWS Lambda deployed as Docker container images (ECR) to bypass zip package size limits, managed by Serverless Framework v3
  • Monolithic routing pattern — few Lambda functions (open, public, secure, privileged) act as proxies, routing requests from API Gateway to internal handlers, reducing cold starts and simplifying deployment
  • Each Lambda function maps to an authentication tier: no auth, API key, IAM, OAuth2, and internal-only
Vinbase logo
Vinbase

@ VinBigData Joint Stock Company

AI-powered virtual assistant platform serving major Vietnamese enterprises including Vinhomes, Vinpearl, VinFast, and ACB — automating customer interactions across 100+ languages.

  • Nuxt + Vuetify frontend for Bot Studio — the drag-and-drop chatbot builder interface
  • Flask and FastAPI backend serving training data APIs with MongoDB for versioned bot configs
  • Amazon EKS for container orchestration and continuous deployment