Monorepo
Monorepo - это общая инфраструктура (soft&hard) для разработки и тестирования в ЛК. Она включает решения для написания кода, его сборки, тестирования и мониторинга - иными словами, пронизывает все процессы разработки в компании.
Для чего нужна Monorepo
Monorepo — это амбициозная цель, которая подразумевает не только единый репозиторий, но и: унифицированные подходы к разработке, инфраструктуру сборки/тестирования, общие инструменты разработки. Другими словами, мы делаем жизнь разработчиков наших продуктов более комфортной и эффективной.
Чем занимается наша команда
Мы разрабатываем свою инфраструктуру — это позволяет более быстро и гибко подстраиваться под новые требования, что затруднительно если бы мы бы использовали сторонние решения для CI/CD. Кроме того, когда более 1000 разработчиков используют один общий инструмент на всех, то потратиться на разработку своей инфры и доделывать ее под себя кажется разумным решением, нежели чем обкладывать костылями сторонние решения.
Мы хотим чтобы trunk репозитория был «зеленым». Для этого перед каждым коммитом запускается проверка в виде валидационного билда: он выполняет сборку и тестирование изменившихся на коммите продуктов. Если сборка успешна разработчик получает «зеленый свет» и может закоммитить свои изменения. Для работы разработчика необходимо чтобы эти проверки были быстрыми и надежными, что делает роль разработчика инфраструктуры значимой и ответственной.
Необходимые навыки и знания
Стоит отметить, что нам важны не столько конкретные знания, сколько способность рассуждать. Поэтому, в случае, если вы, например, не знаете как что-то устроено, достаточно рассказать, как это могло бы быть реализовано.
Полезная, но необязательная литература
- Операционная система UNIX: Ольга Стесик, Сергей Немнюгин, Андрей Робачевский
- Алгоритмы. Построение и анализ: Кормен Томас Х., Лейзерсон Чарльз И.
- Алгоритмы. Построение и анализ: Кормен Томас Х., Лейзерсон Чарльз И.
- Распределенные системы. Паттерны проектирования: Брендан Бёрнс
- Внутреннее устройство Windows: Руссинович Марк, Соломон Дэвид