Компьютерная Академия Онлайн Азербайджан - полноценное IT-образование‎ для взрослых и детей. Мы обучаем с 1999 года. Авторские методики, преподаватели-практики, 100% практических занятий.

Ваш браузер устарел!

Вы пользуетесь устаревшим браузером Internet Explorer. Данная версия браузера не поддерживает многие современные технологии, из-за чего многие страницы сайта отображаются некорректно, и могут работать не все функции. Рекомендуем просматривать сайт с помощью актуальных версий браузеров Google Chrome, Safari, Mozilla Firefox, Opera, Microsoft Edge

ШАГ логотип

Что скрывается под понятием DevOps: рассказываем о профессии

IT Step

Soft Skills

Программирование

10.05.2023

473 просмотра

В этой статье мы постарались рассказать о сути работы DevOps engineer. Материал написан для новичков и тех, кто интересуется профессией, направлением.

В Интернете много мнений, и они отличаются. Рассмотрим тему под разными углами.

Кто такой DevOps: мнения расходятся

В мире программистов есть 2 мнения, что такое DevOps. И каждое мнение имеет своих поклонников и недоброжелателей: «Вы неправильно толкуете термин!» Обо всем по порядку.

DevOps как практика, философия. 10-15 лет назад разработчики отвечали за программу, а администраторы — что эта программа попадает к пользователю через сервер.

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

Ситуация изменилась — компании работают над серией из более 10 программ каждый день. Нужно выпускать обновления, проверять на ошибки и баги. Загляните в смартфон и посмотрите, сколько приложений получили обновление сегодня — не 1 и не 2.

Чтобы конкурировать сейчас, нужно работать быстрее и качественнее других компаний. А как это сделать, если разработчики только пишут код, а системные администраторы — устанавливают на сервер и следят за работой приложения? Как общаться быстрее?

За build отвечает девелопер (Dev), а за test и release сисадмин, оптимизатор (Ops)

Это способ общей работы девелопера и администратора (оптимизатора продукта). Если сисадмину нужно обновление программы, то он делает запрос разработчику в командном чате. А написать скрипт для сервера сисадмин может самостоятельно.

DevOps пользуются компании, вроде Amazon, Microsoft, Etsy, Ebay. Для них важно устранить больше багов и выпустить обновлений, чтобы соревноваться с конкурентами за внимание потребителя.

Если говорить проще, то DevOps — новые правила или способы общения разработчика и администраторов в компании.

DevOps как профессия. Так называют верхушку айсберга в мире системных администраторов. Девопс делает так, чтобы сисадмины и разработчики работали над продуктом быстрее. Посмотрите на упрощенные примеры:

DevOps к коллегам: «Общаемся в Microsoft Teams. Задачи и процесс выполнения прошу зарегистрировать здесь. Возникнут вопросы — пишите мне». Разработчик пересылает код и документацию сисадмину. Тот переносит код на сервер. На этапе установки администратор может найти ошибку. Он не пишет разработчикам, а решает проблему самостоятельно — как DevOps.

Не все инструменты обязательно знать в DevOps. Например, в одной компании работают в Slack. А в другой с Microsoft Teams.

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

Зачем девопсу программирование

Рассмотрим на двух примерах: в первом сисадмин не знает программирования, а во втором — может сам написать код.

Сисадмин получил код от разработчика. Его задача — перенести код на готовый сервер. На этом его рабочие задачи заканчиваются. Для дополнительных программ или обновлений обращается к разработчику. Пройдет немало времени, девелопер напишет скрипт, и сисадмин установит программу на сервер. Это долго.

Другой сисадмин видит, что без скрипта не сможет установить обновление для программы. Вместо письма разработчику, он напишет скрипт сам: сисадмин знает базу программирования, работает с Python и справится с задачей. Разработчик работает над улучшением программы, а сисадмин ему не мешает. Так быстрее.

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

Без навыков программирования это все равно, что искать иголку в стоге сена: человек не знает размер игры и в каком уголке стога искать. А с базой программирования DevOps понимает, с чем работает девелопер.

Пример инструментов для Junior DevOps.

Если DevOps не знает программирования, то он — системный администратор. Он не читает код от разработчиков и не пишет для серверов.

Где В DevOps пригодится язык Python

С основами программирования для DevOps знакомим студентов на курсе Компьютерной Академии IT STEP «DevOps-инженер». Рассказываем о преимуществах Python, что нужно знать и уметь системному администратору и как закрывать одним языком программирования 99% задач по автоматизации.

Ниже рассмотрим примеры, где DevOps-инженер использует Python в работе.

Инструмент для анализа «холостых ресурсов». Компании мобильной разработки, сотовые операторы пользуются облачными хранилищами. Привычный пример — Google Drive, только в тысячи раз больше. На поддержку облака компания тратит миллионы долларов в год. На Python можно написать бота, который находит неиспользованные места в облаке и отключает их. В среднем, через бота можно убрать до 40-50% неработающих ресурсов и сэкономить столько же бюджета.

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

Python lint-тестов для Ansible и Kubernetes. Чтобы программу увидели люди, ее нужно протестировать и установить на сервер. Тестируют код либо руками и глазами (вставлять в программу, проверять ошибки), либо через готовое решение — написать на Python автоматический тестер. Это полезно, когда сисадмины выпускают 10 программ и 100 обновлений в день. Проверить вручную все невозможно.

Существуют и простые примеры: для онлайн-банкинга пишут специальный скрипт. Чтобы не перегружать сервер, онлайн-приложение раскидывают на части и устанавливают на сотни серверов. Если в сервисе случится сбой, сисадмины найдут ошибку в конкретном сервере, где меньше кода. Это быстрее, чем искать строчку кода в базе на 10 000 одного сервера.

Опорные тезисы

У DevOps 2 точки зрения: первая — это набор практик, как быстро общаться разработчикам и системным администраторам. Вторая — это человек, который налаживает непрерывную работу между отделами. Например: продукт-сервер-обновление-сервер-обновление…

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

Python достаточно для 99% задач системного администратора.



АВТОР:

IT Step

STEP IT Academy

Что такое дизайн мышление и как оно используется в современном дизайне

1. Что такое дизайн-мышление? 2. Как дизайн мышление используется в современном дизайне? 3. Как работает дизайн мышление в дизайне продуктов? 4. Преимущества дизайн мышления для бизнеса 5. Какие основные принципы дизайн мышления? 5.1. Понимание проблемы и сосредоточение на пользователе 5.2. Поиск и генерация идей 5.3. Создание прототипа 5.4. Итерации и тестирование 6. Примеры использования дизайн мышления 7. Как дизайнерам прокачивать дизайн мышление

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

ШАГ логотип

Введение в UI дизайн: создание эффективных и привлекательных интерфейсов

1. Основные принципы UI дизайна 1.1. Принципы композиции 1.2. Работа с пространством и сеткой 1.3. Баланс и выравнивание элементов 1.4. Учет потока взгляда пользователя 2. Цветовая схема и использование цвета 2.1. Психология влияния цвета 2.2. Выбор цветовой схемы 2.3. Цвета для выделения и навигации 3. Типографика и читабельность 3.1. Выбор подходящих шрифтов 3.2. Размер и стиль шрифта 3.3. Читабельность текста на различных устройствах 4. Использование иконок и пиктограмм 4.1. Разработка и выбор подходящих иконок 4.2. Использование иконок для повышения понятности 5. Принципы успешного дизайна интерфейса

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

ШАГ логотип

Какие soft skills развивает изучение программирования

1. Развитие мышления 1.1. Аналитическое мышление 1.2. Поиск креативных решений проблемы 1.3. Логическое и структурированное мышление 2. Точность и внимательность к деталям 3. Коммуникационные навыки 4. Управление временем и планирование 5. Терпение и упорство 6. Адаптивность и гибкость 7. Креативность и инновационность 8. Перспективы развития Soft skills

Soft skills, или так называемые гибкие навыки, играют очень важную роль в нашей современной общественной и деловой среде. Это навыки, которые помогают нам эффективно взаимодействовать с другими людьми, успешно решать проблемы и достигать своих целей. Они включают такие качества, как коммуникация, лидерство, креативность, адаптивность и многое другое. Изучение программирования не только дает нам технические умения, но и способствует развитию различных soft skills. Программирование требует аналитического мышления, решения проблем, командной работ�

ШАГ логотип

В мире трехмерного творчества: путеводитель для начинающих в 3D моделировании

1. Что такое 3D моделирование 2. Лучшие программы для работы с 3D моделированием 2.1. Autodesk Maya 2.2. Blender 2.3. Cinema 4D 2.4. 3ds Max 2.5. ZBrush 3. Требования к компьютерам для работы с 3D моделированием 4. Возможности работы в сфере 3D моделирования 5. С чего начать для изучение 3D моделирования

Трехмерное моделирование стало неотъемлемой частью различных сфер и отраслей. Оно позволяет создавать уникальные визуальные образы, анимации, виртуальные миры и многое другое. В следующих разделах мы более подробно рассмотрим лучшие программы для работы с 3D моделированием, требования к компьютерам для эффективной работы, возможности трудоустройства и начальные шаги для изучения этой захватывающей области. Что такое 3D моделирование 3D моделирование – это процесс создания трехмерных объектов и сцен, которые могут быть визуализирова�

ШАГ логотип

Этот сайт использует Cookies

Политика конфиденциальности