A complete application in a minute
Tailored resume and cover letter, ready to send.
ЦРТ | Группа компаний ищет middle инженера на стыке ML и Python, который понимает принципы работы агентных систем и имеет инженерную базу для их развития. Требуется практика типизированного кода, модульной архитектуры и качественного тестирования.
Задачи включают проектирование evals для LLM-агентов, tool calling, trace и итоговые артефакты, создание и поддержку датасетов, разработку детерминированных метрик и интеграцию с Langfuse, CI/CD и Docker, работу с API и логами.
Мы разрабатываем агентную систему и инструменты для объективной оценки её качества. Ищем middle-инженера на стыке ML и Python, который понимает принципы работы агентных систем и имеет инженерную базу для их развития.
Проектировать evals для LLM-агентов, tool calling, поиска и итоговых ответов. Определять единицу оценки: ответ, вызов инструмента, trace/trajectory или итоговый артефакт. Создавать и поддерживать тестовые датасеты, разметку и ground truth. Разрабатывать детерминированные метрики и LLM-as-a-Judge evaluators. Калибровать автоматические оценки на человеческой разметке. Запускать и анализировать эксперименты, находить регрессии и недостатки покрытия. Работать с traces и наблюдаемостью в Langfuse. Совместно с командой определять quality gates для изменений агентов, моделей и промптов. Развивать агентов и агентную платформу: инструменты, навыки, интеграции. Развивать программную инфраструктуру на Python и интегрировать её с рабочей агентной системой, работать с существующими API и внешними сервисами. Разбираться в полном пути запроса через несколько сервисов и диагностировать проблемы по логам и traces. Проектировать явные контракты данных и устойчивую обработку ошибок. Писать unit- и интеграционные тесты, участвовать в code review. Работать с CI/CD и контейнеризированным окружением. Использовать coding agents для реализации задач и отвечать за качество итогового решения.
Production-Python: типизированный код, явные модели данных (dataclasses, Pydantic), понятная декомпозиция модулей. Практический опыт unit- и интеграционного тестирования, включая проверку ошибок и граничных случаев. Понимание `async`/`await`, HTTP API и корректной обработки сетевых ошибок. Опыт работы в сервисной или event-driven архитектуре. Умение ориентироваться в незнакомой кодовой базе и находить причину проблемы по коду, логам и трассам. Git и командная разработка через code review. Понимание принципов работы LLM и агентов, использующих инструменты. Умение превратить продуктовое требование в проверяемую гипотезу и дизайн эксперимента. Практика классификационных метрик и базовой статистики: precision/recall, срезы, уверенность в выводе. Понимание различий между детерминированными проверками и LLM-as-a-Judge. Умение задавать уточняющие вопросы, фиксировать критерии приёмки и объяснять результат разработчикам и владельцам продукта. Будет плюсом: Опыт с Langfuse, Phoenix, LangSmith, Opik или другой платформой наблюдаемости и оценки LLM-систем; Опыт с RAG, поисковыми системами или агентными фреймворками; Опыт работы с FastAPI, Pydantic и асинхронным Python; Знание Docker, CI/CD, S3-совместимых хранилищ, NATS или других event-driven систем; Опыт разработки eval- или regression-pipelines; Опыт эксплуатации распределённых сервисов; Опыт разработки агентных инструментов и навыков, доработки вычислительного окружения (harness) агентов; Опыт организации человеческой разметки и анализа согласованности экспертов; Опыт использования coding agents: постановка задач, проверка результата и доработка сгенерированного кода