Built the product experience for a funded trading platform that connects traders and investors in one secure, data-rich ecosystem, handling complex financial UIs and real-time market data.
The Trading Pit
8 months
Senior Frontend Engineer

The Trading Pit needed to feel like a professional-grade financial platform, not a startup side project. Traders evaluate tools in seconds; if the UI feels slow, unclear, or untrustworthy, they leave. The team had a strong backend and a clear product vision, but needed a frontend that matched the quality of the financial data underneath.
The challenge was twofold: rendering complex financial data (account balances, trading history, live P&L, challenge progress) clearly and accurately while keeping interactions fast and responsive across a large, state-heavy application.
With this many interconnected data domains, Redux was the right choice, not because of its boilerplate, but because the predictable state tree and developer tooling (Redux DevTools) made it possible to trace exactly what data drove each UI decision. For a financial product where a bug in displayed numbers could damage user trust, that traceability was worth the overhead.
TypeScript was non-negotiable. Every API response was typed, every store slice had typed state, and every component received typed props. This eliminated a whole class of runtime errors common in financial UIs, wrong number format, undefined field access, incorrect field mapping from API to display.
For real-time data, WebSocket connections were managed through Redux middleware, normalizing incoming updates into the existing state structure without triggering unnecessary renders elsewhere in the tree.
Complex cross-domain state (accounts, challenges, positions, payouts) required a single source of truth with full type safety. Redux DevTools provided the auditability needed for financial debugging.
API responses were normalized into entities + IDs on ingest, preventing duplicate data and allowing O(1) lookups anywhere in the component tree without prop drilling.
Real-time feeds meant constant state updates. React.memo and useMemo were applied systematically at high-frequency update boundaries to prevent cascade re-renders across the page.
Built a shared Tailwind component library (tables, badges, charts, forms) used across all dashboards. This enforced visual consistency and sped up feature development significantly.
Delivered a professional-grade trading platform UI that matched the quality expectations of the financial audience. The product launched to positive reception from traders and served as a key differentiator in a competitive funded trading space.
I take on complex full stack projects, AI integration work, and data platform development.