Horizon Assset Investments: Front-End Developer (Full-Time, Remote) — Opportunihub
Job Remote

Horizon Assset Investments: Front-End Developer (Full-Time, Remote)

Organisation · Worldwide

At a glance

Type
Job
Organisation
Organisation
Location
Worldwide
Work mode
Remote
Deadline
Rolling / not stated
Posted
28 Apr 2026

About this job

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

How to apply

  1. 1 Read the full details above and confirm you meet the eligibility criteria.
  2. 2 Prepare your documents — an updated CV, and any cover letter, proposal or certificates required.
  3. 3 Click Apply on official site to complete your application on Organisation’s official page.
  4. 4 Submit as early as possible — many close once filled.
Apply on official site

Sourced from wewr. Always verify details on the official website. Opportunihub never charges you to apply.

Frequently asked questions

How do I apply for Horizon Assset Investments: Front-End Developer (Full-Time, Remote)?

Review the full details and eligibility on this page, prepare your documents, then use the “Apply on official site” button to complete your application on Organisation’s official page.

Is this opportunity remote or location-based?

This opportunity is remote-friendly and open to applicants who can work from anywhere.

Is Horizon Assset Investments: Front-End Developer (Full-Time, Remote) free to apply for?

Opportunihub lists this Job for free. Legitimate Jobs do not ask for payment to apply — never pay a fee to submit an application.