Кто такой devops-инженер?

Почему это работает

Первые упоминания о методологии DevOps появились в 2009 году. Она стала логическим продолжением развития общих принципов Agile и их ценностей. К тому моменту корпоративный бизнес окончательно убедился в том, что линейные процессы не всегда отвечают существующим задачам.

Как один из «гибких подходов», DevOps сфокусирован на скорости работы, быстром принятии решений и удовлетворенности клиентов. Благодаря непрерывности процессов, разработчики тратят меньше времени и чаще выпускают релизы. Так создается среда, в которой руководство может отслеживать результаты работы на каждом из этапов.

Растущая популярность этого подхода привела к появлению профессии DevOps-инженера. Такой специалист знает, как работают все участники процесса и отвечает за автоматизацию процессов на практике.

У DevOps есть несколько основных особенностей.

Непрерывная коммуникация между командами. Реализация методологии DevOps предполагает, что разработчики, QA-инженеры, тестировщики и системные администраторы работают согласованно. Постоянная коммуникация между участниками процесса позволяет быстрее готовить и выпускать программные продукты с меньшим количеством ошибок.

Меньшее количество программных сбоев из-за различий в конфигурации инфраструктур. DevOps-инженер создает идентичную рабочую среду для всех участников жизненного цикла ПО благодаря внедрению модели «Инфраструктура как код» (IaC). В результате получается избежать ситуаций, когда программное обеспечение работает в тестовой среде, а на стадии продакшена появляются непонятные ошибки.

Быстрое предоставление новой инфраструктуры. Это еще одно преимущество подхода IaC: процесс настройки инфраструктуры аналогичен процессу программирования ПО. Отпадает необходимость ручной настройки и обновлений. Инфраструктура существует в виде готового кода, становится масштабируемой, что сокращает время ожидания.

Автоматизированное тестирование. Непрерывное тестирование — один из ключевых компонентов DevOps подхода. Для этого используются специализированные инструменты, такие как Travis CI и Selenium.

Быстрая и надежная доставка обновлений. Благодаря тесному сотрудничеству между командами и внедрению автоматизации выпуска приложений (application-release automation), программное обеспечение обновляется быстрее, чем при традиционном процессе разработки. ARA позволяет ускорить процесс развертывания новых сборок с минимальным временем простоя и меньшим количеством ошибок конфигурации, которые обычно возникают при развертывании вручную.

Меньшее количество ошибок после релиза. С внедрением непрерывного тестирования, QA-инженеры тратят гораздо меньше времени на контроль качества и тестирование и, следовательно, пропускают меньше ошибок.

Повышение доверия пользователей. Поскольку бизнес знает, что функциональность программного обеспечения тщательно проверяется на всех этапах, его уверенность в качестве работ повышается.

Кто нанимает DevOps-инженеров

Сейчас DevOps — стандарт разработки. Без него не получится быстро выпускать IT-продукты — есть риск, что конкуренты уйдут далеко вперёд, а компания останется без прибыли. Поэтому DevOps-инженеров стараются нанимать все, кто так или иначе связан с разработкой и осознал ценность методологии DevOps.

Такие компании делятся на три группы:

IT-компании. Зарабатывают именно благодаря программам, приложениям и сайтам, то есть разработка — основное направление их деятельности. Google, Mail.ru, Uber, Booking, 1С, разработчики игр — всё это IT-компании. Им жизненно необходим DevOps, так как без него не получится эффективно выпускать главный продукт.

Обычные компании с IT-отделом. Эти компании в основном занимаются чем-то другим: продают одежду, выдают кредиты, строят дома. Но у них есть IT-отдел, который разрабатывает сайты или мобильные приложения. Ozon, Сбербанк, «Лента» — всё это обычные компании с IT-отделом, который занимается их сайтами и приложениями. Теоретически они могут существовать и без DevOps, но тогда конкуренты их обгонят, поскольку будут выпускать приложения быстрее и завоюют больше клиентской любви.

IT-агентства. Это компании, которые занимаются разработкой под заказ — для других компаний. Например, небольшой магазин хочет сайт или приложение, но не может позволить себе целый IT-отдел — и нанимает IT-агентство, которое всё разработает. Таким компаниям DevOps нужен, чтобы быстрее и качественнее делать свою работу для клиентов.

В крупных компаниях обычно есть штат разработчиков, тестировщиков и сисадминов. Поэтому девопса приглашают именно для внедрения методологии, настройки всех процессов и автоматизации. В небольших компаниях денег на такой большой штат нет.

Поэтому часто от сисадмина ждут, что он будет выполнять ещё и работу DevOps-инженера — поддерживать разработчиков и помогать тестировщикам. Это нормальная практика в небольших компаниях — здесь не найти столько задач, чтобы понадобились и девопс, и сисадмин.

Карьера DevOps

Истории есть самые разные. Кто-то приходит в DevOps сразу из университетов и курсов, некоторые из разработчиков становятся DevOps-инженерами и наоборот — все зависит от желания людей. Я, например, сам начинал как программист, писал на смеси.Net и Delphi, потом работал системным администратором, а позже попал в первую DevOps лабораторию ЕРАМ и стал работать в этой же компании. 

Другой пример — бывший тестировщик-автоматизатор, который работает со мной в команде. Он сам когда-то подошел ко мне и сказал, что хочет стать DevOps-инженером. Мы вместе посмотрели, какие скиллы ему нужно прокачать, и составили программу. Через 3 месяца он закончил обучение и перешел на проект к большому заказчику. 

Стать DevOps-инженером может любой. Главное — наличие аналитического мышления и желания учиться. 

Coding Salaries in 2019: Updating the Stack Overflow Salary Calculator

Прогнозы делать достаточно сложно, так как все очень быстро меняется. Но могу сказать, что само направление будет развиваться и эволюционировать достаточно долго. То, что есть сейчас, далеко не предел. 

Курсы, которые могут пригодиться:

  • Continuous Delivery & DevOps (University of Virginia)
  • DevOps Culture and Mindset (University of California)
  • Machine Learning with Python (IBM)
  • Профессия DevOps-инженер

Кто такой Data Scientist. Обзор изнутри от Арсения Кравченко
По теме
Кто такой Data Scientist. Обзор изнутри от Арсения Кравченко

Кто такой нарративный дизайнер. Обзор изнутри от Олега Синицына
По теме
Кто такой нарративный дизайнер. Обзор изнутри от Олега Синицына

Как обычно пишут программы

Традиционный цикл разработки программ выглядит так:

  1. Программисты пишут код небольшими порциями.
  2. Когда очередная версия программы готова, она отдаётся в отдел тестирования.
  3. Тестировщики пишут тесты и ищут ошибки в коде. Если нашли — отдают программистам, и всё начинается с первого пункта.
  4. Если ошибок нет, код отправляется на сборку, чтобы включить его в новую версию программы.
  5. После добавления этого кода в новую версию код снова тестируют — всё ли нормально, дружит ли новый код со старым и нет ли каких конфликтов. Если есть — код отдаётся обратно программистам.
  6. Если всё в порядке, код идёт в бой, например, выкатывается на сайт.

Кажется, что всё так и должно быть. Но в крупных компаниях с большими проектами у такого подхода появляется много минусов.

История появления DevOps

До 2000 года в основном применялась каскадная модель разработки и обновления ПО c последовательной реализацией масштабных проектов. У разработчиков ПО могло уйти несколько месяцев на создание больших блоков нового кода, затрагивавших все приложение или большую его часть. Из-за огромного числа изменений для интеграции нового кода требовалось еще несколько месяцев.

Последующее тестирование кода с участием специалистов по обеспечению качества (QA), безопасности и эксплуатации занимало еще какое-то время. В результате новые версии ПО, обновления или исправления ошибок выходили с интервалом в несколько месяцев или даже лет. Такой способ доставки компонентов методом «большого взрыва» (big bang) обычно сопровождался сложными, рискованными планами развертывания, трудностями при планировании синхронизации с системами выше и ниже уровнем, а также большими надеждами на то, что бизнес-требования не изменятся существенным образом спустя несколько месяцев, когда продукт будет готов к развертыванию в рабочей среде.

В целях ускорения разработки и повышения качества коллективы разработчиков начали применять гибкие методологии разработки программного обеспечения, которые носят итерационный, а не линейный характер и фокусируются на более мелких и частых обновлениях базы исходного кода приложения. Одним из важнейших представителей данной группы методологий является CI/CD или непрерывная интеграция и непрерывная доставка. Согласно принципам CI/CD, небольшие фрагменты нового кода добавляются в базу исходного кода каждую одну-две недели, с последующей автоматической интеграцией, тестированием и подготовкой к развертыванию в рабочей среде. Гибкая модель разработки ПО заменила метод «большого взрыва» на серию «небольших шагов», ограничив при этом риски.

Чем больше гибкие методики разработки ускоряли процессы разработки и доставки программного обеспечения, тем очевиднее становилось, что разрозненные ИТ-операции — предоставление ресурсов системы, настройка, приемочное тестирование, управление и мониторинг — являются узкими местами в жизненном цикле доставки ПО.

Таким образом, методология DevOps возникла на основе Agile. Новые процессы и инструменты позволили перенести принципы непрерывной итерации и автоматизации CI/CD на остальные этапы жизненного цикла доставки ПО. Это дало возможность наладить тесное сотрудничество между отделами разработки и эксплуатации на каждом шаге.

Как начать карьеру «девопсера»

Google позволяет разобраться не только в том, чем занимается конкретный специалист, но и подсказывает более эффективный путь развития в выбранном направлении. Если заранее выяснить, какие навыки, знания и умения пригодятся «девопсеру» или другому кадру, получится в разы быстрее добиться успеха.

О спектре знаний

DevOps инженеры должны обязательно обладать следующими познаниями:

  • грамотное использование Google и других поисковиков для обнаружения необходимой информации;
  • навык программирования на нескольких языках (Python, C, Java и другие – достаточно начальных познаний);
  • принципы работы ОС;
  • облачные сервисы;
  • умение разбираться в гибридных решениях;
  • понимание микросервисов и систем оркестрации;
  • хорошая разборчивость в системах конфигурации.

Также человек должен быть усидчивым, сообразительным и активным. Развитие коммуникативных навыков и стрессоустойчивость – верные друзья в построении карьеры. Навыки психологии тоже лишними не будут, но к обязательным их отнести нельзя. А вот понимание математики и информатики – да.

Инструменты

Google говорит о том, что DevOps инженер будет работать с определенным инструментарием. И в нем придется хорошенько разобраться. Иначе достигнуть успеха и быстрого продвижения по карьерной лестнице не получится ни при каких обстоятельствах.

Если верить Google, то DevOps инженеры должны уметь работать с:

  • системами контейнеризации Dicker;
  • оркестраторы контейнеров Kubernetes;
  • платформа GitLab;
  • Jenkins, которая делает CI/CD-паплайны;
  • Ansible – управление инфраструктурой;
  • платформенные облачные сервисы;
  • сервисы для мониторинга и оповещений.

Трудно поверить, но и это еще не все. В Google полно информации о том, в чем должны разбираться и уметь хорошие DevOps инженеры.

Дополнительные умения

Чтобы автоматизировать работу команды и получить максимальный результат, «девопсерам» придется хорошенько постараться. Для продвижения по карьерной лестнице нужно много работать и участвовать во всевозможных практиках.

А еще хорошо разбираться в:

  • системах сборки;
  • средствах проверки исходных кодификаций;
  • хранении и передаче артефактов;
  • утилит мониторинга и оповещений;
  • сервисах логирования.

Чем больше знает специалист, тем лучше. Спектр его умений пригодится и системным администраторам (не в сфере DevOps), и остальным членам команды.

О зарплате

Немаловажным моментом, которым интересуются люди перед началом любой работы – это вопрос заработка и карьерного роста. В ближайшее время соответствующая деятельность точно будет развиваться и цениться на рынке труда.

Вопрос заработка DevOps инженеров зависит от региона, в котором будет трудиться сотрудник. Новичкам готовы платить от 90 000 рублей в месяц, постепенно повышая подобный показатель.

Средний заработок рассматриваемой категории подчиненных в компании – 350-400 тысяч рублей. В некоторых фирмах готовы платить от 500 до 800 тысяч. Навыки таких работников высоко ценятся и будут цениться.

Об обучении

Также в Москве и других регионах страны встает вопрос относительно того, как именно можно стать DevOps инженером. Существуют различные варианты развития событий:

  1. Обучиться в ВУЗе. В России это – не лучший и не самый распространенный вариант. «Девопсеров» не обучают, но можно выбрать IT-направление, аналитику, маркетинг и программирование. За рубежом некоторые высшие учебные заведения подготавливают именно рассматриваемую категорию специалистов.
  2. Отдать предпочтение самообразованию. Для новичка – не лучший выход. DevOps, согласно данным Google, является областью обширной и требующей огромного спектра знаний и навыков. Самостоятельно справиться с поставленной задачей можно, только это будет очень долго. И не всегда эффективно.
  3. Завершить специализированные узкопрофильные курсы. Они есть и очные, и дистанционные. В течение нескольких месяцев (иногда – до года) образовательные центры будут подготавливать DevOps инженеров. Обучение ведется по строго намеченному плану. Результат – выдача сертификата установленного образца.

Каждый сам решает, каким образом ему поступить. Но понятно одно – «девопсеры» перспективны. И освоить подобную сферу деятельности будет проще сисадминам, IT-шникам и аналитикам.

Обязанности

Когда DevOps специалист начинает свою карьеру, он должен хорошо понимать, что делает. В обязанности соответствующего лица входят следующие занятия:

  • выбор среды оркестрации и архитектуры;
  • автоматизация тестирования и иных этапов разработки приложения;
  • настройка серверов;
  • заливка кодификаций;
  • проведение проверки среды после и до создания контента;
  • настройка взаимосвязей и окружения между инструментарием для разработки софта;
  • контроль за обеспечением постоянно функционирующей автоматизированной линии сборки ПО – конвейера.

Это – основные обязанности DevOps-специалиста. Но каждый случай в компании индивидуален. Поэтому спектр требований к работнику и его должностные «занятия» могут варьироваться.

Что ему нужно знать?

DevOps-инженер — многопрофильный специалист, и для успешной работы ему необходимо разбираться в нескольких IT-направлениях. Требования к нему в разных компаниях отличаются, но база для всех примерно такая:

  • Опыт системного администрирования. Объективно определить уровень непросто, так как нет точных критериев оценки, но без базовых знаний Linux и сетей придется тяжко, поскольку придется плотно взаимодействовать с Ops-командой (командой инфраструктуры).
  • Навыки разработки. Нужно иметь представление о процессе разработки ПО и знания некоторых языков программирования (по многим оценкам, Python изучить легче всего. Также в тренде Java, Go и др.). Без понимания, как написать обращение к API и обработать его ответ, а также умения работы с Git точно не обойтись.
  • Английский язык. Он нужен постоянно — большая часть необходимой информации публикуется на англоязычных сайтах.

Минусы поэтапной разработки

Всё дело в том, что с таким подходом есть чёткое разделение зон ответственности. Допустим, у нас простая разработка, которая разделена по отделам так:

  • есть программисты, которые пишут код;
  • дизайнеры, которые натягивают дизайн на этот код;
  • тестировщики;
  • и отдел выпуска финальных релизов.

Проблема в том, что у каждого из этих отделов своё рабочее окружение: они сами следят за своими библиотеками, фреймворками и операционной системой. Из-за этого то, что работает у одних, может не работать у других.

В итоге все тратят время на синхронизацию требований к коду, компонентам, фреймворкам и библиотекам. Работа стоит, код не пишется.

Подробности

DevOps делает возможной непрерывную поставку. Предприятиям, которые хотят по-настоящему непрерывно доставлять ценность клиентам и заинтересованным лицам, необходимо владеть мышлением и инженерными практиками DevOps. В эпоху непрерывной цифровой революции и инноваций эти навыки станут крепкой опорой для предприятия. Но добиться непрерывной поставки, особенно в больших масштабах, непросто. Подход SAFe к DevOps помогает предприятиям сделать это.

Смена парадигмы 

ИТ-компании по всему миру страдают от одного старого конфликта: процессы поставки зависят от команд с противоположными целями. Agile-команды должны быстро вносить изменения, чтобы идти в ногу с бизнес-потребностями. Команды эксплуатации должны управлять потоком изменений, чтобы поддерживать стабильность решений, управляющих бизнесом. Команды безопасности должны установить политики, предотвращающие внесение изменений с уязвимостями, которые могут привести к утечке данных. Чтобы исправить это, необходима новая система — «фабрика программного обеспечения», которая объединяет команды и увеличивает скорость поставки, одновременно повышая качество, безопасность и стабильность решения. Только тогда можно будет предсказуемо и эффективно удовлетворить потребности всех команд и клиентов.

К сожалению, большинство ИТ-компаний изначально не поддерживают этот тип системы. Их процессы и политики создавались для предотвращения частых изменений производственных систем. Следовательно, необходима смена парадигмы. Подобно тому, как Agile представляет собой смену парадигмы в том, как мы работаем, DevOps представляет собой смену парадигмы в том, как мы создаем решения. Использование DevOps для открытия нового способа создания цифровых решений является ключом к преобразованию устаревших жизненных циклов разработки в Конвейер Непрерывной Поставки.

Непрерывное обучение и эксперименты

Конвейер Непрерывной Поставки является результатом эффективного применения DevOps в потоках создания ценности. И сегодняшние потоки создания ценности должны вести себя иначе, чем в старой парадигме, в основном потому, что сегодняшние цели поставки технологий другие.

Безусловно, предприятия вынуждены выпускать Фичи быстрее, чем когда-либо, чтобы оставаться актуальными и конкурентными. Но цель не быстрее выпускать Фичи. Цель в том, чтобы обучаться быстрее. И знания происходят из понимания ценности Фич на рынке. Поскольку Фича бесполезна до того, как будет поставлена клиентам, сегодня предприятия должны находиться в постоянном цикле создания, измерения и обучения. Без этого невозможно быстро развивать цифровые решения, которые привлекают и удерживают клиентов. На рисунке 3 показано, что Конвейер Непрерывной Поставки SAFe работает как цикл, способствующий быстрым экспериментам с низким уровнем риска и непрерывному изучению потребностей, привычек и предпочтений клиентов.

Рисунок 3. Конвейер Непрерывной Поставки как Цикл Непрерывного Обучения

Этот механизм непрерывного обучения и экспериментирования сильно отличается от традиционных водопадных процессов поставки. Для его реализации требуются иное мышление, иные навыки и иные инструменты во всем потоке создания ценности. Здесь нет места крупным партиям, разрозненным командам, формальному взаимодействию, монолитным архитектурам, согласовательным комитетам, политикам и героизму. Вместо этого новая система должна опираться на общие ценности, кросс-функциональное взаимодействие, измеримые цели, автоматизацию и современные инженерные практики.

На рисунке 4 показано, как DevOps обеспечивает Конвейер Непрерывной Поставки. Он предоставляет образ мышления, практики и инструменты, необходимые для ускорения поставки и обучения на каждом этапе.

Рисунок 4. DevOps обеспечивает Конвейер Непрерывной Поставки

По сути, DevOps — это мышление, которым руководствуются в работе и при принятии решений во всем потоке создания ценности. Подход SAFe CALMR к DevOps воплощает это мышление и занимает центральное место в фигуре, пронизывая все аспекты Конвейера Непрерывной Поставки. Методы и инструменты DevOps позволяют напрямую развивать и поддерживать Решение. В SAFe они сгруппированы в практические области, представленные внутренними кольцами модели.

Что из себя представляет DevOps engineer

Так как профессия появилась совсем недавно, в конце 00-х годов, какого-то точного определения для этой профессии не устоялось. Можно его сформулировать так: DevOps-engineer – это человек, который занимается внедрением методологии DevOps.

Есть несколько вещей, с которыми должен быть знаком DevOps-engineer:

Системы контроля версий. В резюме любого DevOps-engineer есть строчка с указанием Git, SVN, Mercurial и т.п.
Непрерывная интеграция (CI)
Тут можно обратить внимание на Jenkins и TeamCity. Хочу отметить то, что инструментов для DevOps так много, что всех их эта статья охватить не сможет
Поэтому не обязательно делать акцент именно на том, что указано в этом списке.
Контейнеры. Например, Docker или Vagrant.
Инструменты автоматизации инфраструктуры. Тут пригодится знание Python, Shell или Bash. Помимо очевидных плюсов автоматизации, она к тому же еще и экономит кучу времени DevOps- engineer’ам.
Облачные сервисы. Один из самых востребованных навыков для DevOps-engineer. В качестве примера можно привести Microsoft Azure, Google Cloud, Amazon Web Services.
Тестирование. Одна из обязанностей DevOps-engineer — ускорить процесс доставки ПО клиентам. Т.к

большинству компаний важно качество своего программного обеспечения, тестирование стало неотъемлемой частью работы DevOps-engineer.
Хорошие навыки общения. Специалист DevOps должен обладать развитой эмпатией, так как общения на этой должности будет много

Конфликты не будут играть на руку для этого человека.

Далее обсудим тот вопрос, с которого мы начали эту заметку.

FAQ

Могу ли я устроиться на позицию Девопс-инженера без опыта работы в ИТ?

Это маловероятно. Специалист, который претендует на эту должность должен иметь хорошее понимание внутренних процессов разработки ПО, особенностей взаимодействия между отделами, а это невозможно без опыта работы на смежной специальности системного администратора, программиста, тестировщика.

Какой опыт работы нужно иметь, чтобы претендовать на должность инженера?

Здесь сложно вывести единую формулу, ведь это, в первую очередь, зависит от навыков и знаний человека. Если у вас уже есть неплохой опыт в разработке или администрировании, можно пройти специализированные курсы, которые обычно длятся от нескольких месяцев до года, и уже начинать пробоваться на позицию DevOps engineer. Кому-то удается достичь желанной вакансии даже спустя полгода, кому-то – через несколько лет. Все зависит от дисциплины, целеустремленности, скорости усвоения информации.

Можно ли работать в небольших компаниях или стартапах?

Как показывает практика, эта должность чаще встречается в ИТ-гигантах и крупных компаниях. Возможно, в будущем ситуация изменится. Это объясняется и достаточно высокой зарплатой специалиста, которую могут себе позволить далеко не все маленькие студии, а также отсутствием реальной необходимости во внедрении методики. Стартапы также нечасто могут себе позволить таких профессионалов, ведь их задача как можно быстрее запустить приложение и проверить свою идею, даже если ее реализация пока сильно хромает.

Методы и средства реализации: как работает DevOps

Методологически девопс поддерживает принципы Agile и Continuous delivery – непрерывной поставки ПО. Для организации процессов могут быть использованы такие методы Agile, как Scrum, Kanban и их варианты.

В плане инструментов для автоматизации процессов разработки, тестирования и развертывания используются следующие технологии и популярные средства их реализации:

  • Распределенный контроль версий (Git, Mercurial, Subversion, CVS);
  • Контейнеризация (Docker, Rocket, Kubernetes);
  • Непрерывная интеграция – сборка и тестирование конечного продукта (Jenkins, TeamCity, Bamboo);
  • Управление инфраструктурой как кодом (Puppet, Chef, Ansible);
  • Виртуализация (Vagrant);
  • Балансировка облачных ресурсов (VMware DRS).

За выполнение девопс-процессов отвечает DevOps-инженер, который синхронизирует все этапы создания программного продукта, от написания кода до тестирования и выпуска приложения. Такой специалист взаимодействует с отделами разработки и администрирования, а также автоматизирует выполнение их задач, внедряя вышеуказанные программные инструменты. Подробнее о сфере ответственности DevOps-инженера мы рассказывали здесь и здесь.

Поскольку DevOps-инженер совмещает множество профессий (администратора, разработчика, тестировщика и менеджера), то он должен иметь опыт администрирования различных операционных систем и облачных платформ. Также необходимы знания сетевых технологий и умения писать скрипты и код на нескольких языках программирования . Как эти компетенции разделяются с другими участниками Agile-команды, мы рассмотрели здесь.

Инструменты Devops

Отличие от остальных IT-специалистов

Понимание относительно того, кто такие DevOps инженеры, на данный момент весьма расплывчато. Ни в Google, ни в других поисковых системах нет четкого определения соответствующего направления деятельности. Поэтому приходится разбираться, чем «девопсеры» отличаются от остальных IT-специалистов.

Их часто путают с системными администраторами (сфера DevOps тесно связана с этой областью), а также аналитиками больших данных. Далее рассмотрим ключевые различия между перечисленными кадрами.

Ключевые моменты

Стоит обратить внимание на то, что все упомянутые направления исторически появились в разное время:

  • системные администраторы – в 80-90-х годах 20 века;
  • «девопсеры» — начало 21 века (2000-е годы);
  • BigData-специалисты – вторая декада 21 века (начиная с 2010 года).

Хотя кажется, что все перечисленные работники занимаются одним и тем же, у них огромная разница в прикладных сферах ответственности и объектах работы:

  • сисадминам нужно работать с программным и аппаратным обеспечением ПК пользователей, а также с периферийными устройства и сетевыми девайсами;
  • работники, занятые в Big Data, отвечают за кластеры Apache Hadoop, облачные сервисы, виртуальные сервера;
  • ДевОпс-сотрудники заняты конфигурациями рабочих, тестовых и production-серверов.

Также разница между рассматриваемыми областями, согласно данным из Google, заключается во взаимодействии с категориями участников IT-процессов:

  • системный администратор (не DevOps) – общается с конечными пользователями и руководством;
  • BigData-админ – взаимодействует с аналитиками и инженерами по большим данным, разработчиками ПО, а также Data Scientists;
  • «девопсер» — работает с разработчиками и тестировщиками, иногда сам помогает им справляться с порученными задачами.

Но и это еще не все. Цели и задачи у любой из упомянутой сферы деятельности будут сильно отличаться друг от друга. При помощи соответствующих знаний любой человек сможет определиться, в каком направлении ему работать в будущем.

Цели и задачи

Google – поисковая система, которая нередко помогает отыскать ответы на самые трудные вопросы. Это – простой способ поиска информации в Сети. И Google указывает, что цели и задачи у сисадминов, БигДата-специалистов и «девопсеров» колоссально различаются.

Системные администраторы в основном занимаются:

  • настройкой и сопровождение локальных сетей;
  • аппаратным оборудованием и программным обеспечением (настройкой, мониторингом, установкой, отладкой);
  • операционными системами;
  • созданием и поддержкой пользовательских учетных записей;
  • резервированием информации;
  • обеспечением информационной безопасности;
  • администрированием серверов корпоративного типа (веб, почтовых);
  • ремонтом аппаратных частей компьютеров и периферийных девайсов;
  • технической поддержкой пользователей.

BigData-специалист отвечает за:

  • создание и дальнейшее сопровождение IT-инфраструктуры для систем Биг Даты;
  • конфигурирование локальных и облачных кластеров;
  • базы данных для Big Data (их администрирование);
  • настройку облачных сервисов и платформ, необходимых для решений в области больших данных;
  • ETL-системы;
  • корпоративные хранилища информации;
  • разработку политики управления БигДатами пользователями;
  • информационную безопасность кластеров;
  • нагрузку на серверы;
  • резервное копирование и восстановление имеющихся материалов (архивов) при необходимости.

Принципы работы DevOps инженеров по данным Google – это:

  • развертка поставленного разрабами релиза;
  • обеспечение исправной работы веб-серверов и серверов инфраструктуры разработки;
  • создание продуктивных сред к частым корректировкам;
  • стандартизация окружения создания контента;
  • автоматизация процессов развертывания, а также тестирования;
  • создание непрерывной интеграции продукта;
  • ответственность за бесперебойную, стабильную работу утилит;
  • обеспечение высокого уровня доступности выпускаемого софта;
  • масштабирование утилит;
  • копирование резервного характера, а также мониторинг сервисов и серверов.

Информация из Google, написанная выше, поможет разобраться в том, какой работник и чем конкретно занимается, а затем сделать осознанный выбор профессии.

Внимание: в условиях современного развития IT-технологий особым спросом пользуются БигДата-админы, а также DevOps инженеры

DevOps-инженер – это

В реальном мире полно перспективных и относительно новых профессий. Сделать карьеру «девопсера» может каждый, но сначала предстоит разобраться, кто это вообще такой. Уловить связь выбранного направления с аналитикой и программированием весьма проблематично.

«Девопсер» — это многопрофильный специалист. Они:

  • занимаются автоматизацией процессов;
  • разбираются в принципах работы разработчиков и менеджеров;
  • проявляют аналитические навыки.

Такой инженер объединяет всех членов команды при разработке приложений и иных продуктов в единое целое. Иногда соответствующую роль распределяют на нескольких людей.

Внимание: не стоит путать данную профессию с системным администрированием, а также со специалистами по BigData. Главная задача ДевОпс-сотрудников – это максимальное ускорение, упрощение и автоматизация создания приложений и иного программного обеспечения на каждом этапе реализации

Начиная с написания кода, заканчивая непосредственным релизом утилиты

Главная задача ДевОпс-сотрудников – это максимальное ускорение, упрощение и автоматизация создания приложений и иного программного обеспечения на каждом этапе реализации. Начиная с написания кода, заканчивая непосредственным релизом утилиты.

Инструменты для работы

Для того, чтобы добиться успехов в выбранном направлении, а также получать хорошую зарплату, пользователю предстоит постоянно изучать что-то новое. В стандартных требованиях к DevOps специалистам имеются запросы относительно используемых инструментов. Это – приложения, без которых справляться с поставленными компанией задачами невозможно.

Начинающий и хороший специалист использует:

  • Jenkins;
  • системы контейнеризации Docker;
  • оркестраторы контейнеров;
  • платформы организации воркфлоу под названием GitLab;
  • приложения для управления инфраструктурой;
  • платформенные облачные сервисы;
  • утилиты мониторинга и оповещений.

Теперь каждый более-менее понял, о каком работнике идет речь. Инженеру предстоит много практиковаться и учиться, набираться опыта в выбранном направлении. Иначе получать хорошую зарплату не представится возможным.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Adblock
detector