Course cover

Експерт-лекції "Надійне програмування"

Експерт-курс служить цілям зростаючих ІТ-компаній: підвищити кваліфікацію та відповідальність розробників, скоротити бюджет розробки, знизити плинність кадрів, підвищити репутацію Компанії серед клієнтів.

Автор та викладач курсу

Bootstrap Themes

Володимир Обрізан

Кандидат технічних наук, директор та засновник Першого інституту надійного програмного забезпечення, директор та співзасновник ІТ-компанії Design and Test Lab.

Старший викладач

15 років досвіду старшим викладачем: з 2005 по 2020 рік у Харківському національному університеті радіоелектроніки. Теми курсів: проектування програмно-апаратних систем, багатоядерне програмування, програмування хмарних та мобільних платформ.

Програміст-практик

З 2011 року брав участь у компанії Design and Test Lab як виконавець, провідний програміст або керівник у десятках проектах: мобільні програми, десктоп-додатки, хмарні послуги. Мови: Python, Objeсtive-C, Swift, JavaScript, TypeScript.

Спікер

Десятки виступів на конференціях та семінарах з темами про надійне програмне забезпечення, архітектури, програмування та тестування: QAFest, Python fwdays, SoftServe IT Weekend, KharkovPy, iOS Ukraine та ін.

Консультант

Консультант керівників та власників айті-компаній. Теми консультацій: навчання персоналу, впровадження методів надійного програмування, технічний нагляд за процесом розробки програмного забезпечення, аналіз програмних проектів.

YouTube-лектор

Досвід 4 роки у записі відео-лекцій та проведенні онлайн-стримів на YouTube-каналі Першого інституту надійного програмного забезпечення: лекції, скрін-касти, практичні майстер-класи.

Вчений

Кандидат технічних наук за спеціальністю "Комп'ютерні системи та компоненти". Тема дисертації: "Мультиверсний паралельний синтез цифрових структур на основі System-C специфікації". Докторант Харківського національного університету радіоелектроніки.

Чому важливо розвивати професійну культуру в компанії?

Мета експерт-курсу

Експерт-курс служить цілям зростаючих ІТ-компаній:

  1. Підвищує кваліфікацію та відповідальність розробників за рахунок найвищих стандартів надійного програмування.
  2. Скорочує бюджет розробки, тому що не потрібно витрачати гроші на виправлення помилок та на оплату овертаймів інженерів.
  3. Знижує плинність кадрів, за рахунок підвищення мотивації та комфорту праці програмістів
  4. Підвищує репутацію Компанії серед клієнтів за рахунок здачі проектів у строк та якісно.
  5. Рок-зірки програмування захочуть потрапити до вас!

Огляд змісту експерт-курсу

Зміст курсу

  1. Введення в надійне програмування. Помилки в програмах призводять до катастроф. Вартість змін у проекті. Помилки призводять до збитків. Чому культура важлива? Що таке надійне програмування? Професійні етичні норми.
  2. Аналіз ризиків: менеджмент у надійному програмуванні. Чинник ризику в проекті. Що таке ризик? Невизначені події та умови. Типові ризики програмування. Категорії ризиків, методи ідентифікації. Каталоги ризиків. Профілактика ризиків, подолання наслідків. Приклад каталогу ризиків. Математична оцінка ризику. Реєстр ризиків, керування ризиками.
  3. Work Break Down Structure: менеджмент у надійному програмуванні. Типові завдання та болі керівника. Що таке Work Breakdown Structure (WBS)? Вигоди використання WBS. Створення WBS. Методи створення WBS: декомпозиція, експертна оцінка. Правила створення WBS. Вирішення типових проблем проекту за допомогою WBS. Форми запису WBS. Приклад WBS.
  4. Зовнішнє проектування. Відмінність зовнішнього та внутрішнього проектування. Помилки цілепокладання - найдорожчі! Рівні вимог: business needs, business cases, use cases. Якісні вимоги Верифікація: як скоротити помилки у вимогах? Важливість обмежень та нефункціональних вимог. Підвищення якості вимог. Виконувані специфікації. Аналітичні візерунки.
  5. Внутрішнє проектування. Методи зниження архітектурних помилок. Стандарти опису архітектури: Rational Unified Process. Стандарти опису архітектури: IEEE 42010. Якісна архітектура, тістопридатність. Виконувані специфікації. Стандартні архітектури. Бібліотека надійних компонентів
  6. Аналіз коду. Якісний код. Метрики коду. Статичний аналіз коду. SonarCloud – статичний аналіз коду у хмарі. Тактики покращення якості успадкованого коду. Правила проведення код-рев'ю.
  7. Автоматичні тести. Чому тести є важливими для програміста? У чому відмінність дефекту помилки. Опір автоматизації тестування. Класифікація тестів. Особливості тестування інтеграції компонентів. Test Driven Development. Тістопридатне проектування. Якісні випробування. Траблшутинг неякісних тестів.
  8. Рефакторинг. Що таке рефакторинг? Принципи рефакторингу. Підтримка рефакторингу в IDE. Характеристичний тест. Код із душком. Чому виникає поганий код? Сприйняття рефакторингу замовниками. Інструменти виявлення поганого коду. Місце рефакторингу у циклі розробки ПЗ. Проблема: Дублювання коду. Каталог рефакторингу.
  9. Бронювання найважливіших вузлів. Що таке бронювання найважливіших вузлів? Що таке відмова, чому вони відбуваються? Обмеження операційних систем та додатків. Що таке надійність? Відновлення після збоїв. Принципи бронювання найважливіших вузлів. Катастрофічна відмова. Принцип запобіжника. Тестування броні. Якою мірою бронювати додаток?
  10. Можливості Amazon Web Services для надійного програмування. Принципи проектування систем відмов від AWS. Автоматичне горизонтальне масштабування. Автоматизація змін у системі. Зони доступності – ізольовані відсіки. Що таке доступність (availability)? Elastic Compute Cloud (EC2). Elastic Load Balancer (ELB). Simple Queue Service (SQS). Simple Storage Service (S3). Elastic Container Service (ECS). Висока доступність при зміні системи. CloudFormation: інфраструктура як код.

Що таке надійне програмування?

Спосіб організації занять

Експерт-курс доступний одразу після оплати на освітній онлайн-платформі.

Мова запису відео-лекцій та освітніх матеріалів: російська.

Для проходження курсу потрібен персональний комп'ютер із операційною системою Windows, Mac OS або Linux, широкосмуговий доступ до мережі Інтернет, наявність аудіо-карти, мікрофона та динаміків або навушників, дисплей з мінімальною роздільною здатністю 1024✖️768, об'єм ОЗП 4 ГБ, об'єм жорсткого диска 100 ГБ.

Відгуки лектору

Володимир Мізь (Software Engineer, Doctoral Assistant, EPF Lausanne):

«Мені пощастило писати магістрський проект з обробки зображень на мобільних платформах під керівництвом Володимира у ХНУРЕ. Набутий досвід був один з найкорисніших за час навчання в університеті. Суворий, систематичний і водночас оригінальний та цікавий підхід до навчанню дозволив зрештою вивести студентський проект на професійний рівень. Фундаментальні знання, досвід роботи з мобільними технологіями та просто поради, отримані за час нашого спілкування, стали невід'ємною частиною успіху під час проходження співбесід не лише у IT компаніях України, а й у Європейських дослідницьких центрах.»

Іраклій Тавадзе (Lead iOS Developer - APP3null GmbH):

«Познайомився я з Володимиром у березні місяці 2013 року і досі безмежно вдячний йому за все, чого він мене навчив. Вова відмінний ментор, на нього потрібно рівнятися, а так само хороший людина, яка завжди підкаже мудру та правильну пораду. Дякую і удачі тобі у твоєму починанні!»

Владислав Тимофєєв (Web Developer):

«Володимир Ігорович, добрий вечір. Пишу вам, щоб подякувати за те, що на лекціях ви дали багато корисних порад, які поряд з іншими життєвими подіями послужили поштовхом до початку використання мозку. призначенню:) Хоч я і не став android або iOS розробником, але з лекцій виніс для себе інші, не менш важливі речі, такі як читання книг у чергах та транспорті, уміння терпіти труднощі та невдачі, продовжуючи пробувати знову і знову (як робітники, які впали з мосту:)), прагнення до постійного розвитку тощо. Ваші слова та поради дуже допомогли мені на самому початку, коли мої успіхи були зовсім незначними. Ви, не знаючи того, стали одним із тих нечисленних людей, які надихнули мене розвиватися і прагне стати професіоналом, а не штовхати болти, за що я дуже вам вдячний:) Це набагато більше, ніж хороша оцінка за якийсь предмет.»

Олександр Орлов (студент КІ-13-5, каф. АПВТ ХНУРЕ):

«Володимир Ігорович є першим куратором моєї групи, і, як не дивно, він не забував про нас протягом усього терміну його курування, як це робили інші. Він дуже добре ставиться до всіх своїх учнів, водночас не забуваючи їх лаяти за провини. Для всіх бажаючих влаштовував додаткові заняття. Також під час першої літньої практики він навчив нас працювати з BitBucket, із сервісом, який необхідний у будь-якій IT-компанії. Це все говорить про те, що він хороший викладач і людина, знає свою справу і те, що потрібно будь-якому початківцю розробнику. До того ж часто від Володимира Ігоровича можна почути якусь цікаву історію.»

Залишити відгук

Вартість

Одноразова оплата пластиковою карткою. 100% передоплата. Підтримка Apple Pay, Google Pay. Повернення грошей протягом 7 днів з моменту покупки. Протягом кількох хвилин після успішної оплати на електронну пошту, вказану під час оплати, прийде інструкція з доступом на освітню онлайн-платформу. Технічна підтримка: support@first.institute.

Пакет "Самостійно"

150$

  • Самостійне вивчення матеріалів курсу, спілкування у чаті з однодумцями.

Вміст пакету

Самостійно
Доступ на освітню онлайн-платформу
15 годин відео-лекцій (російською мовою)
Конспект лекцій "Надійне програмування" (російською мовою)
Закритий Телеграм-чат з автором курсу та однодумцями

Запросити друзів та знайомих на курс

Telegram
Linkedin
WhatsApp

ФОП Обрізан Володимир Ігорович, ІПН 3055516250. Послуги надаються згідно з договором публічної оферти. Контактний телефон: +380 73 971-54-71, email: support@first.institute