Курс розроблений як послідовний шлях від основ до професійного рівня. Кожен модуль логічно випливає з попереднього.
На цьому курсі починають з розуміння того, як працює інтернет. Студенти дізнаються про клієнт-серверну архітектуру та налаштовують потрібне програмне забезпечення для роботи. Потім переходять до основ мови PHP: змінні, константи, типи даних та оператори. Розглядають керівні конструкції для управління потоком виконання програми.
Далі вивчають роботу з масивами та циклами. Особливу увагу приділяють асоціативним масивам. Потім переходять до функціонального програмування: створення функцій, область видимості змінних, суперглобальні змінні та сувору типізацію. Розглядають вбудовані функції для роботи з рядками та масивами, рекурсію та стилі кодування.
Студенти вчаться працювати з веб-формами: приймати та обробляти дані від користувача, фільтрувати та валідувати інформацію. Вивчають основи протоколу HTTP та заголовки запитів і відповідей. Окремий блок присвячений роботі з файловою системою - читанню та запису даних у файли.
Курс охоплює роботу з cookies та sessions, їх відмінності та спільне використання. Також включає регулярні вирази. Потім переходять до реляційних баз даних: вивчають SQL, запити на вибірку даних, роботу з JOIN та множинами. Розглядають запити з Group by, Having та DDL.
Студенти вивчають нормалізацію баз даних, цілісність інформації та транзакції. Опанують роботу з системою управління базами даних MySQL та навчаться надсилати запити до СУБД за допомогою PHP. Розглядають об'єднання таблиць, індекси, оптимізацію запитів за допомогою EXPLAIN, тригери, збережені процедури та двигуни InnoDB і MyISAM.
Три заняття присвячені роботі над спільним проектом "Інтернет-магазин". Студенти розбирають архітектурні рішення, знайомляться з шаблонами відображення та створюють власну CMS для проекту.
Курс охоплює роботу з хостингом, надсилання пошти, системи контролю версій та роботу з XML і JSON. Студенти вивчають основи Linux: налаштування Ubuntu, базові команди, встановлення веб-сервера Nginx, PHP та MySQL. Завершується модуль деплоєм Symfony-додатку на DigitalOcean.
Студенти опанують Git - від встановлення до роботи з основними командами. Ознайомляться з GitHub, GitLab та Bitbucket, навчаться створювати проект та заливати код на GitHub. Вивчать Composer: встановлення, автозавантажувач класів, роботу з Packagist та створення власних пакетів.
Окремий модуль присвячений новим можливостям PHP 7.0-7.4. Потім детально вивчають об'єктно-орієнтоване програмування: інкапсуляцію, спадкування, поліморфізм, класи, об'єкти, абстрактні класи, інтерфейси, методи, трейти, винятки, неймспейси та автозавантаження.
Курс охоплює стандарти PSR, шаблони проектування, принципи SOLID, DRY, KISS, YAGNI. Студенти вивчають Reflection API, PHPDoc, Standard PHP Library. Особливу увагу приділяють безпеці: основним типам атак, шифруванню, хешуванню та захисту веб-додатків.
Студенти навчаться налагоджувати код, попереджати помилки, профілювати та оптимізувати додатки. Вивчать типи помилок в PHP, конструкцію try-catch-finally, створення власних класів винятків та логування. Опанують інструменти налагодження xDebug.
Курс включає вивчення REST архітектури, моделі зрілості REST-сервісів, HATEOAS, стандартів HAL та JsonAPI. Студенти працюватимуть з клієнтом Guzzle та FOSRestBundle для Symfony. Окремий модуль присвячений тестуванню: юніт тести, функціональні тести та фреймворки Codeception, PHPUnit.
Студенти ознайомляться з CI сервісами Travis CI та Scrutinizer CI. Вивчать Docker: що таке контейнер, відмінності від Vagrant, роботу з docker-compose. Навчаться створювати LEMP стек на базі Docker.
Курс охоплює сервісну архітектуру: поняття сервісів, контейнерів та Dependency Injection. Студенти отримають огляд популярних фреймворків: Zend Framework, Yii, Phalcon, Laravel та Symfony.
Останні модулі присвячені детальному вивченню Symfony 4 Framework. Студенти навчаться встановлювати та налаштовувати фреймворк, створювати сторінки, працювати з роутингом, шаблонізатором Twig та Doctrine ORM. Розглянуть ключові компоненти Symfony: Yaml, Filesystem, Finder, Console, Process, PHPUnit Bridge, Validator та Form.
На курсі навчаться використовувати PHP для різноманітних завдань, писати складні проекти з використанням фреймворків, запускати власні проекти та працювати над ними. Випускники зможуть претендувати на посаду Junior Developer, знаходити проекти на фрілансі та презентувати себе роботодавцям. У рамках курсу працюють у групах над реальними проектами.
Курс включає допомогу ментора, практичні завдання, роботу над реальним проектом для портфоліо та видачу сертифіката про проходження.