Volt
Gamified mobile trading arena — live MT5 execution, haptic swipe-to-strike order entry, real-time candlestick charting, XP tiers, Power Hour events, and a full gamification engine. Three NestJS services + a native-feel React Native app.
Production-grade gamified trading platform with real broker execution, native-grade mobile execution UX, and full backend infrastructure — 478+ tests, load tested at scale.

Problem
Retail trading apps are either functional but lifeless (Robinhood clones) or gamified but shallow (fantasy trading). No platform combines real broker execution with competitive metagame mechanics — XP, seasons, squads, loot — while keeping the trading infrastructure production-grade.
Role
- Sole engineer — architecture, mobile app, 3 backend services, gamification engine, infrastructure, deployment
- Designed the competitive metagame: XP, tiers, seasons, Power Hours, loot, squads, bounties
- Built all 13 screen groups, 20 migrations, and CI/CD pipeline
Approach
- Built a complete monorepo: React Native mobile app + NestJS API (REST) + Gateway (WebSocket) + Worker (cron) + PostgreSQL + Redis
- Live MT5 execution via MetaApi with BFF architecture — broker connections, API keys, and fill logic never reach the mobile client
- Real-time WebSocket price streaming with per-symbol throttling (150ms), batch mobile store updates, and candle aggregation
- Full gamification engine: XP awards on trades, tier progression with decay, seasonal resets with VC bonus pools, Power Hour 6-phase lifecycle (SCHEDULED→PRE→COUNTDOWN→HUNT→ARENA_RED→ENDED)
- Loot system: 3 crate tiers, 33 items, provably-fair auditable RNG with HMAC-SHA256 server seed — any auditor can verify rolls
- Squads with War Room P&L aggregation, bounty board with VC pool caps, killstreak tracking, dethrone detection, global shoutouts
- Security hardening: strict JWT, rate limiting (100/min global + endpoint-specific), admin guards, CORS, helmet, circuit breaker with shouldTrip predicates
- Cinematic mobile UX: swipe-to-strike with haptic escalation, MatrixRain animations, PowerHourTakeover overlays, Black Blade 5-phase onboarding
- Charting as a native bridge: TradingView Lightweight Charts bundled on-device and driven through injectJavaScript for reliable delivery on Android, with a history-timeout fail-safe so a dropped socket never leaves a blank chart
- Connection resilience for a phone in a pocket: sockets reconnect with backoff, re-authenticate on server-forced disconnect, and are rebuilt when the token rotates so a reconnect never carries stale auth
- Foreground/background lifecycle handling — ping intervals start and stop with app state behind a cooldown, extracted as a pure function so the transition logic is unit-tested rather than hand-verified
- Cost optimization: MetaApi deploy/undeploy lifecycle with Redis TTL sessions — $9.07 → ~$0.25/user/month (~97% savings)
Outcomes
- Complete monorepo — 70+ commits, 13 screen groups, 3 backend services, 20 migrations, staging deployed
- 478+ tests passing across all packages (API, Gateway, Worker, Gamification, Crypto, Mobile)
- Load tested: 44,913 HTTP requests at p95 2ms, 22,050 WebSocket connections, all SLOs green
- Staging deployed on Fly.io with Docker Compose, Android APK built (64 MB release)
- Circuit breaker, compensation worker, distributed cron locks — production hardening from day one
- Full pnpm monorepo — React Native mobile + 3 NestJS microservices + 4 shared packages, staging deployed
- Real-time charting bridge: TradingView Lightweight Charts v4.1.1 bundled on-device, driven over a dedicated Socket.IO candle stream, with crosshair OHLC read back into React Native
- Deep-link broker attribution — voltapp:// activation and promo links persist intent across install and pre-select the broker through onboarding
- Complete gamification engine: XP system, tier progression, seasons, Power Hour 6-phase lifecycle, killstreaks, dethrone events
- 478+ tests across all services (270 API + 71 Worker + 55 Gateway + 35 Gamification + 12 Crypto + 35 Mobile)
- Live MT5 trading via MetaApi — real positions, orders, SL/TP, mark-to-market P&L with contractSize multipliers
- Swipe-to-strike order entry: spring-resisted gesture with escalating haptic rumble, zone milestones, and a threshold lock — no order fires from a stray touch
- On-device share cards captured with ViewShot, gated to profitable trades and permanently watermarked DEMO ACCOUNT in both image and share text
- Loot system with provably-fair auditable RNG (V-INV-010), crate tiers, inventory, equip flow
- Load tested with k6: HTTP p95 2ms, WS 22k connections, all SLOs green — proven at scale
What I refused to build
These constraints are part of the engineering signal: the work stayed useful because the unsafe shortcut paths stayed out.
- R-01Fantasy trading with fake fills — all trades execute on real MT5 brokers via MetaApi
- R-02Autonomous loot RNG — crate rolls are provably fair with HMAC-SHA256 server seed, auditable by any third party
- R-03Gamification shortcuts that compromise trading UX — XP from real trades only, no engagement farming
- R-04Un-watermarked win shares — every shareable trade card is stamped DEMO ACCOUNT in the image and the share text, so a screenshot cannot circulate as a live-money claim
- R-05One-tap order entry — execution requires a deliberate swipe past a haptic threshold lock, not a button a thumb can brush
Full React Native trading arena built for native feel, not web-in-a-shell — arena dashboard with XP challenges and Power Hour, multi-asset watchlist and live prices, on-device TradingView candlestick charts with crosshair, haptic swipe-to-strike execution with margin guards, positions management with live P&L, wallet, deep-linked broker affiliate flow, and a cinematic Black Blade onboarding. Android APK built (64 MB release).







Stack
Hiring signal
This is the kind of work I want ASADI AI to make legible first: fintech systems where product direction, architecture, execution, and governance all have to line up.