Разработчик инструментов разработки в отдел автономного транспорта
Яндекс хочет сделать перемещение людей и грузов более безопасным, доступным и удобным. Мы ставим перед собой масштабную цель: оказаться в числе первых в мире компаний, создавших технологию автономного управления автомобилем. Чтобы воплотить это в жизнь, мы собираем команду увлечённых, умных и целеустремлённых профессионалов.
Вам предстоит работать в команде, которая создаёт инструменты разработки и внутреннюю платформу. Наша главная цель — повышать эффективность инженеров за счёт улучшения процессов разработки: от написания кода до установки на флот и тестовые стенды. Мы адаптируем инфраструктуру Яндекса под специфичные нужды бизнеса автономного транспорта.
Задачи и обязанности
Оптимизация CI и распределённой сборки
Вы будете отвечать за скорость сборок и проверок в CI на стадии прекоммита. Предстоит делать сборочный граф проекта более оптимальным, развивать и настраивать систему распределённой сборки, используя обширный кластер серверов и современные облачные технологии.
Создание инструментов разработки
Мы делаем много тулинга вокруг компилятора: например, организуем и развиваем системы статической проверки кода. Вы будете создавать технологии автоматизации, которые избавляют разработчиков от рутины и повышают качество кодовой базы.
Внедрение автомобильных стандартов безопасности
Сейчас мы ведём крупный проект по внедрению инструментов для прохождения сертификации ISO 26262 и поддержке стандарта ASIL. Это уникальная возможность поработать с практиками критически важных для безопасности систем на масштабе Яндекса.
Проектирование и реализация компонентов платформы
Вам предстоит снижать сложность системы, анализировать узкие места, участвовать в доработке инфраструктуры, а также улучшать или создавать с нуля её новые части.
Больше о бэкенде в Яндексе — в канале Yandex for Backend
Требования
- Готовы писать на Python (это основной язык разработки наших инструментов)
- Стремитесь выбирать хорошие архитектурные решения, писать качественный код и покрывать его тестами
- Способны работать на стыке технологий, глубоко погружаться в инфраструктуру и постоянно изучать новое
Дополнительные требования
- Знаете C++ или Go
- Знакомы с системами сборки (Make, CMake, Bazel) и имеете опыт сборки чужого исходного кода
- Понимаете принципы работы компиляторов или работали со статическими анализаторами кода