DoorDash
Senior Software Engineer, Build Systems & CI
Автоматический пересказ вакансии на русском. Полный текст на языке оригинала и форма отклика — на сайте работодателя.
Инженер в команду Code Scalability, отвечающую за системы сборки и CI в DoorDash. Задача — делать сборку и CI в больших монорепозиториях быстрыми, предсказуемыми и удобными для всех команд компании.
Задачи
- Развивать процессы сборки и CI для больших монорепозиториев, сохраняя быструю обратную связь при росте зависимостей и числа команд
- Разрабатывать правила, тулчейны и интеграции Bazel для воспроизводимых сборок
- Повышать пропускную способность и надёжность пайплайнов Buildkite, сокращать очереди и узкие места
- Снижать объём избыточной работы за счёт анализа зависимостей, инкрементальных сборок, кэширования и параллельного выполнения
- Создавать инструменты для разработчиков, объясняющие причины падений сборок и позволяющие воспроизводить CI локально
- Развивать платформу сборки и CI с применением AI: интеллектуальная диагностика, триаж PR, автоматическое восстановление
- Инструментировать и эксплуатировать инфраструктуру сборки и CI, отслеживать метрики latency, надёжности и потребления ресурсов
- Вести улучшения платформы от дизайна до раскатки, помогать командам с миграциями и менторить коллег
Требования
- 5+ лет опыта в разработке ПО, включая создание инфраструктуры для разработчиков, систем сборки или CI-платформ
- Опыт написания поддерживаемого production-кода на Go, Java, Kotlin или Python, сильные навыки отладки и проектирования
- Опыт работы с системами сборки или CI на масштабе: понимание зависимостей, инкрементальных сборок, кэширования и распределённого выполнения
- Опыт Bazel, Buildkite или больших монорепозиториев (или сопоставимых инструментов и окружений)
- Опыт ведения технических проектов между командами, принятия практичных компромиссов в дизайне и сопровождения изменений в эксплуатации
- Подход к внутренним платформам как к продуктам: умение слушать разработчиков и оценивать успех по решённым проблемам
- Способность исследовать проблемы производительности и надёжности в нескольких компонентах и выбирать решения, остающиеся понятными при росте системы
- Улучшение работы команды через менторство, чёткую коммуникацию и автоматизацию рутинных задач
Условия
- Базовая зарплата в диапазоне $159,800—$235,000 в год (для США, включая Иллинойс и Колорадо)
- Возможность получения equity-грантов
- Комплексный пакет бенефитов: 401(k) с матчингом работодателя, 16 недель оплачиваемого родительского отпуска, wellness-бенефиты, компенсация транспортных расходов
- Медицинская, стоматологическая и офтальмологическая страховка, 11 оплачиваемых праздников, страхование жизни и по нетрудоспособности
- Оплачиваемый отпуск и больничные в соответствии с законодательством
- Помощь в вопросах семьи и программа психологической поддержки
Навыки
- Bazel
- Buildkite
- CI/CD
- monorepo
- Go
- Java
- Kotlin
- Python
- caching
- incremental builds
- distributed execution
- AI