Курс Software Engineering
- Online
- Для початківців, Для досвідчених
- Other
![]() |
|
| Навчальний центр: | IT-Столиця |
|---|---|
| Формат: | Курс |
| Мова викладання: | Ukrainian |
| Тривалість навчання: | 10 занять |
| Початок курсу: | Будь-який момент |
| Вартість навчання: | 6 100 UAH за курс |
Курс Software Engineering побудований таким чином, що студенти розглядають п'ять складових процесу роботи, щоб отримати повне уявлення про процес розробки ПО. Continuous Integration, Testing, Delivery, Deployment і Operation.
Програма курсу
Підготовчий етап
Визначається рівень учнів, вибудовується комунікація з ними. Ознайомлення з планом занять і робота з теорією і методичними матеріалами.
Continuous Integration
- Основні поняття у галузі розробки програмного забезпечення
- Взаємодія розробника з членами команди
- Застосування Git для командної роботи над кодом
- Веб-додаток для управління завданнями Github
- Складання робочого графіка і менеджмент ресурсів
- За допомогою яких інструментів реалізують перевірку якості коду
- Автоматизація та управління завданнями за допомогою Jenkins
- Бранчінг версій для релізу і стабілізація коду
Continuous Testing
- Принципи розробки TDD (test-driven development)
- Як відбувається тестування якості коду із застосуванням SonarQube
- Юніт-тести й покриття коду
- Налаштування профілів воріт якості Quality Gates
- User Story Isolation
- Як визначити уразливості коду
- Відправлення коду в репозиторій
- Мануальне тестування
- Автоматизоване тестування
- E2E - тестування функції в реальних сервісах
- UI - тестування інтерфейсу шляхом імітації дій користувача
Архітектура програмного забезпечення (Software Architecture)
- Зовнішні чинники якості - robustness (стійкість), correctness (коректність), reusability (повторне використання), extendibility (розширюваність)
- Який буває архітектура ПО - Serverless, SOA, Web-Queue-Worker
- Типи архітектури: Standalone, N-tier, SOA, Microservices, Big Data / Big Compute, Serverless, Web-Queue-Worker, Event-driven architecture
- Моделі хмарних сервісів. XaaS, SaaS, IaaS, PaaS
- Збір вимог, постановка задачі estimates, pre-sales, RFI/RFP - запит інформації й запит пропозиції
- Робота з зовнішніми факторами якості
Проєктування програмного забезпечення (Software Design)
- Архітектура ПО і проєктування
- Архітектурне рішення і дизайн інтерфейсу
- Графічне представлення програмного коду
- Розподілене обчислення - теорія та алгоритми
- Polyglot Persistence
- Polyglot Programming
- Що таке парадигми програмування
- Функціональне та логічне програмування
- Процедурне програмування й ООП
- Структура даних
- Компілятор і інтерпретатор
- Відносини між класами в ООП: композиція і декомпозиція, асоціація, успадкування, агрегація
- Загальна структура організації проєкту
- Компонентна модель
- Дизайн-шаблони GRASP, T-diagrams, UML, MVC (MVVM)
- Документація
- CAP-теорема
- RDBMS
- NoSQL
- Graph DB, DB Migration
- Написання мікросервісу для API на мові Java
- Створення мікросервісу для аутентифікації за допомогою Node.js
- Багатопотокове програмування C++
- Алгоритми lock-free
- Angular/Typescript (front-end складова сервісу)
- Groovy для Jenkins DSL
- Підключення Postgresql, MongoDB і Neo4j
- Аутентифікація й авторизація. Контроль доступу RBAC/ABAC
- Message brokering
- Чим відрізняються принципи mobile-first і mobile-only
- Waterfall, RUP, Agile
- Багатопотокове програмування, клієнт-серверні системи, P2P
- Технічний борг, legacy-продукти, рефакторинг
- Кешування
- Multitenancy, аудит, брендинг, GDPR
Програмний інтерфейс додатку API
- Як створюється інтерфейс взаємодії
- Принципи об'єктно-орієнтованого програмування SOLID
- Контрактне програмування - специфікації інтерфейсів
- Що таке ортогональний API
- Стандарти API - GraphQL, RESTful API, OpenAPI
- Впровадження системи API-менеджменту
- Як організувати пагінацію (pagination)
- Rate Limits - обмеження частоти запитів до API для оптимізації роботи додатка
- Огляд ML
Continuous Delivery
- Внутрішня структура розробки ПО
- Сховище артефактів в репозиторії
- Що таке змінні середовища
- NoOps, Opsless
- Технологія Docker. Як використовувати Docker compose, щоб запустити додаток-контейнер
- Swarm
- Kubernetes
- Service Mesh (Istio)
Continuous Deployment
- Середовище розробки: Preview Env, Development Env, Test Env, Production Env
- Ефективність моделі follow-the-sun
- Швидкість розгортання версії ПЗ і вартість розробки
- A/B, Canary, 0-downtime, Blue-Green Deployment - шаблони розгортання
- Rolling updates - плаваючий метод оновлення ПЗ
Continuous Operation
- Технічна підтримка як частина розробки програмного забезпечення
- Обслуговування клієнтів і доопрацювання програми
- Планування розробки з урахуванням завдань SRE
- Лінії підтримки L1, L2, L3 і розв'язання клієнтських проблем
- Угода про рівень обслуговування SRE, SRE, SLI, SLA, SLO
- Відновлення даних і data backup strategy
- Системи моніторингу прогнозування
- Налаштування сповіщень про збої
Хмарні технології
- Хмарні технології як інструмент розробки
- Ключові технології хмарних сервісів
- Огляд основних хмарних платформ, їх архітектура
- Гібридна хмара - що таке і як з ним працювати
- Створення кластера для розгортання програми
- Робота з географічними зонами
- Апаратна і призначена для користувача віртуалізація
- Технології віртуалізації Docker і Kubernetes
Що вміють випускники курсу:
- Використовувати гілки та працювати в Git, знають стандарти зберігання програмного коду
- Ефективно проводити Release Management, керуючи процесом виходу програмного продукту
- Налаштовувати Quality Gates для SonarQube для оцінки якості коду, створювати користувальницькі ворота якості
- Проводити Code Review для підвищення якості коду програмних продуктів
- Формулювати бізнес-вимоги й перетворювати їх в технічне завдання
- Знають всі етапи життєвого циклу ПО і контролюють якість проходження кожного, починаючи з планування системи, закінчуючи її технічною підтримкою
- Уміють відправляти Pull Request, що є необхідною частиною процесу Code Review, і вносити зміни в код
- Знають принципи TDD (test-driven development) і застосовують їх у своїх проєктах
- Проводять налаштування систем (CI/CD), поєднуючи SonarQube, Jenkins, SonarQube, Github і Nexus для безперервної інтеграції
- Створюють фреймворки тестування і знають відмінності між end-to-end і юніт-тестуванням
Особливості курсу
- Викладачі практики
- Корпоративне навчання
- Можливість навчатись у вихідні
- Можливість влаштуватись у провідні IT-компанії
- Індивідуальне навчання
Читайте нас в Telegram, щоб не пропустити анонси нових курсів.
Схожі курси
Навчальний центр
Laba
Формат
Online
Початок навчання
10.03.2026
Тривалість
10 занять
Рівень
Для початківців
Мова навчання
Ukrainian
Вартість
уточнюйте
Навчальний центр
IT-школа СМАРТ
Формат
Online
Початок навчання
Дата формується
Тривалість
-
Рівень
Для дітей
Мова навчання
Ukrainian
Вартість
2 590 UAH за місяць
Навчальний центр
Laba
Формат
Online
Початок навчання
02.04.2026
Тривалість
4 тижнів
Рівень
Для початківців, Для досвідчених
Мова навчання
Ukrainian
Вартість
уточнюйте
Навчальний центр
CyberBionic Systematics
Формат
Online
Початок навчання
Дата формується
Тривалість
2 годин
Рівень
Для початківців, Для досвідчених
Мова навчання
Ukrainian
Вартість
445 UAH за курс
