Senior Software Engineer
Job Description Senior C++ Software Engineer – Trading & Supply
What We Need From You
Required Industry Knowledge:
• Understanding of major global futures exchanges and their native protocols
• Knowledge of full exchange-traded derivatives trade lifecycle • Minimum of 8 years' experience in Trading & Capital Markets / Investment Banks
Role Overview
As a Senior C++ Engineer, you will be a member of a small, high performing team responsible for global derivatives algorithmic trading platform.
Working closely with technologists, quants and traders to develop our in-house trading technology and optimise it to achieve market-leading performance and reliability.
Our proprietary trading platform includes everything from venue connectivity (feed handlers and ordering gateways) to trading engines to shared platforms that enable us to work quickly and efficiently - we are proud of our open and collaborative culture, so you'll have plenty of opportunity to find what fits you best.
The main activities include:
Exchange Connectivity
• Write software that communicates with exchanges through their APIs, receiving market data and sending orders over the network in different protocols, such as FIX, Websocket or HTTP requests
• Ensure quality of software based on a set of testing suites, which you are expected to use, maintain and extend
• Optimize exchange communication through kernel bypass, optimizing TLS or the connection handling to an exchange
• Research exchange behavior in detail to align our behavior to that of an exchange
• Implement these solutions using the provided exchange SDKs in different languages such as C++, Rust, Python, Typescript Trading Strategies
• Implement trading algorithms based on requirements provided by traders and quants
• Acquire and develop the necessary trading knowledge to successfully translate the requirements into actual software implementation
• Continuously improve the stability, reliability, and performance of the trading engine
• Enhance monitoring and observability in collaboration with the Trading Operations team
• Investigate and resolve production issues such as crashes, unexpected business logic behavior, and performance bottlenecks
• Prepare for releases and deployments of new trading engine versions
Key Skills and Experience required
• 5+ years post-graduation professional C++ software development experience within the Financial industry
• Solid understanding of parallel, asynchronous, and multithreaded programming to build distributed systems
• Good knowledge of algorithms and data structures
• Strong analytical and problem-solving skills, with the ability to analyze complex data sets and propose innovative solutions.
• Understanding of trading lifecycle, including order capture & execution, allocation workflow, settlement, and compliance requirements
• Must have strong technical skills in scripting, Python, PowerShell, C#, SQL or other programming languages
• Solid track record in application deployment best practices
• Proactive system monitoring and troubleshooting, owning reliability improvements and ensuring their successful delivery
Soft Skills:
• Excellent communication skills to interact with traders, developers, and stakeholders.
• Thrives in high-pressure situations while working alongside traders, developers and other engineering teams
• Proactive, self-motivated, and flexible with a positive attitude
• Ability to work under demanding deadlines with changing priorities in a trading room environment
• Ambition to solve open-ended problems using analytical methods