Курси Software Engineering в Києві. - Онлайн курсиПрограміст – це професія, для якої необхідно постійно розвиватися і навчатися. Технології вдосконалюються, з'являються нові мови й інструменти програмування. Щоб орієнтуватися у всьому цьому розмаїтті, фахівець повинен докладати зусиль.

Курс Software Engineering побудований таким чином, що студенти розглядають п'ять складових процесу роботи, щоб отримати повне уявлення про процес розробки ПО.
Continuous Integration, Testing, Delivery, Deployment і Operation.

Поєднання фундаментальної теорії та сучасних технологій розробки в програмі курсу дозволяє підготувати молодого фахівця до роботи в IT-сфері.

Освоївши нові знання, розробник розширює свої можливості та отримує стимул для кар'єрного просування. Сфера Software Engineering швидко розвивається і привертає все більше уваги серед інвесторів, великих компаній. Після курсу навчання студенти будуть мати системні знання і бачити структуру процесу розробки в комплексі. Такий підхід робить більш ефективним засвоєння матеріалу і застосування отриманих навичок на практиці.

Кому підходить цей курс.

  • Початківцям програмістам від Junior/Junior + рівня і до Middle.
  • Фахівцям по забезпеченню надійності (SRE-інженерам).
  • DevOps, фахівцям, які займаються автоматизацією процесів розробки для ознайомлення з новими інструментами.

Що вміють випускники курсу.

  • Використовувати гілки та працювати в 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 і юніт-тестуванням.

Курси Software Engineering. Програма.

Підготовчий етап.

Визначається рівень учнів, вибудовується комунікація з ними. Ознайомлення з планом занять і робота з теорією і методичними матеріалами.

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.

Фото учбового центру

Як проходить процес навчання

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

  Запис на курси через форму на сайті або по телефону
  Отримання навчальних матеріалів та інструкцій
  Теорія і практика в наших класах або віддалено
  Online-консультації по домашнім завданням
  Отримання сертифікату про закінчення курсу

Записатися

Переваги «IT Cтолиця»

  Зручне розташування
Ми знаходимося біля метро. Вам не доведеться витрачати час на дорогу
  Викладачі-практики
Наші викладачі - досвідчені практики, що мають величезний досвід
  З другом дешевше
Якщо ви приведете друга, то кожен отримає 50% знижку на навчання
  Якісно та недорого
Ми постійно поліпшуємо програми курсів і переглядаємо ціни
  Корпоративне навчання
Ми знаємо, як зробити роботу ваших співробітників більш ефективною
  Працевлаштування
Випускники мають можливість влаштуватися у провідні IT-компанії
  Невеликі групи
У наших групах від 2 до 3 чоловік, що дозволяє приділити увагу кожному
  Комфортні умови
Маємо в розпорядженні зручні класи, де панує позитивний настрій
  Працюємо по вихідним
Щоб у вас була можливість поєднувати навчання і роботу

Відгуки про нас

05.03.2024 Відгук про курси «Інженерна графіка в AutoCAD»

Спасибо большое за проведенные курсы AutoCAD. Они помогли заполнить «белые пятна», новой и полезной информацией. Материал был выложен... Детальніше

28.02.2024 Відгук про курси «3D MAX»

Я прошла курс 3D MAX. Очень довольна обучением. Преподаватель Андрей очень хорошо преподает свои предметы. Преподаватели: Кобзарь Андрей, Приходько... Детальніше

26.02.2024 Відгук про курс «Комп'ютерний дизайн в 3D MAX»

Прошол курс обучения по 3D MAX. Курсом доволен. Даже доволен тем, что за время обучения было два преподавателя, что дало возможность разногранию.... Детальніше

14.02.2024 Відгук про курс «3D MAX»

Прошла курс 3D max. Все понравилось, в том числе и преподаватель Андрей. Булгакова В. С. Детальніше

Часті питання та відповіді

Як дізнатися вартість навчання?

Вартість навчання залежить від обраного курсу, а також від типу навчання: індивідуально або в групі. Ціни вказані на нашому сайті на сторінці "Ціни", а також на сторінці курсу. Якщо у вас є питання - не соромтеся, задавайте їх за нашими телефонами або через контактні форми на сайті!

Який час навчання можливий?

Можливий час навчання зазначено на сторінці курсу. Зазвичай це ранкові (9:00-11:00, 11:00-13:00), денні (13:00-15:00, 15:00-17:00) і вечірні (17:00-19:00, 19:00-21:00) години. Крім того, є можливість навчатися і по вихідних!

Чи видаються у вас сертифікати?

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

Яким чином можна записатися на курси?

Для цього необхідно просто заповнити невелику on-line форму заявки на нашому сайті, або подзвонити за вказаним телефоном, або особисто прийти до нас в офіс.

Як і де харчуються наші слухачі?

Харчування слухачів, як таке, не передбачене договором та не входить до вартості курсу, реалізовується тільки за бажанням замовника.

Що включено до вартості курсів?

До вартості курсів входить безпосередньо заняття, методичні матеріали, котрі передбачені програмою.

Будьте в курсі новин Будьте завжди в курсі свіжих акцій і новин

Запис на курси

Передзвонити ?