remote
Software Engineer - Java Algo Development - Millennium Management
Software Engineer
Develop high‑performance Java applications for algorithmic trading, building low‑latency, scalable systems on Linux while collaborating with quantitative teams and leveraging strong data‑structure and C++ knowledge.
About the role
Key Responsibilities
- Design, implement, and maintain Java‑based trading algorithms and supporting infrastructure.
- Optimize code for low‑latency execution and high throughput in a Linux environment.
- Collaborate with quantitative analysts to translate mathematical models into production‑ready software.
- Conduct code reviews, unit testing, and performance profiling to ensure reliability and scalability.
- Maintain version control, continuous integration pipelines, and documentation using Git.
Requirements
- Strong proficiency in Java; experience with C++ is a plus.
- Solid understanding of algorithmic trading concepts and low‑latency system design.
- Experience with Linux development, performance tuning, and networking fundamentals.
- Proficiency in data structures, algorithms, and multithreaded programming.
- Familiarity with Git, CI/CD workflows, and agile development practices.