Про DevOps та CI/CD для проектних менеджерів-початківців

Про DevOps та CI/CD для проектних менеджерів-початківців
5 хв. читання

Запитання про DevOps та CI/CD ставлять на технічній співбесіді, навіть якщо ви щойно завершити курси Проектного менеджмента. На перші ваші місяці роботи, вам точно не треба будуть глибокі знання у цій темі, але базове розуміння, що до чого - вам точно потрібно буде. Закриваємо ці білі плями у поточній статті.

Почнемо з історії, для того щоб було глибше розуміння та запам'ятався матеріал.

 

Чому виник DevOps?

Ще 15-20 років тому розробка програмного забезпечення (Development) та його підтримка і експлуатація (Operations) були відокремленими процесами. Команда розробників писала код і передавала його іншій команді, яка запускала код у продакшн.

Кожен робив свою частину роботи, за яку був відповідальний, і не втручався в інші процеси. Розробники зосереджувалися на написанні коду, а команда Ops (адміни, спеціалісти з налаштування інфраструктури, моніторингу, безпеки і т.п.) – на його розгортанні та підтримці. В результаті, коли виникали проблеми, відповідальність часто перекладалася з однієї команди на іншу. Розробники не могли дати відповіді на питання щодо інфраструктури, а команда Ops не завжди розуміли, як працює написаний код. Це створювало багато проблем.

Щоб вирішити ці проблеми, з’явився підхід DevOps, від двух слів Dev - Development та Ops - Operations. Тобто, цей підхід поєднав процеси розробки, тестування, розгортання та підтримки програмного забезпечення в одне ціле.

 

Що таке DevOps?

DevOps - це набір практик, який дозволяє розробникам і адміністраторам працювати разом, щоб швидше та ефективніше випускати якісне програмне забезпечення.

   Основні принципи DevOps:

  • Співпраця, тобто всі учасники процесу (розробники, тестувальники, адміністратори, менеджери) працюють разом.
  • Автоматизація - використовують інструментів для автоматичного тестування, розгортання та моніторингу.
  • Безперервна інтеграція та доставка (CI/CD) - це один із ключових процесів DevOps, що дозволяє командам автоматизувати оновлення програмного забезпечення та швидко впроваджувати зміни (детальніше - нижче).
  • Моніторинг - це контроль продуктивності системи та швидке виявлення проблем.

 

Підхід DevOps змінив традиційний процес розробки, роблячи його швидшим, гнучкішим і менш залежним від людських помилок. Один із ключових елементів DevOps - це автоматизація розробки та розгортання програмного забезпечення за допомогою CI/CD. 



Що таке CI/CD?

CI/CD складається з трьох основних процесів – Continuous Integration (CI), Continuous Delivery (CD) та Continuous Deployment (CD).

Розглянемо детальніше:

  • Continuous Integration (CI) – це практика, коли розробники регулярно інтегрують зміни у коді в загальний репозиторій. Після кожної інтеграції запускаються автоматичні тести, щоб виявити потенційні помилки якомога раніше. Це допомагає підтримувати стабільність коду та зменшує ризики великих збоїв при розгортанні нових функцій.
  • Continuous Delivery (CD) – це наступний етап після CI, який передбачає автоматичне підготовлення коду до випуску. Пройшовши всі необхідні тести, код передається на тестове або staging-середовище (про серидовища тут), але його розгортання в продакшн все ще відбувається вручну за рішенням команди.
  • Continuous Deployment (CD) – це максимальна автоматизація процесу. Якщо код успішно пройшов всі автоматичні тести, він автоматично розгортається у продакшн без ручного втручання. Це дозволяє випускати оновлення кілька разів на день.

Головна різниця між Continuous Delivery і Continuous Deployment полягає в тому, що при Continuous Delivery код все ще потребує ручного затвердження перед випуском у продакшн, а при Continuous Deployment цей процес повністю автоматизований.

 

DevOps та CI/CD для чайників. Гід для проектних менеджерів-початківців

 

Хто такий DevOps-інженер

Усі вищеописані процеси не відбуваються самі собою. За їх впровадження та підтримку відповідає спеціаліст, який поєднує знання розробки та адміністрування систем. Це DevOps-інженер.

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

DevOps-інженер - це фахівець, який поєднує навички розробника та адміністратора інфраструктури. Його основне завдання: автоматизація процесів розробки, тестування, розгортання та підтримки програмного забезпечення. Він забезпечує стабільну роботу сервісів, налаштовує CI/CD-процеси та допомагає командам швидше впроваджувати зміни.



Розуміння DevOps для проектного менеджера 

Розуміння DevOps корисне для проектного менеджера, оскільки воно допомагає:

  • Ефективно співпрацювати з командою розробки – розуміти, як працюють розробники, тестувальники та DevOps-інженери, щоб будувати правильну комунікацію.
  • Планувати реалістичні дедлайни – знати, скільки часу займають різні етапи розробки, тестування та випуску оновлень.
  • Координувати релізи – уникати плутанини під час випуску оновлень та зрозуміти, як працює процес розгортання продукту.
  • Розуміти важливість автоматизації – знати, як автоматизоване тестування та CI/CD допомагають зробити розробку швидшою та стабільнішою.
  • Швидко реагувати на проблеми – розуміти, як працює моніторинг та аналізувати збої для своєчасного реагування.
  • Не перевантажувати команду зайвими запитами – знати, які процеси можна автоматизувати, а які потребують ручного втручання, щоб правильно організовувати роботу команди.


Отже, DevOps та CI/CD - це важливі концепції у сучасній розробці. Хоча проектному менеджеру не потрібно знати всі технічні деталі, розуміння основних принципів допоможе вам ефективніше працювати з командою технічних спеціалістів

 

Більше подібних статтей:

Гід з Git для нетехнічних спеціалістів

Що таке API простими словами. Посібник для нетехнічних спеціалістів

За лаштунками веб-розробки: просто про фронт-енд (гайд для нетехнічних спеціалістів)

Тестування ПЗ: Все, що ви хотіли знати, але боялися запитати

Домен, хостинг та DNS що це і навіщо потрібно? Простими словами для нетехнічних спеціалістів

 

Помітили помилку? Повідомте автору, для цього достатньо виділити текст з помилкою та натиснути Ctrl+Enter
Tatiana 992
Приєднався: 1 рік тому
Коментарі (0)

    Ще немає коментарів

Щоб залишити коментар необхідно авторизуватися.

Вхід