Bùi Văn NamFront-end Engineer — Ha Noi[email protected]
B

I build interfaces that stay fast on cheap phones and bad networks

Years shipping
6
Projects in production
31
Median Lighthouse
98
Monthly users reached
1.200.000
Languages
vi · en
Availability
Taking new work from October

Six years of React and TypeScript on products with real users, mostly commerce and dashboards. I take the performance work too, not just the markup.

Commission work
76/68

I build interfaces that stay fast on cheap phones and bad networks

42/40

I build interfaces that stay fast on cheap phones and bad networks

26/28

I build interfaces that stay fast on cheap phones and bad networks

18/28

I build interfaces that stay fast on cheap phones and bad networks

Selected work

Keep scrolling
Tiki2025
Seller dashboard

Seller dashboard

Rebuilt the whole front-end

Orders table went from 4.1s to 0.9s

  • React
  • TypeScript
  • TanStack Query
Momo2025
Product launch page

Product launch page

Build and performance

1.1s LCP on 4G, sign-ups up 18%

  • Next.js
  • Tailwind
  • Vercel
VNPay2024
Rates app

Rates app

Front-end and the realtime data path

Prices land under 200ms, no dropped frames while scrolling

  • React Native Web
  • WebSocket
  • Zustand
Juno2023
Shared UI kit

Shared UI kit

Component API design and docs

Nine teams on it, 60% less duplicated UI code

  • React
  • Radix
  • Storybook
More on GitHub

Go on, drag it

This runs on WebGL in the page rather than as a recorded turntable, and it is cut in code — no file is fetched for it. The three.js bundle itself only starts loading when you scroll near, which is the part that was actually hard.

Libraries
three.js, React Three Fiber
Geometry
cut in code, nothing fetched
Loads
only when scrolled near
Falls back to
a still image
Go on, drag it

Watch it run

2 min 00 sec

A screen recording of one real flow, uncut. A screenshot cannot show you how a transition actually feels.

Inks on this sheet

Cobalt#1B2CF0
Chalk#EBEBE8
Ink#0B0B0D
Vermilion#FF3D00

Four inks, one sheet

What I work in

I do not change stack by season. This is the list I have used long enough to know where each one breaks.

Every day

  • TypeScript
  • React
  • Next.js
  • Tailwind

Six years straight, mostly in codebases somebody else started

Data and state

  • TanStack Query
  • Zustand
  • tRPC
  • Zod

I like types that survive the whole way from server to form

Measuring and fixing

  • Lighthouse CI
  • Web Vitals
  • Sentry
  • bundle analyzer

Measure before the fix, and again after it

Graphics

  • three.js
  • React Three Fiber
  • GLSL
  • Canvas 2D

Enough to know when to reach for it and when not to

Booking from October — remote or in Ho Chi Minh City · Booking from October — remote or in Ho Chi Minh City · Booking from October — remote or in Ho Chi Minh City · Booking from October — remote or in Ho Chi Minh City · Booking from October — remote or in Ho Chi Minh City · Booking from October — remote or in Ho Chi Minh City · Booking from October — remote or in Ho Chi Minh City · Booking from October — remote or in Ho Chi Minh City ·

Tell me about it

Name the deadline and the budget up front — you get an answer within 24 hours, including an honest read on whether it is achievable.

[email protected]
  • GitHub
  • LinkedIn
  • CV

Tran Minh Khoi — Front-end since 2019