Найти в Дзене
IT-Academy

Кто такой DevOps-специалист?

DevOps (англ. сокр. от Development Operations) — одна из самых молодых и в то же время самых высокооплачиваемых IT-сфер. Первые DevOps-инженеры появились в 2007-2008 годах, когда сообщества разработчиков забеспокоились проблемами взаимодействия команд разработки с другими IT-специалистами. DevOps-инженеры оптимизируют процессы разработки и эксплуатации софта, в результате чего приближают момент релиза продукта и снижают производственные затраты. Но это максимально общие фразы, которые не дают полного представления о том, что же входит в обязанности девопса, какие знания ему нужны и главное — как прийти в эту профессию. Чтобы разобраться с тем, кто же такой DevOps-специалист и как он связан с администрированием и программированием, мы пообщались с Алиной Фрейдиной, тренером курсов «Администрирование Linux» и «Развертывание систем разработки ПО» в IT-Academy и DevOps Engineer в компании Scand. — Алина, вы в IT с 2007 года. Расскажите, пожалуйста, почему выбрали именно сферу администриро

DevOps (англ. сокр. от Development Operations) — одна из самых молодых и в то же время самых высокооплачиваемых IT-сфер. Первые DevOps-инженеры появились в 2007-2008 годах, когда сообщества разработчиков забеспокоились проблемами взаимодействия команд разработки с другими IT-специалистами.

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

Чтобы разобраться с тем, кто же такой DevOps-специалист и как он связан с администрированием и программированием, мы пообщались с Алиной Фрейдиной, тренером курсов «Администрирование Linux» и «Развертывание систем разработки ПО» в IT-Academy и DevOps Engineer в компании Scand.

                                                      На фото: Алина Фрейдина
На фото: Алина Фрейдина

Алина, вы в IT с 2007 года. Расскажите, пожалуйста, почему выбрали именно сферу администрирования и оптимизации процессов?

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

Почему DevOps-специалистам и системным администраторам в IT нужно уметь администрировать Linux?

— Потому что Linux больше распространен как серверная система. Windows сервера тоже встречаются, но их значительно меньше. Как правило, их выбирают там, где просто нет человека, который умеет администрировать Linux.

За что программисты любят операционную систему Linux?

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

Правда, что в Linux нет вирусов?

— Это неправда.

А почему существует такой миф? Может, их меньше?

— Вирусы в основном используются, чтобы завладеть секретной информацией: паролями, ключами. Linux пользователей значительно меньше. Если брать домашние компьютеры, на них преимущественно стоит Windows. Соответственно, там больше шансов добыть информацию. А еще пользователи Linux, как правило, более опытные. Вероятность того, что они поймают этот вирус: перейдут по ссылке и установят вредоносную программу, — низкая.

Курс по администрированию Linux полезен как для действующих и будущих сисадминов, так и для DevOps-специалистов. Если системный администратор – профессия знакомая, то сфера DevOps понятна не всем. Что же такое DevOps?

Если кратко, то кроме администрирования серверов девопсы занимаются автоматизацией этого процесса. В то время как администраторы вручную настраивают сервера, устанавливают и настраивают программы, Devops-специалисты пишут скрипты и используют специальные инструменты для того, чтобы машина сама выполняла эту работу. Чтобы писать такие скрипты, нужно понимать, какую последовательность действий необходимо выполнить на сервере для получения нужных результатов. Без знаний администрирования Linux это сделать невозможно.

Получается, что девопсы это еще и программисты. Какой тогда язык им нужно знать?

— Каждый инструмент, который используется для автоматизации, имеет свой язык. Например, в Ansible, Docker, Kubernetes для описания конфигурации используется YAML, у Terraform — другой язык, у Puppet — третий. Можно писать скрипты на Bash, Python, PowerShell и т.д. То есть знаний одного языка точно будет недостаточно.

А все языки, использующиеся для автоматизации процессов, можно назвать языками программирования?

— Нет. YAML — это как язык разметки XML. То, что написано в XML, можно описать с помощью YAML или JSON. Одни приложения используют JSON для своей конфигурации, а другие — YAML. Это не языки программирования, а скорее, языки описания конфигурации.

Какие языки и технологии изучаются на курсе «Развертывание систем разработки ПО»?

— На курсе изучаются Ansible, Puppet, Docker, Kubernetes, Jenkins, Terraform.

Кто из IT приходит в сферу DevOps?

— У меня на курсе обучаются люди, работа которых не связана с компьютером. Они просто изучали Linux для себя и пришли на курc по DevOps. Но прийти в эту сферу можно откуда угодно: администрирования, тестирования, разработки и т.д. Если есть знания Linux, приходите.

В чем состоят главные обязанности DevOps-специалиста?

— Все зависит от конкретного проекта.

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

Говорят, что в вакансиях требования на позицию DevOps-специалиста достаточно размытые и очень разнятся. Так ли это?

Да, вообще даже неправильно говорить Devops-специалист (об этом я также рассказываю на курсе). Нет четкого описания девопс-специалиста, поэтому и требования такие размытые. Каждая компания вкладывает в эту позицию что-то свое. В большинстве случаев они ищут системного администратора с большим перечнем навыков. Обычно под DevOps-специалистом подразумевается администратор, который знает, как налаживать CI/CD — процессы, включающие в себя автоматизацию всего того, чем занимается сисадмин.

Справочно: Айтишное сообщество и правда настороженно относится к тайтлу «DevOps-инженер». Они придерживаются популярного высказывания о том, что «DevOps — это не отдельный человек, а целая философия» и не одобряют фразы вида «DevOps — это должность».

Что вам больше всего нравится в DevOps?

— Мне всегда нравилось программировать. И уйдя в администрирование, я первое время даже хотела переучиться на Java-программиста. Хотя в администрировании мне тоже было интересно: разбираться, почему что-то не работает, чинить это или настраивать какую-то сложную конфигурацию. Сейчас моя работа мне очень нравится — в ней есть и администрирование, и программирование. А еще я получаю особый кайф, когда заставляю машину с помощью скриптов делать то, что до этого делала вручную.

#Devops #linux #сисадмин #системное администрирование