Python Developer (Bazel)
Требования
Местоположение и тип занятости
Компания
Описание вакансии
Ищем разработчика в команду Bazel для развития сборочной инфраструктуры в Monorepo.
Про Monorepo. Мы строим отказоустойчивую и быструю инфраструктуру разработки в едином репозитории: сборочные и тестовые конвейеры, CI/CD, инструменты для работы с огромной кодовой базой, высокодоступное хранилище артефактов, мониторинг и сервис-боты. Большинство разработчиков компании каждый день взаимодействуют с нашим стеком — скорость и комфорт их работы зависят от нас.
Про роль. Вы станете одним из людей, кто улучшит экспириенс работы со сборками. Для этого мы развиваем и внедряем кеширующую, масштабируемую систему сборки Bazel.
Задачи:
• Развивать фреймворк для описания сборок C++/C# в Bazel (правила на Starlark, макросы, тулчейны);
• Интеграция с CI/CD, разработка действий для конвейеров;
• Проектировать и эксплуатировать распределённый Remote Cache;
• Повышать наблюдаемость сборок: профили Bazel, метрики и дашборды;
• Сопровождать небольшой форк Bazel: мерджи апстрима, патчи, релизы, CI;
• Прорабатывать и поддерживать sandboxing на Windows/Linux/macOS;
• Документация, внутренние гайды и помощь командам при миграции на Bazel.
Что нужно знать и уметь:
• Понимание принципов систем сборки (инкрементальность, детерминизм, изоляция, кеширование).
• Уверенные знания Python;
• Хорошее владение алгоритмами и структурами данных;
• Умение самостоятельно доводить задачи до результата, исследовательский склад ума;
• Чтение техдоков на английском.
Плюсом будет:
• Опыт работы с Bazel/Blaze или альтернативами (Buck/Buck2/Pants/Please), написание правил на Starlark;
• Знания C++/C#;
• Знание: MSVC/Clang/GCC;
• Опыт Remote Execution (BuildFarm/BuildBarn или аналоги);
• Интеграция с IDE (Visual Studio/VS Code), генерация проектов/solution’ов;
• Опыт работы с Docker контейнерами;
• Понимание принципов CI/CD.
Почему это интересно:
• Влияние на скорость разработки всей компании.
• Сложные инженерные задачи на стыке сборочных систем, инфраструктуры и производительности.
• Широкая зона ответственности: от правил и тулчейнов до наблюдаемости и эксплуатации. Вакансия "Python Developer (Bazel)"
Ищем разработчика в команду Bazel для развития сборочной инфраструктуры в Monorepo.