Наконец, если до этого момента все было в порядке, компания Argo CD может использовать одну из своих стратегий для раскрытия API конечным пользователям безопасным способом, который не нарушит работу пользователей, использующих API.
Таким образом, развертывание конвейера CI/CD помогло фармацевтической компании сократить время развертывания с нескольких часов до всего лишь 10 минут, а также существенно снизить технический долг и риски безопасности.
Дисциплинированный подход CI/CD позволяет выпускать надежное и качественное программное обеспечение за несколько дней (даже часов), а не месяцев или кварталов. По сути, CI/CD - это конвейер, в котором новые программные функции проходят различные этапы от начального кодирования до выпуска для пользователей в производственной среде.
Примечания
Чандра Гнанасамбандам, Джанаки Паланиаппан и Джереми Шнайдер, "Каждая компания - это софтверная компания: Шесть "обязательных условий" для достижения успеха", McKinsey.com, 13 декабря 2022 г., https://www.mckinsey. com/capabilities/mckinsey-digital/our-insights/every-company-is-a- software-company-six-must-dos-to-succeed.
Оливер Боссерт, Крис Ип и Ирина Старикова, "Beyond agile: Reorganizing IT for faster software delivery", McKinsey.com, 1 сентября 2015 г., https://www.mckinsey.com/capabilities/mckinsey-digital/our-insights/ beyond-agile-reorganizing-it-for-faster-software-delivery.
Сантьяго Комелла-Дорда, Джеймс Каплан, Линг Лау и Ник Макнамара, "Проворные, надежные, безопасные, отвечающие требованиям ИТ: Выполнение обещания DevSecOps", McKinsey.com, 21 мая 2020 г., https://www.mckinsey. com/capabilities/mckinsey-digital/our-insights/agile-reliable-secure- compliant-it-fulfilling-the-promise-of-devsecops.
Вишал Далал, Криш Кришнакантан, Бьорн Мюнстерманн и Роб Патенге, "Технологический долг: Восстановление технологического капитала", McKinsey.com, 6 октября 2020 г., https://www.mckinsey.com/capabilities/mckinsey-digital/our-insights/ tech-debt-reclaiming-tech-equity.
Глава 20.
Инструменты для повышения квалификации ваших разработчиков
Если вы дадите людям инструменты, а они будут использовать свои природные способности и любопытство, они разработают такие вещи, которые удивят вас гораздо больше, чем вы могли бы.
ожидали.
-Билл Гейтс
GitHub, как известно, в течение многих лет пытался предоставить своим инженерным командам возможность использовать локальные среды для ноутбуков (на macOS). Несмотря на все усилия, локальные среды разработки оставались хрупкими. Невинные изменения могли привести к тому, что локальная среда становилась бесполезной, а на ее восстановление уходили часы драгоценного времени. Часто случались сбои из-за несогласованных конфигураций локальной среды. GitHub решил эти проблемы, перейдя на виртуальные среды, которые стандартизированы, имеют предустановленные инструменты и доступ к любым необходимым данным.
По мере масштабирования организации и перехода от пяти agile-подразделений к 20, 100 или даже 1 000+ подразделениям разработки следует переходить к средам самообслуживания (sandbox), которые самомасштабируются и предоставляют все современные и стандартизированные инструменты, необходимые agile-подразделениям для разработки решений. Это позволит избежать необходимости нагружать ИТ-отдел запросами на предоставление инфраструктуры и инструментов, а командам разрабатывать код, который будет работать в производственной среде.
Специальная команда инженеров, которую иногда называют командой платформы разработчиков, внедряет инструменты и технологии, обеспечивающие соблюдение стандартов, разработанных командой архитектуры предприятия. Эта команда также предоставляет инструменты, ориентированные на пользовательский опыт, для оптимизации работы agile-подразделений, помогая им сосредоточиться на быстром предоставлении ценности, а не на том, чтобы зацикливаться на управлении и поддержке инфраструктуры и инструментария.
По их словам: Пересмотр способов создания сервисов в облаке
Мы поняли, что нам нужно использовать совершенно новый подход к управлению и предоставлению услуг в облаке. Мы сформулировали три принципа, которых мы собирались придерживаться:
Услуги, которые мы предлагали командам разработчиков, должны были быть полностью стандартизированы и автоматизированы... чтобы больше не было нестандартных/случайных запросов.