§ 01
Context
B2B travel
web client
Smartway is a corporate travel platform: employees book flights, trains, taxis, transfers and hotels, while their companies handle approvals, reporting, and travel policy. The web client is large and long-lived — many domains, many engineers, years of steady growth. I joined as a senior frontend developer and grew into the tech-lead role for the web platform.
§ 02
The challenge
growth debt
+ a scaling team
By the time I took ownership, the codebase carried the weight of fast growth: a largely untyped JavaScript core, a Webpack build slow enough to tax every developer's day, a booking cart that had grown sluggish under real usage, and an authentication layer that needed rebuilding without disrupting active sessions.
And the team was scaling. That raised the bar on everything else: the architecture and conventions had to be legible to people who hadn't written them — not just to the few who had.
§ 03
What I did
six workstreams
over three years
-
Led a full TypeScript migration
Moved the codebase from JavaScript to TypeScript, done incrementally so the product kept shipping the whole way. Types became the documentation the codebase never had.
-
Replaced Webpack with Vite
Swapped the build toolchain to Vite, collapsing build and feedback times and giving every developer faster local iteration — the change that paid back daily.
-
Made the booking cart fast
Restructured state ownership and re-render boundaries in the cart flow, turning a sluggish, much-used path into an instant one.
-
Rewrote authentication without breaking sessions
Rebuilt the auth layer as a quiet, high-stakes change — shipped without logging anyone out or interrupting work in progress.
-
Built the analytics module
Interactive tables and charts for expense and trip insights — the numbers companies run their travel policy on.
-
Grew the team
Mentored three frontend developers and ran internal tech talks — state vs. cache, SSR vs. ISR — to make sound decisions the default rather than the exception.
§ 04
Outcomes
what moved
10×
faster builds after migrating the build to Vite.
Webpack → Vite
+300%
booking-cart performance via state & render restructuring.
Cart flow
100%
of the web codebase migrated to TypeScript.
TS migration
3
frontend developers mentored as tech-lead.
Team
§ 05
Stack & role
2021 — 2024
- React
- Redux
- MobX
- React Query
- Next.js
- React Native
- TypeScript
- Vite
Senior Frontend Developer, then tech-lead for the web platform.
Printer's note
Smartway is a private product, so this page describes scope and outcomes rather than internal code. The numbers above are the ones I stand behind — and I'm happy to walk through the how in a conversation.

