At a Glance
- Tasks: Design and implement ultra-low latency C++ systems for high-frequency trading.
- Company: Join Millennium, a leader in quantitative trading, shaping the future of finance.
- Benefits: Collaborate with top talent and work on cutting-edge technology in a fast-paced environment.
- Why this job: Tackle significant engineering challenges while making a real impact in the trading industry.
- Qualifications: Degree in computer science; strong C++ skills; knowledge of low-latency systems required.
- Other info: Experience with financial markets and trading protocols is a plus.
The predicted salary is between 48000 - 72000 £ per year.
Software Engineer – Low Latency
The Latency Critical Trading team seeks a software engineer who is excited to architect, design, and implement low latency C++ systems that are robust, resilient, accurate, stable, and blindingly fast. By building and maintaining this high-performance infrastructure, this developer will help to position Millennium as a leader in the field of quantitative trading. You will shape the future of this industry while you work alongside other exceptional programmers and strategists to solve some of the most significant engineering problems in the world.
Responsibilities:
- Assisting in the development of a tick by tick backtesting research platform and exchange simulation
- Collaborating with hardware and software developers across divisions to build ultra-low latency trading systems
- Contributing towards the team’s technical direction by driving new initiatives
- Developing and optimizing large-scale parallel computation problems that require large quantities of data shared across resources
- Developing systems, interfaces, and tools to historical market data and trading simulations that increase research productivity
- Designing and implementing a low latency high-frequency trading platform, which includes collecting quotes and trades from and disseminating orders to exchanges around the world
- Optimizing this platform by using network and systems programming, as well as other advanced techniques to minimize latency
- Helping build and maintain our automated test and benchmark framework, risk-management, performance-tracking, and other tools
- Testing, implementing, and benchmarking different feed handlers (internal and external) on different hardware offerings and settings (e.g. Solarflare, Mellanox NICs, different switches, different compilers and compiler flags, different OS options, etc.)
- Working closely with trading teams to gather requirements and develop solutions in a fast-paced environment
- Working with development and support teams to adapt to exchange technical upgrades
Key Requirements:
- A degree in computer science or a related field
- A strong background in data structures, algorithms, and object-oriented programming in C++
- Strong template, meta programming, and generic programming knowledge a plus.
- Comfortable with new features of C++17 and C++20
- Strong understanding of low-latency and real-time system design and implementation
- Good understanding of Linux system internals and networking
- Deep understanding of CPU architecture and the ability to leverage CPU capabilities
- Strong financial experience across multiple asset classes, particularly Options knowledge
- Strong understanding of multiple trading venue protocols and unique behaviors (for both Market Data, and Order Entry, with a focus on Market Data)
- Knowledge of any other development language, including Java, Python, or Perl and shell scripts (a plus)
#J-18808-Ljbffr
Software Engineer - Low Latency employer: Millennium Management
Contact Detail:
Millennium Management Recruiting Team
StudySmarter Expert Advice 🤫
We think this is how you could land Software Engineer - Low Latency
✨Tip Number 1
Make sure to showcase your experience with low-latency systems in your conversations. Discuss specific projects where you optimized performance or reduced latency, as this will resonate well with the team.
✨Tip Number 2
Familiarize yourself with the latest C++ features, especially C++17 and C++20. Being able to discuss how these features can be applied to improve system performance will set you apart from other candidates.
✨Tip Number 3
Engage with the trading community and stay updated on market trends and technologies. This knowledge will help you understand the challenges faced by trading teams and demonstrate your commitment to the field.
✨Tip Number 4
Prepare to discuss your understanding of CPU architecture and how it impacts low-latency system design. Being able to articulate this knowledge will show that you have a deep technical understanding relevant to the role.
We think you need these skills to ace Software Engineer - Low Latency
Some tips for your application 🫡
Understand the Role: Make sure to thoroughly read the job description for the Software Engineer - Low Latency position. Understand the key responsibilities and requirements, especially focusing on low-latency C++ systems and trading platforms.
Highlight Relevant Experience: In your CV and cover letter, emphasize your experience with C++, data structures, algorithms, and any relevant projects that showcase your skills in low-latency system design and implementation.
Showcase Technical Skills: Be specific about your technical skills in your application. Mention your familiarity with C++17 and C++20 features, Linux internals, and any experience with trading systems or financial markets.
Tailor Your Cover Letter: Craft a personalized cover letter that connects your background and interests with the goals of the Latency Critical Trading team. Discuss how you can contribute to their initiatives and your passion for solving engineering challenges in quantitative trading.
How to prepare for a job interview at Millennium Management
✨Showcase Your C++ Expertise
Be prepared to discuss your experience with C++, especially with the latest features from C++17 and C++20. Highlight specific projects where you implemented low-latency systems or optimized performance, as this will demonstrate your technical skills relevant to the role.
✨Understand Low-Latency Design Principles
Familiarize yourself with the principles of low-latency system design. Be ready to explain how you would approach building a high-frequency trading platform, including techniques for minimizing latency and optimizing data flow.
✨Discuss Collaboration Experience
Since the role involves working closely with hardware and software developers, prepare examples of past collaborations. Discuss how you gathered requirements from trading teams and adapted solutions in fast-paced environments, showcasing your teamwork and communication skills.
✨Demonstrate Financial Knowledge
Brush up on your understanding of financial markets, particularly options and trading venue protocols. Being able to discuss your financial experience and how it relates to the technical aspects of the job will set you apart from other candidates.