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.

How to Apply: