IMC Financial Markets offers full-time, permanent Machine Learning Engineer roles in New York, NY (onsite), with a salary range of $175,000 to $250,000 USD. In this position, you'll build systems that support training and deployment of large-scale ML models across IMC's global operations. The work spans ML Research Engineering and ML Performance Engineering, bringing researchers and engineers together to speed up experimentation and deliver efficient production execution for trading.
What you'll do
- Develop large-scale distributed training pipelines to manage complex datasets and models.
- Partner with quantitative researchers to automate ML experiments, hyperparameter tuning, and model retraining.
- Collaborate with HPC specialists to optimize workflows, improve training speed, and reduce compute cost.
- Build and optimize low-latency inference pipelines to deliver real-time predictions in production systems.
- Maximize training and inference performance using GPU hardware and acceleration libraries.
- Extend and improve the internals of machine learning frameworks and open-source tools to raise performance for IMC's workloads.
- Design scalable model infrastructure that can handle high-volume trading data and provide real-time, high-accuracy predictions.
- Evaluate and roll out third-party tools that enhance model development, training, and inference capabilities.
How the role is structured
This team supports two closely connected tracks:
- ML Research Engineering: distributed training pipeline development, experiment automation with researchers, and workflow optimization with HPC specialists.
- ML Performance Engineering: low-latency inference pipeline development and GPU-accelerated performance improvements for both training and inference.
Across both areas, you'll also strengthen shared model infrastructure and push performance improvements through framework and tool enhancements.
Skills and experience
- 3+ years of experience in machine learning, focused on training or inference systems.
- Production software engineering in Python, including testing discipline and ownership of systems after they ship.
- Machine learning fundamentals, with the ability to reason about model behavior, correctness, and performance beyond high-level APIs.
- A systems mindset: prioritize measurement over opinion when evaluating performance, scale, or reliability, and make informed build-versus-buy decisions.
- Strong collaboration: explain technical reasoning, work through differing perspectives with researchers, and adjust your approach based on evidence.
Depth areas (choose one or more)
- Distributed training and large-scale systems: parallelism strategy, data pipelines, checkpointing, and experience with frameworks such as PyTorch, TensorFlow, or JAX.
- GPU performance and low-level optimization: memory, compute, and latency at the device level, including performance optimization across kernels, compilers, and hardware such as CUDA and Triton (or equivalents).
- Production inference systems: building and hardening real-time, low-latency prediction pipelines in high-performance environments.
- Numerics and correctness at scale: low-precision effects, KV caching, batching, and knowing which optimizations remain bit-exact.
Bonus qualifications
- Exposure to cloud platforms and orchestration tools.
- A track record of contributing to open-source projects in machine learning, data science, or distributed systems.
Tech stack
Python, PyTorch, TensorFlow, JAX, CUDA, Triton
Compensation and benefits
- Salary range: $175,000 - $250,000 USD
- Discretionary bonus and benefits for all full-time, permanent positions, including paid leave and insurance.