We are looking for an ML engineer with strong practical experience with LLMs: fine-tuning, post-training, evaluation, and inference.
Important: this is not a classic ML Engineer / Data Scientist position. We need a candidate who has independently trained and adapted LLMs and understands the full cycle — from data and training to evaluation and deployment.
Tasks:
- Development and improvement of LLM post-training pipelines: SFT, preference optimization, Offline / Online RL;
- Improvement of instruction following and building a benchmarking / evaluation system;
- Training LoRA / QLoRA adapters for various domains and tasks;
- Working with reward models / verifiers and reward functions for RL;
- Development of RAG systems: retrieval, reranking, context construction, and evaluation;
- Training and integration of tool use / function calling / structured outputs;
- Optimization of model inference and serving using vLLM / SGLang;
Mandatory requirements:
- Practical experience in LLM fine-tuning / post-training;
- Experience with SFT and preference optimization: DPO / IPO / ORPO / SimPO or equivalents;
- Experience or good practical understanding of Online RL for LLMs: GRPO / GSPO or similar methods;
- Understanding of reward models, preference data, and LLM evaluation;
- Confident command of Python, PyTorch, Hugging Face Transformers;
- Experience with TRL and/or verl;
- Experience with LoRA / QLoRA / PEFT;
- Experience with inference / serving via vLLM and/or SGLang;
- Experience in developing RAG, tool use, or structured generation;
- Understanding of modern LLM architecture and specifics of their training and inference;
- Experience with GPUs, distributed training, and Linux / Docker / Git;
- Ability to independently set up experiments, select metrics, and analyze results.
Will be a plus:
- Continual / domain pre-training;
- Reasoning RL;
- Multilingual LLMs or code generation;
- FSDP / DeepSpeed / Megatron-LM;
- Quantization and inference optimization.