Crypto trading-fee cashback platform with 100K+ users. Took over the web + mobile frontend, rebuilt it in-house, and own it end to end.
B2C FinTech — users earn back trading fees on a platform that has processed $17B+ in trading volume and paid out $2.2M+ in cashback. 100K+ users. Web + mobile, built and run in-house.
Outsourced, template-built, web only. No app, no SEO, slow. The company wanted cashback visible at a glance — the legacy product couldn't get there, and every change went through the agency.
Next.js App Router for SEO and per-route cache control. React Native for iOS/Android — ~90% shared codebase, one team ships both. Sentry and Mixpanel wired in from day one.
JS ~2MB → 200–300KB. LCP 4.98s → 2s. Hosting costs down with the bandwidth. Shipped iOS + Android where none existed — web and app release in lockstep, and cashback is finally visible at a glance.
Drove the core of the rebuild — App Router migration, caching architecture, image pipeline, bundle optimization, and the React Native app — while the team of 3–4 handled ongoing product work in parallel. Set up the CI/CD and code-review standards the team still uses.
Aggressive caching vs. real-time trading data. Static content cached at the edge; price and balance data bypasses cache — heavier requests, accepted only where staleness costs users money.
App Router migration with granular caching: aggressive at the edge, exempt for real-time trading data. Semantic markup throughout — structure that serves crawlers and screen readers alike.
Automated image pipeline and dynamic icon system; with bundle trimming, cut JS ~85–90%.
Cross-functional syncs with PMs and designers to negotiate UX trade-offs. Set up CI/CD and code-review standards for the frontend.
Frontend-led observability via Sentry & Mixpanel — regressions caught before user reports, not after.