Наша команда делает инструменты для команды разработки Яндекс Браузера
Мы пишем код, который автоматизирует существующие процессы, а новые помогаем строить так, чтобы в них всё что можно делалось бы нашими алгоритмами, а ручной работы был минимум.
Наша основная зона ответственности и крупнейший источник нагрузки на сборочные машины — контур CI.
Кроме CI, мы:
- пишем код для упрощения обновления на новую версию Chromium;
- разрабатываем инструменты для контроля качества Браузера;
- строим конвейеры и интеграции с другими внутренними сервисами Яндекса;
- придумываем новые утилиты для разработчиков;
- выполняем десятки других задач.
Наш код:
- работает локально под Windows, macOS, Linux у пары сотен разработчиков;
- работает в CI под Windows, macOS, Linux более чем на тысяче сборочных машин;
- проверяет в CI по несколько сотен пул-реквестов в день, в каждом из них — для пяти платформ: Windows, macOS, Linux, iOS, Android;
- строит и анализирует граф сборки, определяя, какая часть проекта задета изменениями;
- собирает задетую часть проекта, до 100 тысяч файлов C++ на платформу, в дебажной и релизной конфигурации, распределяя и кешируя сборку на сотнях машин в облаке;
- прогоняет все задетые тесты — до 300 тысяч уникальных тестов;
- проверяет код статическими анализаторами и линтерами;
- анализирует логи сборки, ошибки компиляции, время работы и стабильность тестов, вероятность конфликта изменений с Chromium и многое другое.
Какие задачи вас ждут
- писать на Python 3;
- решать повседневные рабочие задачи команды Браузера;
- писать код, который будет работать стабильно и надёжно даже в плохо контролируемых окружениях;
- писать код, который будет комфортен в поддержке спустя месяцы и даже годы;
- писать код, который легко масштабировать и удобно переиспользовать.
Мы ждем, что вы - имеете опыт разработки на Python 3 и хорошо знакомы с этим языком;
- готовы слушать пользователей и придумывать технические решения для их проблем;
- готовы следить за работой своих сервисов: чинить баги, улучшать скорость и стабильность;
- готовы изучать новые инструменты: сервисы, утилиты, системы сборки.
Будет плюсом, если вы
- работали с системами CI/CD;
- работали более чем с одной десктопной ОС: Windows, macOS или Linux;
- работали с какими-либо системами сборки компилируемого кода;
- не боитесь читать незнакомый код и разбираться в нём.