About the Role
Department Overview
The Equities Technology division is responsible for building and maintaining the high-performance, ultra-low-latency trading infrastructure that powers our global equities business. This includes market data dissemination, order routing, algorithmic execution, smart order routing (SOR), and real-time risk management systems. We operate in a highly competitive environment where microseconds matter, requiring cutting-edge software engineering practices, deep hardware-software co-design, and robust system reliability.
Role Summary
We are seeking an exceptional Senior Software Engineer with deep expertise in Rust and C++ to join our Equities Low-Latency Trading Technology team.
In this role, you will design, develop, and optimize our next-generation trading systems. You will lead the strategic transition of legacy high-performance C++ components to modern Rust where safety and concurrency are paramount, while continuing to maintain and optimize critical ultra-low-latency C++ execution paths. This is a highly technical role requiring a strong understanding of computer architecture, operating systems, network protocols, and modern software engineering paradigms.
Key Responsibilities And Skills
- System Design & Development: Architect, build, and maintain ultra-low-latency trading systems, including exchange connectivity gateways, market data feeds, and algorithmic execution engines using Rust and C++. Design clean, modular, and reusable APIs and libraries that can be leveraged across multiple trading desks. Lead the strategic migration of critical trading components from C++ to Rust, leveraging Rust's memory safety and concurrency guarantees without sacrificing performance.
- Performance Optimization: Profile and optimize systems to achieve sub-microsecond latencies and deterministic performance. Apply low-latency techniques such as CPU pinning, cache-friendly data structures, lock-free programming, memory-mapped files, and custom memory allocators. Utilize kernel bypass technologies (e.g., Solarflare OpenOnload, DPDK, EF_VI) to minimize network stack overhead.
- Concurrency & Reliability: Design and implement highly concurrent, thread-safe, and lock-free algorithms to handle massive throughput with minimal jitter. Implement rigorous testing methodologies, including unit testing, integration testing, property-based testing (in Rust), and high-fidelity simulation/back testing environments. Ensure the high availability and operational resilience of trading systems through robust error handling and failover mechanisms.
- Collaboration & Support: Work closely with quantitative researchers, traders, and product managers to translate complex trading strategies and business requirements into robust, production-ready software. Build real-time telemetry, monitoring, and alerting tools to ensure operational visibility. Provide level-3 escalation support for production systems during market hours.
Required Technical Skills & Qualifications
- Programming Languages: Expert-level proficiency in C++ (C++11/14/17/20), with a deep understanding of template metaprogramming, RAII, move semantics, smart pointers, and the standard library (STL). Strong proficiency in Rust, including ownership/borrowing concepts, lifetimes, unsafe Rust boundaries, macro systems, and the Cargo ecosystem.
- Systems Programming & Low-Latency: Deep understanding of Linux operating system internals (kernel tuning, memory management, virtual memory, page faults, system calls). Experience with low-latency networking (TCP/IP, UDP, Multicast) and socket programming. Familiarity with hardware-level concepts: CPU cache hierarchies (L1/L2/L3), TLB, branch prediction, and memory barriers.
- Concurrency: Proven experience in multi-threaded programming, memory models (sequential consistency, acquire-release), and lock-free data structures.
- Equities Domain Knowledge: Solid understanding of Equities market structure.
Requirements
Rust proficiency
Strong proficiency in Rust, including ownership and concurrency concepts.
C++ expertise
Expert-level proficiency in C++ with a deep understanding of modern C++ features.
Low-latency systems
Experience in designing and optimizing ultra-low-latency trading systems.
Concurrency knowledge
Proven experience in multi-threaded programming and lock-free data structures.
Linux internals
Deep understanding of Linux operating system internals and kernel tuning.
Nice to Have
Solid understanding of Equities market structure.
Familiarity with technologies like Solarflare OpenOnload and DPDK.
Benefits
Competitive salary
Attractive salary package commensurate with experience.
Health insurance
Comprehensive health insurance coverage.
Remote work options
Flexible remote work arrangements available.