На цьому курсі починають з основ. Розглядають операційні системи - їх типи, характеристики та для чого вони призначені. Далі йдуть типи розробки: веб-додатки, десктопні програми, мобільні застосунки та інші. З'ясують, які технології підходять для кожного типу. Також пояснюють ролі в команді - що роблять Back-end, Front-end, QA та інші фахівці, і як розподіляються обов'язки між джунами, мідлами та сеньйорами.
Тут вивчають мови програмування - їх класифікацію, де вони застосовуються та основні поняття. Далі переходять до інструментів: системи контролю версій як Git, середовища розробки IDE та аналізатори коду. Учні вчаться працювати з репозиторіями та обирати правильні інструменти для своїх задач.
Цей блок присвячений рівням архітектури ПЗ. Розглядають бізнес-архітектуру, інформаційну архітектуру, технологічну та архітектуру рішень. Пояснюють, як вони взаємодіють між собою та де застосовуються.
Модуль про бази даних. Спочатку вивчають реляційні бази даних - їх принципи проектування, сфери використання та ACID-властивості. Потім переходять до NoSQL: документарні, графові та пошукові бази даних. Порівнюють RDBMS та NoSQL, з'ясовують, коли краще використовувати кожен тип. Також розглядають принципи BASE та комбіновані рішення.
Тут заглиблюються в архітектурні патерни. Розбирають client-server, multi-tier, монолітну архітектуру, мікросервіси, SOA, Event-driven та CQRS. Вивчають принципи SOLID та вчаться переходити від одного типу архітектури до іншого.
Цей блок охоплює інтерфейси взаємодії. Аналізують XML та JSON формати даних, їх структуру та особливості. Порівнюють REST та SOAP, з'ясовують переваги кожного підходу. Далі йде Continuous Delivery та Continuous Integration - що це таке, які переваги дає та як відрізняється від традиційних методів deployment.
Завершальні модулі присвячені тестуванню та новітнім технологіям. Розглядають піраміду тестування, види тестування за часом проведення та тестову документацію. В кінці курсу ознайомляються з машинним навчанням, штучним інтелектом, блокчейном та ChatGPT - основами цих технологій та їх потенційним застосуванням.
Кожне заняття включає теоретичну частину та практичні завдання. Після кожного уроку - тест для перевірки знань. Практика будується на реальних кейсах. Всі учасники отримують доступ до записів занять, щоб можна було повторити матеріал у зручний час.