Tech-checks
DevOps Basics:
✔️ Що ти знаєш про DevOps? DevOps — це не технологія, а культура співпраці між командами розробки та операцій. Він керується такими принципами, як командна взаємодія, обмін знаннями, автоматизація та усунення непотрібних завдань. Команда повинна відчувати спільну відповідальність, а не тільки кожен за свою ділянку, і не хвилюватись за інших. Знаннями потрібно ділитись, документувати, щоб у разі зміни колективів - розробка продовжувалась, люди повинні навчатись та ділитись набутими зннаями. Все що забирає значний людський ресурс і може бути автоматизовано (що вручну кожного разу робити довше ніж написати скрипт один раз) - повинно бути автоматизовано, щоб не витрачати на це зайвий час. Все, що не приносить користі та прогресу - є непотрібними задачами і їх треба позбуватись, акцентуючи увагу на прогресі. Крім того, підходи DevOps в розробці пз спрямовані на мінімізацію часу від ідеї до реалізації цієї ідеї, покращенні фідбеку у всіх аспектах розробки, між всіма членами команди та замовниками, а також заохочення команди до постійного розвитку та покращення знань.
✔️ Назви найпопулярніші інструменти DevOps. GIT, Jira, Python, Bash, GNU/Linux, Ansible, Terraform, Docker, Kubernates, AWS, Azure, Jenkins, Prometheus
контроль версій (Git), керування проектами (Jira), мови програмування (Python, Bash), операційні системи (Linux), керування конфігурацією (Ansible), інфраструктура як код (Terraform), контейнеризація (Docker), хмарні платформи (Azure, Amazon) і безперервна інтеграція/безперервна доставка (Jenkins, Prometheus).
✔️ Назви фази DevOps (SDLC). Фази планування написання коду збірка продукту тестування розгортання експлуатація моніторинг Наприклад, планування передбачає визначення обсягу проекту, створення дорожньої карти та встановлення цілей. Написання коду передбачає написання та перегляд коду, а також використання систем контролю версій. Створення продукту передбачає компіляцію та упаковку коду в артефакт, який можна розгортати. Тестування включає різні типи тестування, такі як модульне, інтеграційне та приймальне тестування. Розгортання передбачає випуск продукту у виробниче середовище. Експлуатація передбачає управління та підтримку продукту у виробничому середовищі. Моніторинг передбачає відстеження та аналіз продуктивності продукту та відгуків користувачів.
✔️ Назви основні переваги DevOps. краща якість продукту, пришвидшення процесу розробки пз, взаємодія залучених осіб на кожному його етапі(фідбек), можливоісті до змін на будь якому етапі розробки(гнучкість), автоматизація процесів та усунення непотрібних завдань - економія часу та грошей.

✔️ Як ти підійдеш до проєкту, який потребує впровадження DevOps? Буду шукати слабкі місця досліджуючи KPI проєкту та вживати заходи щодо покращення показників. Key Performance Indicator (KPI) for DevOps measurements:
- Deployment frequency (як часто випускаються нові версії)
- Change lead time (Як довго зміни перебувають у розробці)
- Mean time to detection (Як швидко ви виявляєте проблеми)
- Mean time to recovery (Як швидко ви виправляєте проблеми)
- Change faillure rate (Яка частота помилок в релізах) було б корисно згадати про важливість співпраці та спілкування між різними командами в середовищі DevOps
✔️ Чому DevOps набув популярності за останні декілька років? Так, за останні кілька років DevOps набув популярності через зростаючу потребу у співпраці та автоматизації розробки програмного забезпечення. Однак відповідь можна було б покращити, згадавши конкретні переваги DevOps, такі як швидша доставка програмного забезпечення, покращена якість і підвищення ефективності. Крім того, у відповіді можна також згадати роль хмарних обчислень і зростання гнучких методологій у стимулюванні впровадження DevOps.
✔️ Які принципові відмінності між DevOps та Agile?
DevOps — це підхід до розробки програмного забезпечення, який зосереджується на співпраці та комунікації між розробниками програмного забезпечення та операційними командами, а Agile — це підхід до управління проектами, який наголошує на гнучкості та адаптивності в процесі розробки. DevOps спрямований на підвищення швидкості та якості доставки програмного забезпечення, тоді як Agile зосереджується на постачанні робочого програмного забезпечення за короткі ітерації.
✔️ Назви три найважливіші DevOps KPI. час впровадження змін, частота розгортання та середній час відновлення.
У DevOps три фази: планування, збірка та запуск. Фаза планування включає планування та проектування програмного забезпечення, фаза збірки включає кодування та тестування, а фаза запуску включає розгортання та моніторинг. Крім того, важлива співпраця та спілкування між командами на кожному етапі. Конкретні KPI для кожного етапу, наприклад час виконання змін на етапі планування, частоту розгортання на етапі збірки та середній час відновлення на етапі запуску. Крім того, важливо вимірювання задоволеності клієнтів і впливу на бізнес як KPI для DevOps.