Джо Санчес, DevOps-евангелист из VMware, компании-разработчика программного обеспечения для виртуализации, выделил ряд навыков, которыми обязан обладать DevOps-инженер. Помимо очевидного знания методологии DevOps, этот человек должен иметь опыт администрирования ОС Windows и Linux и опыт работы с инструментами автоматизации вроде Chef, Puppet, Ansible. Еще он должен уметь писать скрипты и код на паре-тройке языков и разбираться в сетевых технологиях. В реальном мире все (или почти все) эти роли по отдельности обычно совмещает какой-нибудь другой человек.
- Облачные технологии быстро развиваются, знание инструментов дает возможность автоматизировать процесс тестирования кода и сборки приложений.
- DevOps-инженер — связующее звено между всеми этапами создания продукта.
- Так появилась DevOps или Development Operations, система методов для объединения процессов разработки и эксплуатации программного обеспечения.
- DevOps это просто недоучка, который не может полноценно кодить.
- Для этого надо обновлять серверы, следить за их безопасностью, предоставлять инструменты для команды.
DevOps — сравнительно молодое направление с хорошими перспективами развития. Чем больше ПО выпускают разработчики и чем быстрее меняется мир, тем большему количеству компаний будет нужен в команду DevOps-инженер. И пока таких специалистов мало, а требования размыты, при желании можно быстро продвигаться в профессии и строить карьеру.
Так Кто Же Такие Devops Инженеры?
Этому сотруднику нужны значительные компетенции в области разработки и эксплуатации, а также навыки межличностного общения для преодоления барьеров между разрозненными командами. Таким образом, основная кто такой devops задача DevOps-инженера — сделать всё для того, чтобы заказчик получил работающий релиз программного обеспечения в срок. Проще всего стать DevOps-инженером будет сисадмину или разработчику.
Гораздо проще перейти в DevOps, будучи разработчиком или системным администраторам, — в этом случае останется освоить примерно половину того, что требуется. Джуниор – это начинающий специалист с опытом 1-3 года. Он способен самостоятельно выполнять стандартные задачи по техническому заданию, составленному более опытным коллегой, но не может сам принимать решения в сложных ситуациях. В обязанности DevOps-инженера входят задачи разных этапов разработки. Еще можно подписаться на рассылку Devops Weekly, почитать статьи тематического портала DZone и начать общаться с DevOps-инженерами в Slack-чате.
Кто Такой Devops-инженер, Что Делает И Где Работает
Дмитрий Харламов начинал свою карьеру в DevOps с работы инфраструктурным администратором, а сейчас он релиз-инженер. Дмитрий рассказывает, как устроен CI/CD-пайплайн, можно ли убедить разработчиков в надежности своего решения и как стажировки помогают новичкам устроиться на работу. Я пришел в специальность из системного администрирования около трех лет назад. До этого работал в центре обработки данных (ЦОД), занимался системами мониторинга — приходилось заниматься как администрированием, так и немного разработкой. Особенно требуется умение работать в команде, поскольку DevOps-культура в целом подразумевает довольно плотное общение между командой разработки и командой инфраструктуры.
Но я знаю два случая из жизни, когда senior builders становились DevOps, потому что им надоело, как работает эксплуатация. И, к слову, помимо технических навыков вам точно потребуются некоторые софт скилы. Как минимум вы будете очень много общаться со всеми заинтересованными сторонами. Также вы будете продвигать новые идеи и технологии, что потребует от вас умения ясно и четко доносить свои мысли и умение спорить. Про стрессоустойчивость писать не буду, но терпение вам точно понадобится, поскольку внедрить новую крутую технологию зачастую невозможно в течение одного дня. Идея в том, что вы должны на хорошем уровне разбираться в среде, в которой будут работать ваши приложения.
Agile И Devops
Участники команды работают сообща и приобретают целостное видение работы всей системы. Это способствует эффективному взаимодействию и, как следствие, улучшению качества продукта. DevOps-специалисты востребованы по всему миру, поэтому можно начать карьеру за рубежом, например, с должности junior в иностранной IT-компании. Еще один карьерный путь – это открытие собственной веб-студии или IT-агентства. В последнем случае инженер сможет совмещать основные обязанности с управлением командой.
Дополнительные навыки и понимание всего процесса сделают вас востребованным сотрудником. Эта специальность появилась на рынке IT относительно недавно и почти сразу же стала одной из самых популярных и востребованных. Но стоит отметить, что многие работодатели, выставляя подобную вакансию, путают DevOps-специалиста с представителями других профессий или просто ищут 2 в 1.
Системный инженер должен научить разработчиков правильно работать с сервером, рассказать об особенностях технологий, которые там используются, объяснить, какую пользу для проекта это даст. То есть мы заинтересованы не просто установить софт, мы заинтересованы в том, чтобы с его помощью максимально быстро двигать проект вперед. При этом DevOps-инженер не пишет полноценных системных продуктов.
Конкретные инструменты и процессы сильно зависят от множества переменных, таких как язык программирования, степень автоматизации конвейера и тип рабочей инфраструктуры (локальная или облачная). Разработка релизов может потребовать выбора, выделения и обслуживания инструментов CI/CD или создания и поддержки индивидуальных сценариев сборки/развертывания. Весьма узкоспециализированные инженеры, появившиеся как средство стандартизации процессов сборки ПО и его релизов. В процессе введения повального Agile казалось бы они перестали быть востребованы, однако это далеко не так.
Сами по себе инструменты тоже необходимо обновлять, так как у них есть жизненный цикл. Постоянно появляются новые фичи, старые удаляются, обновляются безопасность, удобство. Например, если долго не обновлять базу данных, в какой-то момент ее больше нельзя будет обновить, если пропустить одну-две версии поэтапного обновления.