Senior Software Engineer
The firm’s Core Team is responsible for designing and building low-latency systems that support trading across a broad range of instruments, exchanges, and ECNs. The team’s focus is on creating systems that strike the right balance between clean, understandable code, low-latency performance, stable behavior, and zero error tolerance. The libraries developed by this team become the backbone of the firm’s trading strategies.
Position Responsibilities:
Design and implement network connectivity, specialized container, market data, and execution libraries for the firm’s automated trading platform.
Tune and optimize existing components to enhance performance and improve system stability.
Collaborate with strategy teams to understand their usage of the libraries, enabling the anticipation of future needs and the delivery of improvements.
Develop and maintain production-quality components to support data collection and backtesting of trading strategies.
Maintain existing applications and manage exchange connectivity.
Tools & Technologies:
C++, Python, Bash, C#, Linux, SQL, network programming
Requirements:
A Master’s degree in Computer Science, Computer Engineering, Informatics, Bioinformatics, or Technology, coupled with two years of software engineering experience OR a Bachelor’s degree in one of these fields along with five years of relevant software engineering experience.
Prior experience implementing exchange connectivity at major exchanges is required.
Experience collaborating with algorithmic trading strategy teams is a plus, as is experience with systems designed for backtesting trading strategies.
Proficiency in C++, multithreading, inter-process communication (IPC), automated testing, benchmarking, low-latency containers, and Linux environments is essential.
Familiarity with the OnLoad network stack, as well as proficiency in Python, Bash scripting, SQL, C#, and CI/CD pipelines in GitLab, is preferred.