backend разработчик на php otus

Backend-разработчик на PHP

Улучшаемые навыки

Где проходит обучение

Бонус

Начало учёбы и длительность

Стоимость

Описание курса

Вы сможете грамотно решать на PHP разнообразные задачи бэкенда Middle+ уровня. Подготовка проходит на реальных продуктовых задачах, после которых вы будете четко понимать, чем эффективные решения отличаются от плохого кода.

В последние годы работодатели отдают предпочтение PHP-разработчикам, которые не только пишут чистый код, но и умеют работать с инфраструктурой, в команде. Поэтому программа курса глубоко погружается в экосистему PHP:

В обновленной программе мы еще сильнее сместили фокус на паттерны проектирования, деплой и тестирование, добавив по ним занятий и уплотнив более легкие темы.

Для кого этот курс?

Для разработчиков, программирующих на PHP (опыт от 1 года) или на любом другом ООП (опыт от 3-х лет), которые хотят развиваться в backend-направлении или стать fullstack-специалистом.

Если вы уже знакомы с PHP, то понимаете, что для него важно придерживаться парадигм программирования. На курсе вы узнаете, чем парадигмы ООП отличаются от функционального программирования, научитесь применять SOLID, DRY, KISS и стандарты PHP — PSR.

Вы сможете оценить алгоритмическую сложность кода, работать с кодом с точки зрения анализа и будете понимать, почему решение работает медленно и как это поправить. Вы освоите тестирование, доставку в продакшн, а также познакомитесь с SRE-практиками, которые позволяют определять, насколько стабилен сайт, как повысить его стабильность и сделать отказоустойчивым.

— Опыт разработки на PHP от одного года или опыт разработки на другом языке от 3 лет (приветствуются любые языки ООП).
— Знание основных структур данных и алгоритмов, принципов ООП, опыт работы с базами данных и понимание основ веб-разработки облегчат прохождение курса для программиста, но не являются обязательными.

Источник

Отзыв выпускника курса «Backend-разработчик на PHP»

Меня зовут Алексей. Я проходил курс OTUS «Backend-разработчик на PHP» с мая по октябрь 2019 года и решил оставить отзыв, ведь когда мы ищем что-то в интернете, то часто их читаем (по крайней мере, я читаю). Как раз перед оплатой обучения в OTUS я искал что-то про этот образовательный проект, но было очень мало информации. Поэтому, возможно, моё мнение пригодится кому-то в будущем.

Немного о себе

Почти 5 лет работаю в сфере фриланса на одной из платформ (front/back). Задачи в основном однотипные, а хочется идти дальше, развиваться и углубляться (хотелось углубиться в ООП, паттерны, тестирование). Работаю один, поэтому обсудить код, посоветоваться, возможности нет. Перечитал много книг, в итоге пришёл к выводу, что курсы будут полезны.

Перед покупкой

Рассматривал несколько вариантов (на самом деле много предложений и сложно остановиться на чём-то одном), но остановился на OTUS. Цена, конечно, изначально кажется высокой. Но я считаю, что инвестиции в обучение — это очень важно. Да и потом, это 4 месяца интенсивных занятий, а потом ещё проектная работа.

Прежде чем купить курс, я ознакомился с программой курса, она мне понравилась. Побывал на бесплатном вебинаре, который проводил один из трёх преподавателей курса. Он произвёл очень хорошее впечатление, говорил чётко, отвечал на любые вопросы, хорошая дикция, темп, голос, что тоже не маловажно для восприятия информации. Стало понятно, что преподаватель разбирается не только в PHP, но и многих других вещах. В общем, я решился и оплатил сразу всё обучение.

Немного об обучении

2 занятия в неделю, начало в 20:00 по Москве. Обычно 1,5 часа, но бывало чуть дольше. Все вопросы можно задать в Slack. Преподаватели ответят вам в течение дня, крайний случай — следующий день. Запись вебинаров есть в личном кабинете.

Не всегда получалось быть онлайн на вебинарах (даже уезжал в отпуск на месяц, и появилась задолженность по ДЗ) и потом смотрел в записи. У некоторых уроков были домашние задания, но их выполнения с вас не требуют, это ваше лично дело. Но они очень помогают усваивать материал.

Порой смотришь на задание, ну минут 30-40 на него потратишь, не более. А по факту выходило несколько часов (и порой думаешь, ну всё, сейчас брошу, сколько можно сидеть…). Мы ведь как раз и учимся, когда ошибаемся, поэтому это того стоило. Хотя времени всегда не хватает (работа, вебинар, ДЗ), 4 месяца в плотном графике.

Читайте также:  разогрев коленей перед тренировкой

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

Что дали мне курсы

Во-первых, до этого я не имел дела со многими инструментами (Docker, Postgres, Bash, Deploy, PHPUnit). Всё это и многое другое было в ДЗ, поэтому я теперь с этим знаком и не скажу, что поверхностно. На курсе познакомился с коллегами по PHP и когда был последний вебинар, даже стало грустно расставаться и с ними, и с преподавателями.

В заключении скажу несколько слов. Я не могу призывать вас проходить курсы или не проходить, вы можете читать книги, смотреть Youtube-каналы по разработке, и там тоже, конечно, есть толковые ребята. Решать вам, но я могу сказать точно – OTUS можно доверять. Парни – профи своего дела, плюс практически живое общение, быстрая и чёткая коммуникация.

Меня даже в процессе учёбы посещали сомнения, но это было, когда накатывала усталость (работа, вебинары, дз, долги по дз). Были мысли: «И зачем я на это подписался, да ещё и за свои деньги…». Но потом берёшь себя в кулак, садишься, делаешь и получаешь удовольствие, когда задача принята, плюс, ты получил новые знания и число сданных дз от общего числа увеличилось на единицу.

Я однозначно стал по-другому смотреть на весь процесс разработки и писать более правильный и чистый код. Желаю всем успехов, новых знаний, новых достижений после обучения. И помните: дорогу осилит идущий!

Источник

Что входит в программу курса «Backend-разработчик на PHP»?

Скриптовый язык программирования PHP — один из лидирующих языков, применяемых для создания динамических веб-сайтов. Он интенсивно используется для разработки веб-приложений разной сложности и поддерживается подавляющим числом хостинг-провайдеров в мире. Если вы хотите научиться реализовывать на нём большие и долгосрочные проекты, вам поможет курс «Backend-разработчик на PHP».

Для кого этот курс?

Курс рассчитан на разработчиков, имеющих опыт программирования не менее одного года на PHP либо не менее 3 лет на другом языке (приветствуются любые языки ООП). Для успешного освоения материала вам пригодятся знания принципов ООП, структур данных и алгоритмов, баз данных, основ веб-разработки. Однако эти навыки являются рекомендованными, а не обязательными. Впрочем, вы всегда можете проверить, соответствуют ли ваши знания необходимому уровню — для этого попробуйте пройти вступительное тестирование, обязательное для всех, кто хочет стать студентом этого курса.

Основные темы программы

Курс представляет собой комплексную программу, включающую в себя несколько образовательных модулей:

General Knowledge Это бест-практик по погружению в PHP. Вы не просто ознакомитесь с историей развития PHP и внутренним устройством интерпретатора, но и узнаете подходы к конфигурированию, виртуализации и паравиртуализации, обсудите необходимый минимум устройства Linux, коснётесь языка bash и утилит из GNU Coreutils, изучите маршрутизацию и коммутацию, TCP/IP, ARP, DNS, SMTP, HTTP, FastCGI, php-fpm и много чего ещё. Таким образом уже на первом этапе обучения вы получите (или освежите в памяти) весь спектр базовых знаний, которые в дальнейшем вам обязательно пригодятся при реализации серьёзных проектов.

Databases Этот модуль посвящён SQL-решениям в целом и PostgreSQL в частности. Знания даются как с точки зрения администратора, так и с ракурса клиентского разработчика. При этом рассматриваются все способы работы кода на PHP с изученными базами данных.

Developing Содержательный модуль, непосредственно посвящённый написанию кода. Вы узнаете о парадигмах программирования, архитектуре кода, паттернах проектирования, правилах написания хорошего кода, coding styles, принципах CQRS и Fluent interface, Unit-тестировании, алгоритмах сортировки и т. п.

Architecture & HighLoad Среди тем этого модуля — асинхронный подход обработки данных на основе очередей, проектирование API, репликация, профилирование, логирование, шардинг, кеширование, Deploying. Также обсуждаются модели командной разработки ПО, гибкие методологии разработки, SCRUM.

Подробнее ознакомиться с программой или скачать её в формате PDF вы можете на странице курса. Также ждём ваших вопросов в комментариях!

Источник

Разработчик PHP. Базовый курс

Вы освоите основы программирования на языке PHP и заложите фундамент из навыков, необходимых для профессиональной разработки.
С поддержкой персонального ментора вы сформируете четкое представление о разных областях, с которыми соприкасается разработчик PHP.

Читайте также:  мне ни в чем не знавшей меры

ДЛЯ КОГО ЭТОТ КУРС:
Программа идет с нуля и рассчитана на опытных ПК-пользователей, которые хотят научиться программировать.
Курс также будет полезен тем, кто еще не определился с языком.
После обучения вы сможете углубиться в разработку на PHP или с легкостью перейти на любой другой язык ООП.
Такая подготовка должна быть по умолчанию у каждого начинающего специалиста, ведь она сродни «умению читать» и «знать таблицу умножения» в мире IT.
Курс призван помочь тем, кто делает первые шаги в IT и хочет быть готов к первым собеседованиям и работе в проектах.

ПЕРСОНАЛЬНЫЙ МЕНТОР:
онлайн-сессии на 40 минут каждую неделю.

В начале обучения за вами закрепляется ментор.
Раз в неделю вы делаете домашнее задание.
На сессии ментор прокомментирует ваше решение.

ПРОЕКТНЫЙ ПОДХОД:
К концу обучения на курсе вы сможете выбрать тему приложения и написать его на основании сделанного ранее: например, блог, в котором, помимо пользовательского представления, будет интерфейс администратора, система управления баннерами и ссылками, роутинг, человекопонятные URL, кэширование и прочие вещи, которые вы изучили в рамках данного курса.

Для того, чтобы Ваш код можно было показать будущему работодателю, вы сможете вести разработку с применением версионирования на базе Github.

Источник

OTUS [OTUS] Backend разработчик на PHP (2018)

Arsenn32

Arsenn32

Автор: OTUS
Название: Backend разработчик на PHP (2018)

Описание:
По окончании курса слушатели получат полное представление о разработке больших и высоконагруженных веб-приложений, полученные знания позволят слушателю уверенно решать задачи разработки коммерческих приложений.

Более 80% сайтов всего мира используют PHP, что позволяет сказать, что он является лидирующим языком программирования для реализации веб-приложений. Высокая скорость разработки и простота эксплуатации, но при этом высокая производительность, позволяют использовать его в проектах любой степени сложности от простого сайта-визитки до крупной социальной сети. Для реализации больших и долгосрочных проектов, современному PHP-разработчику необходимо заботиться об архитектуре кода, применять паттерны проектирования, писать код в соответствии с принципами SOLID и поддерживать высокий code coverage своих unit-тестов. Но профессия PHP Backend Developer требует знаний не только языка PHP, а ещё знаний инструментов, таких как базы данных, очереди, кеш-сервера, без которых немыслимо современное веб-приложение.

Модуль 1. General Knowledge

1. Подготовка к курсу
Подготовимся к прохождению курса, вспомним Git и GitHub. Поговорим об истории развития PHP от PHP/FI до PHP7, узнаем, куда делся PHP6 и перейдём к внутреннему устройству интерпретатора. Затронем zval и garbage collector.

2. Менеджеры пакетов
Продолжим узнавать устройство интерпретатора PHP, обсудим подходы к его конфигурированию. После этого перейдём к модулям и менеджерам пакетов, в частности, обсудим Zend Extensions, работу с PEAR и PECL, научимся собирать свой собственный PHAR. Отдельное внимание уделим менеджеру зависимостей composer. Поговорим об autoloading и SEMVER.

3. Linux
Перед запуском PHP сценариев в режиме CLI, обсудим необходимый минимум устройства Linux. Узнаем, что такое процессы и потоки, и чем они отличаются друг от друга. Поговорим о FHS, пользователях, группах и привилегиях. Начнём разбираться с утилитами из GNU Coreutils.

4. PHP in CLI
Немного коснёмся языка bash. Продолжим разбираться с утилитами из GNU Coreutils. Научимся использовать grep и xargs. Начнём запускать PHP скрипты из командной строки, научимся демонизировать процессы, а также использовать для запуска cron, screen и supervisord. Поговорим о IPC (pipe, shared memory, signals, unix sockets).

5. Виртуализация и контейнеризация
Поговорим о подходах к виртуализации и паравиртуализации. Посмотрим на xen, kvm/qemu и перейдём к контейнеризации. Научимся работать с Docker и посмотрим как он работает внутри.

6. Networking
Коснёмся нужных нам в работе тем о сетях. В частности, поговорим об OSI, остановимся на TCP/IP. Посмотрим, как устроена маршрутизация и коммутация, как работает ARP. Поговорим о DNS и SMTP и детально изучим HTTP.

7. FastCGI
Рассмотрим способы запуска PHP-сценариев для web. В частности, изучим протокол FastCGI. Детально обсудим возможности nginx и научимся его использовать. А также посмотрим, как устроены JavaServlets и WSGI.

8. PHP WebServers
Изучим php-fpm и его связку с nginx. Поговорим о моделях обработки запросов веб-серверами (синхронно, асинхронно) и напишем свой маленький асинхронный web-сервер.

Читайте также:  Аквапилинг для лица что это

9. Алгоритмы. Начало
Поговорим об алгоритмах и структурах данных. Детально рассмотрим асимптотический анализ. Рассмотрим алгоритмы сортировки, в частности: сортировка Шелла, быстрая сортировка и сортировка слиянием. Изучим стек и очередь на примере реализаций из SPL. Детально рассмотрим связанные списки и способы их обхода.

Модуль 2. Databases

11. Основные понятия баз данных
Обсудим модели данных и ранние подходы к организации данных, в частности, иерархические и сетевые базы данных. Научимся описывать концептуальные схемы предметной области при помощи ER-модели. Остановимся на реляционной модели и погрузимся в реляционную алгебру. Поговорим о SQL, его истории, стандартах и совместимости.

12. PostgreSQL для администратора
Полное погружение в PostgreSQL. Поговорим об администрации кластера, ролях, атрибутах, привилегиях, схемах, табличных пространствах и системном каталоге. Для всего этого изучим DDL.

13. Redis
Поговорим о Redis как о базе данных. Изучим типы данных и способы работы с ними из кода на PHP. Сравним Redis с Memcached.

14. MongoDB
Рассмотрим not only SQL-решения на примере MongoDB. Познакомимся с CRUD операциями. Поговорим о Aggregation Pipeline и MapReduce. Поработаем с MongoDB из кода на PHP.

15. PostgreSQL для разработчика
Продолжим изучение PostgreSQL, но уже в качестве клиентского разработчика. Изучим DML, поговорим о типах данных, функциях и операторах. Узнаем как устроены индексы и работают транзакции. Обсудим ACID, MVCC и уровни изоляции.

16. Как устроен PostgreSQL
Перестанем бояться чудодейственной магии PostgreSQL и детально разберём как база данных работает “под капотом”. В этом занятии будет буферный кеш, журнал упреждающей записи, контрольная точка, страницы и версии строк, LRU, снимки и блокировки, а также Vacuum. Используя EXPLAIN, посмотрим как PostreSQL выполняет запрос и попытаемся оптимизировать его выполнение.

17. Другие SQL-решения
Посмотрим на другие SQL-решения, в частности, сделаем детальный обзор возможностей MySQL и SQLite. Поговорим о колоночных базах данных на примере ClickHouse.

18. PHP и базы данных
Изучим все способы работы кода на PHP с изученными базами данных. Как дань истории будут показаны устаревшие драйверы, но остановимся на PDO. Рассмотрим ООП-подход для работы с базами данных. Научимся реализовать и применять такие паттерны как DAO, ActiveRecord, ORM, ODM. Поговорим об их плюсах и минусах.

Модуль 3. Developing

20. Архитектура кода
Погрузимся в архитектуру кода. UML, SOLID, SoC, DRY, KISS, YAGNI, DI и DI-контейнеры.

21. Design patterns
Рассмотрим часто встречающиеся проблемы при проектировании ООП-программ и, как способ их решения, шаблоны проектирования. Обсудим порождающие, структурные, поведенческие шаблоны, а также коснёмся шаблонов GRASP.

22. Практики хорошего кода
Поговорим о том, как писать хороший код, о принципах CQRS и Fluent interface. Обсудим coding styles и необходимость документирования кода. Рассмотрим PHP the Right way и стандарты из PHP-FIG.

24. Unit-тестирование
Поговорим о том, что такое тестируемый код и как его писать. Научимся писать Unit-тесты с использованием PHPUnit. Поговорим об A-TRIP, TDD и Red-Green-Refactor. Рассмотрим идеологии CI/CD и запустим автоматический прогон наших тестов в Travis.

25. Безопасность
Поговорим о безопасности. В частности, рассмотрим симметричные и ассиметричные алгоритмы шифрования AES, RSA, Blowfish. Digest-алгоритмы sha и md5. И детально рассмотрим TOP10 видов уязвимостей web-приложений по OWASP (в частности SQL-injections, XSS, CSRF).

Модуль 4. Architecture & HighLoad

26. Кеширование
Поговорим зачем приложению нужен кеш. Рассмотрим Redis и Memcached в качестве кеш-серверов. Поговорим о кеш-тегах и инвалидации кеша.

28. Репликация
Получим полное представление о репликации: о её видах (Master-Slave, Master-Master), о способе синхронизации изменений (sync, async), о формате изменений (SBR, RBR), о модели передачи изменений (push, pull) и о том, как с этим работать на уровне PHP кода.

29. Профилирование и логирование
Скрипт тормозит? Научимся находить узкие места, используя инструменты профилирования. Также детально обсудим логирование, чтобы понимать что делает наш скрипт. Затронем уровни логирования (по PSR-3), библиотеку Monolog и сбор логов в ELK.

30. Проектирование API
Научимся проектировать API для web и mobile используя Rest и RPC-протоколы. Обсудим JSON, XML, Protocol Buffers. Детально остановимся на Rest и способе его описания, используя RAML. Получим представление о WebSockets.

Источник

Образовательный портал