Own the software and infrastructure that take machine learning models from experiments to large-scale training and production inference, enabling research scientists to build, evaluate, and serve models reliably.
Senior ML Systems Engineer, Frameworks & Tooling
📜 Description
- Build and own the framework for large-scale LLM training.
- Design distributed training abstractions for parallelism, memory management, and checkpointing.
- Improve training throughput and stability across multi-node clusters.
- Develop monitoring, logging, debugging, and developer tooling.
- Investigate performance bottlenecks across the ML systems stack.
- Build reproducible, debuggable training systems in collaboration with infrastructure, research, and deployment teams.
🛠️ Requirements
- Strong engineering experience in large-scale distributed training or HPC systems.Deep familiarity with JAX internals, distributed training libraries, or custom kernels/fused ops.
- Experience with multi-node cluster orchestration (Slurm, Ray, Kubernetes, or similar).
- Comfort debugging performance issues across CUDA/NCCL, networking, IO, and data pipelines.
- Experience working with containerized environments (Docker, Singularity/Apptainer).
- A track record of building tools that increase developer velocity for ML teams.
- Excellent judgment around trade-offs: performance vs complexity, research velocity vs maintainability.
- Strong collaboration skills — you’ll work closely with infra, research, and deployment teams.
- Experience with training LLMs or other large transformer architectures.
- Contributions to ML frameworks (PyTorch, JAX, DeepSpeed, Megatron, xFormers, etc.).
- Familiarity with evaluation and serving frameworks (vLLM, TensorRT-LLM, custom KV caches).
✨ Benefits
- A weekly lunch stipend of $75/£75 or equivalent in your local currency for lunch.
- Full health and dental benefits, including a separate budget for mental health.
- Pension Scheme
- 100% Parental Leave top-up for up to 6 months, for either parent.
- Annual enrichment benefits:Arts & culture
- Fitness/wellness
- Workspace improvement credit.Education & learning stipend for conferences
- 6 weeks of paid vacation (30 working days!)
- Budget for traveling to other offices if you are remote, plus an annual company offsite.
Full job description
Who are we?
Cohere is the leading security-first enterprise AI company. We build cutting-edge foundation AI models and end-to-end products that are designed to solve real-world business problems.
We’re training and deploying frontier models for enterprises who are building AI systems. We believe that our work is instrumental to the widespread adoption of AI and we are looking for folks that want to be part of that.
We obsess over what we build. Each one of us is responsible for contributing to increasing the capabilities of our models and the value they drive for our customers. Cohere is a team of researchers, engineers, designers, and more, who are all passionate about their craft.
We are a global technology company headquartered in Toronto with key offices in London, New York City, San Francisco, Montreal, Paris, Berlin and Seoul. Join us!
Role Overview:
We’re looking for a senior engineer to help build, maintain and evolve the training framework that powers our frontier-scale language models. This role sits at the intersection of large-scale training, distributed systems, and HPC infrastructure. You will design and maintain the core components that enable fast, reliable, and scalable model training — and build the tooling that connects research ideas to thousands of GPUs.
If you enjoy working across the full stack of ML systems, this role gives you the opportunity and autonomy to have massive impact by working on projects such as:
Building a high-performance data loading and caching pipeline.
Implementing performance profiling across the ML systems stack
Developing internal metrics and monitoring for training runs.
Building reproducibility and regression testing infrastructure.
Developing a performant fault-tolerant distributed checkpointing system.
Key Responsibilities:
Build and own the training framework responsible for large-scale LLM training.
Design distributed training abstractions (data/tensor/pipeline parallelism, FSDP/ZeRO strategies, memory management, checkpointing).
Improve training throughput and stability on multi-node clusters (e.g., GB200/300, AMD, H200/100).
Develop and maintain tooling for monitoring, logging, debugging, and developer ergonomics.
Collaborate closely with infra teams to ensure our cluster, container environments, and hardware configurations support high-performance training.
Investigate and resolve performance bottlenecks across the ML systems stack.
Build robust systems that ensure reproducible, debuggable, large-scale runs.
Qualifications:
Strong engineering experience in large-scale distributed training or HPC systems.
Deep familiarity with JAX internals, distributed training libraries, or custom kernels/fused ops.Experience with multi-node cluster orchestration (Slurm, Ray, Kubernetes, or similar).
Comfort debugging performance issues across CUDA/NCCL, networking, IO, and data pipelines.
Experience working with containerized environments (Docker, Singularity/Apptainer).
A track record of building tools that increase developer velocity for ML teams.
Excellent judgment around trade-offs: performance vs complexity, research velocity vs maintainability.
Strong collaboration skills — you’ll work closely with infra, research, and deployment teams.
Any of the following would also be good to have for this role:
Experience with training LLMs or other large transformer architectures.
Contributions to ML frameworks (PyTorch, JAX, DeepSpeed, Megatron, xFormers, etc.).
Familiarity with evaluation and serving frameworks (vLLM, TensorRT-LLM, custom KV caches).
Experience with data pipeline optimization, sharded datasets, or caching strategies.
Background in performance engineering, profiling, or low-level systems.
Bonus: paper at top-tier venues (such as NeurIPS, ICML, ICLR, AIStats, MLSys, JMLR, AAAI, Nature, COLING, ACL, EMNLP).
Working Location:
This role can be based remotely or from one of our office locations listed on the job description - there is no minimum in-office qualification requirement. We care most about hiring exceptional people regardless of locations, though please check the location listed on the posting for guidance around the core time zone or working hours alignment expected for the role.
Full-Time Employees at Cohere enjoy these Perks:
A weekly lunch stipend of $75/£75 or equivalent in your local currency for lunch.
Full health and dental benefits, including a separate budget for mental health.
RRSP matching, 401K, Pension Scheme.
100% Parental Leave top-up for up to 6 months, for either parent.
Annual enrichment benefits:
Arts & culture, fitness/wellness, quality time, and a workspace improvement credit.
Education & learning stipend for conferences, courses, and coaching.
6 weeks of paid vacation (30 working days!)
Budget for traveling to other offices if you are remote, plus an annual company offsite.
How and Where We Work:
Cohere is remote-friendly, but we also have offices in Toronto, London, New York City, San Francisco, Montreal, Paris, Berlin and Seoul with more opening soon.
For those in the office: a daily lunch program, plenty of snacks, and regular community and social events.
For those not near an office: a co-working benefit so you can work alongside others in your city.
Everyone receives a $500 home office stipend to set up your workspace properly.
If any of the above doesn’t line up exactly with your experience, we still encourage you to apply.
We strive to create an inclusive work environment for all; we welcome applicants from all backgrounds and are committed to providing equal opportunities. Should you require any accommodations during the recruitment process, please submit an Accommodations Request Form, and we will work together to meet your needs.
We may use AI-enabled tools to screen and assess applicants against the criteria for this position. This helps our recruiters identify potentially qualified candidates, but it doesn't limit the applications our recruiters may review or consider.
Beware of Scams: Cohere will never ask for payment or third-party services (e.g., CV writing) as part of our hiring process. All legitimate roles are listed on the Cohere careers page and LinkedIn only, with all communications from Cohere employees coming from an @cohere.com or @cw.cohere email alias. If jobs are viewed on other sites then please verify these through our official careers page.
Similar jobs
Search more Machine Learning Engineer jobsSenior Machine Learning Engineer, Ads ML Efficiency
Optimize production machine learning workloads across training and serving by diagnosing bottlenecks, implementing performance improvements, and validating measurable gains in latency, throughput, hardware utilization, and cost.
Senior ML Engineer - Malware Detection (remote work)
Build and ship machine-learning detection systems for web malware, from production data and model evaluation through cost-efficient inference, automated signatures, and measurable improvements in detection rates.
Senior ML Engineer - Email Security (remote work)
Develop and operate production email-security models and Go-based filtering systems, improving spam and phishing detection while balancing catch rates against false positives.
Own experiments that improve product eligibility classification, from evaluating and refining ML models to shipping successful approaches to production and expanding coverage to new categories.
