
Search by job, company or skills

This job is no longer accepting applications
Job descriptionRole & responsibilities
Youll build a cross-platform desktop trading terminal (Windows/macOS/Linux) using C++17/20 + Qt/QtQuick (QML), tightly integrated with a C++ backend for real-time market data, order management, charting, and risk controls. Think MetaTrader-grade UX with exchange/broker connectivity and sub-millisecond UI responsiveness.
What Youll Do
Design and develop desktop UI in Qt Widgets/QtQuick (QML): order tickets, DOM/Depth, positions, PnL, watchlists, alerts, and multi-chart workspaces.
Implement MVVM/MVC patterns with QAbstractItemModel, models/proxies, and high-frequency view updates.
Build real-time charting (ticks, candles, indicators), multi-timeframe aggregation, and drawing tools.
Integrate market data feeds (TCP/UDP/WebSocket) and order routing (REST/FIX/native broker APIs) with robust reconnect, back-pressure, and throttling.
Engineer low-latency C++ backend modules: symbol/quote cache, order book, OMS, risk checks, persistence, and pub/sub to the UI layer.
Own performance: lock-contention reduction, zero-copy/move semantics, memory profiling, and frame-time budgets for smooth 60120 FPS rendering.
Ensure security & reliability: input validation, secrets handling, crash-safe state recovery, and telemetry/diagnostics.
Write unit/integration tests, contribute to CI/CD, and participate in code reviews and release hardening.
Collaborate with product/quant/DevOps on features, rollouts, and production support.
Must-Have Skills
5+ years professional C++ (C++17/20) with strong STL, concurrency (std::thread, atomics, lock-free where sensible), and networking.
Qt (5/6), QtQuick/QML, signals/slots, QAbstractItemModel, models/proxies, QPainter/Scene Graph, and interop between C++ and QML.
Building cross-platform apps (Windows/macOS/Linux) and installers; CMake (preferred) or qmake.
Real-time UI experience: rendering large, streaming datasets without jank; profiling with tools like Perf, Instruments, VTune.
Market systems experience: order lifecycle, market/limit/stop orders, partial fills, TIF, positions, PnL, margin, and basic risk controls.
Networking protocols: TCP/UDP, WebSocket; familiarity with FIX (order flow, sessions, heartbeats, resend, recovery).
Solid debugging skills (asan/ubsan/valgrind), and writing maintainable, testable code.
Nice-to-Haves
Custom charting engines, multi-chart layouts, and indicator frameworks.
High-throughput messaging (ZeroMQ/Redis/Kafka), shared memory, or ring-buffers.
Time-series storage (kdb+/ClickHouse/Influx/Postgres) and snapshot+incremental book handling.
GPU-accelerated rendering (OpenGL/Metal/Vulkan via Qt).
Experience with algo/HFT constraints, micro-burst handling, and clock sync (NTP/PTP).
Secure secrets/key management, code-signing, and updater frameworks.
Python/JS bridges for scripting strategies or plugins.
Responsibilities in the First 90 Days
Ship a production-ready watchlist + ticker tape + L1/L2 view wired to live feeds.
Deliver order ticket + OMS flow (place/modify/cancel), with optimistic UI and robust error handling.
Implement multi-pane charting with historical backfill + live streaming and at least 5 core indicators.
Establish telemetry & profiling dashboards and performance budgets (latency, FPS, GC/mem).
Tooling & Stack
Languages: C++17/20, QML
Frameworks: Qt 6.x (preferred), QtQuick, Quick Controls 2
Build/CI: CMake, Conan/vcpkg, GitHub/GitLab CI, unit tests (Catch2/GoogleTest)
Protocols: FIX 4.2/4.4/5.0, REST, WebSocket
OS: Windows/macOS/Linux
Qualifications
BTech/BE/BS in CS/EE (or equivalent) with strong systems and UI fundamentals.
Demonstrated delivery of at least one real-time Qt/QML desktop app (portfolio or repo welcomed).
Job ID: 127305669