DevOps: делать самому или передать на аутсорсинг?
Мечта любой компании, связанной с IT, – выпускать релизы чаще, быстрее и качественнее, чем конкуренты. Или, как минимум, укладываться в анонсированные сроки и не краснеть за готовый продукт. И вот, в порыве производственной паники многие вспоминают об услышанном где-то таком трендовом сейчас термине, как “DevOps”. Может, нанять и себе такого специалиста? А может, лучше просто передать DevOps на аутсорсинг?
Зачем вообще внедрять DevOps?
Об этом мы уже писали раньше, поэтому вспомним лишь главное. DevOps – это методология, объединяющая разработчиков ПО и IT-специалистов на всех этапах создания программного продукта. Проводником такой методологии выступает DevOps-инженер – универсальный специалист, который должен понять и сплотить программистов, тестировщиков, сисадминов и вообще всех, кто работает над релизом. Его основная задача – синхронизировать, оптимизировать и автоматизировать рабочие процессы, а еще сделать среду разработки максимально приближенной к условиям использования готового продукта. Компания, внедрившая DevOps, получает ряд преимуществ:
- команда над проектом работает слаженно;
- релиз выполняется качественно и выходит ровно в оговоренные сроки;
- развертывание релиза занимает меньше времени, денег и трудовых затрат;
- возникшие проблемы быстро решаются, а необходимые изменения также быстро внедрятся в проект.
Все это, конечно, очень хорошо, но есть небольшая проблема. DevOps-инженер – профессия хоть и модная, но в СНГ еще мало кем понятая. Многие компании решили, что незачем нанимать специально обученного специалиста и пробовали переквалифицировать в девопсов рядовых менеджеров и сисадминов. Получалось, как правило, не очень. А нанимать в штат инженера, получившего сертификацию DevOps, не всем по карману. Но остается и третий вариант – передать DevOps на аутсорсинг.
Что делает девопс на аутсорсинге?
занимается установкой и сборкой docker-контейнеров;
отвечает за автоматизацию всех этапов производственного процесса;
обеспечивает взаимодействие занятых в проекте специалистов;
решает возникающие проблемы в процессе запуска продукта/выпуска релиза;
настраивает системы мониторинга и логирования;
внедряет Service desk, Confluence, Jira и другие сервисы;
следит за выполнением плана по релизу и т.д.
Одним словом, он занимается полноценным внедрением методологии DevOps. А еще подгоняет ее под текущую IT-инфраструктуру и бизнес-требования. И очень часто пользы от него гораздо больше, чем от штатного специалиста.
Штатный DevOps
- Получает фиксированную зарплату (одна из самых высоких в IT-отрасли).
- Требует затраты на рабочее место и прочие кадровые нужды.
- Работает по нормированному графику.
- Привык к однотипным задачам и условиям работы, как правило, не имеет возможности развиваться в других направлениях,
- Рано или поздно (по мере погружения в специфику одного и того же проекта) перестает видеть картину со стороны, что может сказаться на качестве его экспертизы.
DevOps на аутсоринге
- Получает плату за конкретные услуги.
- Работает удаленно, и только при необходимости приезжает в офис.
- Имеет опыт сопровождения самых разных проектов, умеет действовать в непредвиденных ситуациях.
- Заинтересован в высоком качестве выполнения работы.
- Всегда работает на конечный результат.
Как работает DevOps-аутсорсинг?
- Компания-аутсорсер проводит аудит, чтобы проанализировать текущий уровень и качество внедрения DevOps в IT-инфраструктуру Заказчика. В конце аудита аутсорсер дает рекомендации по улучшению текущей инфраструктуры и разрабатывает коммерческое предложение для заказчика.
- Заказчик и аутсорсер определяют состав, объем и сроки услуг, расписывают ответственности сторон и заключают договор о сотрудничестве.
- Аутсорсер закрепляет за Заказчиком DevOps-инженера или инженеров, которые сопровождают проект и решают сформированные в договоре задачи.
- С оговоренной периодичностью инженер отправляет Заказчику отчеты о результатах своей работы.
Как видите, передать DevOps на аутсорсинг совсем несложно. Зато очень полезно для бизнеса.