Overview
The role of a C++ Software Engineer involves developing innovative low-latency systems within a dynamic technology firm focused on financial markets. The successful candidate will collaborate closely with both hardware and software teams while interacting with front office stakeholders such as Portfolio Managers and Traders. This position is pivotal in enhancing real-time market data processing and ensuring system robustness and efficiency.
Responsibilities
- Architect and implement low-latency C++ systems for real-time market data processing.
- Collaborate with hardware and software teams to enhance system performance.
- Define and enforce SLAs, policies, and metrics for the market data area.
- Develop systems and tools for historical market data simulation to improve research productivity.
- Build and maintain automated testing frameworks for market data applications and risk management.
- Monitor performance tracking and system stability across trading protocols.
Requirements
- Proven expertise in C++ programming, including OOP, data structures, and algorithms; familiarity with modern C++ and templates is advantageous.
- Extensive experience in financial markets across various asset classes.
- In-depth knowledge of low-latency, real-time system design and trading protocols.
- Demonstrated experience in building and managing large-scale market data systems, including knowledge of platforms like Bloomberg and FactSet.
- Strong understanding of Linux internals, networking, and CPU architecture optimization.
- Proficiency in additional programming languages (e.g., Java, Python) and familiarity with cloud platforms (AWS/GCP) and containerization technologies (Docker/Podman).