Front-End Developer (Full-Time, Remote) at Horizon Assset Investments. Location Information: Anywhere in the World. . . Headquarters:. Remote . URL:. . https://www.horizonassetinvestments.com/. . . Front-End Developer (Full-Time, Remote). . . . We are seeking a Front-End Developer to design and build the user-facing components of our high-performance trading platform. You will play a key role in creating intuitive, data-rich interfaces that enable traders and analysts to work efficiently and effectively.. . . . You will collaborate closely with the Back-End Development Team and the Project Manager to deliver seamless, integrated systems. A key factor is the front end developer’s ability to deeply discuss approaches, trade-offs, limitations, and pros/cons with the development team, rather than reliance on any specific pattern or library.. . . . . Key Responsibilities. . . Develop and maintain the front-end applications of our trading platform.. . Collaborate with back-end developers and the project manager to ensure smooth integration across systems.. . Design and implement multi-page layouts, menus, and workflows that balance usability with efficiency.. . Contribute to the design and user experience of the trading platform, performance & risk manager, and backtesting engine.. . Implement and optimize charting and data visualization features, leveraging libraries such as TradingView or D3.js to support a wide variety of chart types (tables, multi-line chart packs, etc.).. . Continuously refine the UI/UX to ensure clarity, speed, and intuitive navigation for end users.. . . . . . Qualifications. . . Strong communication skills and the ability to collaborate effectively with developers, project managers, and business stakeholders.. . A keen eye for design, simplicity, and efficiency, with the ability to translate complex requirements into clean, user-friendly interfaces.. . Knowledge of financial systems or trading concepts is preferred.. . . . . Core stack (mandatory). . . React 18 + Next.js (App Router), TypeScript, TailwindCSS.. . Strong command of state management for high-frequency data (e.g., Zustand, Redux Toolkit, useSyncExternalStore).. . . . . Real-time data & performance. . . Hands-on with WebSockets / SSE and reconnection/backoff strategies; handling authenticated socket connections and topic resubscriptions.. . Experience implementing backpressure, buffering, coalescing, and windowing to prevent UI thrash under thousands of updates/minute.. . Data virtualization (react-virtualized, react-window) for large tables (orders, positions, trades).. . Familiar with Web Workers / OffscreenCanvas and message passing to keep the main thread responsive.. . Awareness of latency budgets and frame-time profiling using React DevTools and browser performance tools.. . . . . Charting & visualization. . . Practical experience with professional charting libs (e.g., TradingView Charting Library, Lightweight Charts, Highcharts, D3).. . Real-time overlays: best bid/ask, order book depth, last OHLCV, order/position annotations.. . Multi-pane layouts (price, volume, indicators) with synchronized crosshairs and time scales.. . . . . Architecture & data access. . . Client-side caching and invalidation (e.g., TanStack Query / React Query).. . Schema-driven UI for instruments and venues.. . Use of Error Boundaries, Suspense, and progressive hydration/streaming for large Next.js pages.. . . . . Auth, security, and roles. . . Strong understanding of OIDC/JWT flows, token refresh/rotation, and WebSocket authentication.. . Role-based feature gating (read-only vs trading permissions).. . . Testing, quality, and reliability. . . Unit tests for critical transforms/parsers (e.g., Playwright/Vitest for E2E/interaction flows). . Experience with feature flags, staged rollouts, and monitoring with Sentry/OpenTelemetry.. . . . . Nice-to-haves. . . Experience with desktop-class layouts (drag-to-dock panels, resizable grids).. . Exposure to WASM for heavy computations (e.g., indicator calculations).. . Familiarity with FIX/crypto venue nuances (tick sizes, lot sizes, trading sessions).. . . . . Screening Questions. Keep answers **4–8 sentences** each. Bullet points allowed if clear.. . . . 1) **UI migration (hrzk → Next.js):**. . . Pick ONE area from the provided `hrzk.html` (e.g., Orders+Trades, Positions table, Equity/Drawdown).. . . Explain how you’d migrate it to **React 18 + Next.js (App Router) + TypeScript + Tailwind**.. . . Include folder structure and what you’d make **client vs server components**.. . . (We care about your trade-offs, not “the one true way”.). . . . 2) **Real-time data ingestion:**. . . Describe how you’d handle **WebSockets/SSE** for high-frequency updates:. . . reconnect/backoff, authenticated sockets, and topic resubscriptions.. . . What failures do you expect in production?. . . . 3) **Backpressure + UI thrash prevention:**. . . Assume **thousands of updates/minute** for orders/positions/trades.. . . Explain how you’d implement buffering/coalescing/windowing so the UI stays responsive.. . . Mention how you’d combine this with **state management** (e.g., Zustand/RTK/useSyncExternalStore) and **virtualization** (react-window / react-virtualized).. . . What would you measure to prove it works?. . . . 4) **Charting approach:**. . . We need fast, readable, data-rich charts (equity/drawdown, doughnut/bars, etc.).. . . Pick a chart type from `hrzk.html` and explain:. . . - which charting library you’d choose (TradingView Lightweight Charts / Highcharts / D3 / etc.). . . - update frequency strategy. . . - performance risks + mitigations. . . . 5) **Auth + role gating:**. . . Explain how you’d handle JWT/OIDC token refresh and **WebSocket authentication**, then implement role-based gating (read-only vs trading).. . . Use an example like “Cancel All Orders” or “Stop/Start Execution”: when do you hide vs disable vs show a warning?. . . . 6) **Remote ownership + teamwork:**. . . Give one example where you took ownership remotely on an ambiguous task.. . . Then describe how you’d work with a small dev team: how you ask clarifying questions, communicate risk early, and avoid shipping “local optimum” code that breaks other parts of the system.. . . . What to expect (our interview process):. . . . Our hiring process is mostly async and focused on real work.. You’ll start with a CV submission and a short, structured application.. Shortlisted candidates complete an async technical screen.. Finalists complete a paid, time‐boxed work sample aligned to the role.. End‐to‐end, the process typically runs 4–6 weeks.. . . . FAQs. . ·. . Do I need to respond to the questions?. . Yes, please respond to the questions ideally in an open format via a cover letter. This is mandatory for vetting.. . ·. . Do I need to attend live interviews?. Most stages are async to reduce scheduling friction. Live calls are minimal.. . ·. . Do I need to be on camera for the sample work?. No — screen + voice is sufficient.. . ·. . What tools can I use to submit recordings?. Any common screen‐recording or file‐sharing tool is fine, as long as the video is easy to view.. . ·. . Is the final task paid?. Yes. Final shortlisted candidates complete a paid, time‐boxed work sample.. . To apply:. . https://weworkremotely.com/remote-jobs/horizon-assset-investments-front-end-developer-full-time-remote.
Front-End Developer (Full-Time, Remote) at Horizon Assset Investments