Web-разработчик на Python

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

  • Освоение разработки современной фронтенд-части с нуля.

  • Способность решать рядовые задачи бекенд-разработки.

  • Умение деплоить с помощью Fabric, заворачивать приложения в Docker-контейнеры, писать тесты и ботов

  • Владение NodeJS и ReactJS, ознакомление с другими платформами, фреймворками, библиотеками, приложениями.


14 работодателей

Высокая практическая направленность (освоение каждой технологии закрепляется путем выполнения задания)

Преподаватели
Илья Лебедев
Юрий Дворжецкий
Эксперт, консультант по архитектуре приложений. Специалист по разработке серверных решений на Python. Автор курсов по веб-разработке в МГТУ им. Баумана, ВШЭ. Соорганизатор курсов Learn Python и devman.org. Старший разработчик в Itcanfy и Ngenix.
9 лет опыта программирования на C++, Python, PHP и JavaScript. Участвовал в проектах разной сложности: от разработки небольших корпоративных сайтов до планирования и реализации высоконагруженных сервисов и использованием микросервисной архитектуры.
Ведущий разработчик в Luxoft, кандидат физико-математических наук.
Программирует с начальных классов.

Разрабатывает на разных платформах: большие и маленькие проекты, высоконагруженные и очень красивые, многим известные и совсем специфические.

Влюблён в элегантность и оригинальность JavaScript, как классического, так и современного, во всех его проявлениях.

Сейчас разрабатывает Web-приложения c UI на React и Angular*.
Преподаватели
Илья Лебедев
Эксперт, консультант по архитектуре приложений. Специалист по разработке серверных решений на Python. Автор курсов по веб-разработке в МГТУ им. Баумана, ВШЭ. Соорганизатор курсов Learn Python и devman.org. Старший разработчик в Itcanfy и Ngenix.
9 лет опыта программирования на C++, Python, PHP и JavaScript. Участвовал в проектах разной сложности: от разработки небольших корпоративных сайтов до планирования и реализации высоконагруженных сервисов и использованием микросервисной архитектуры.
Юрий Дворжецкий
Ведущий разработчик в Luxoft, кандидат физико-математических наук.
Программирует с начальных классов.

Разрабатывает на разных платформах: большие и маленькие проекты, высоконагруженные и очень красивые, многим известные и совсем специфические.

Влюблён в элегантность и оригинальность JavaScript, как классического, так и современного, во всех его проявлениях.

Сейчас разрабатывает Web-приложения c UI на React и Angular*.
Минимальные знания
  • Основы синтаксиса Python 3.
  • Основные модули стандартной библиотеки.
  • Основы написания поддерживаемого кода.
  • Основы SQL, html, css, JavaScript.
  • Знание понятия асимптотической сложности.
  • Умение работать в консоли и с git.
  • Понимание, как и зачем писать автотесты.
Процесс обучения
Обучение проходит в формате вебинаров (онлайн). Слушателям предлагаются к выполнению домашние задания, которые позволят применить на практике полученные во время вебинаров знания. По каждому домашнему заданию преподаватель дает развернутый фидбек. Преподаватель находится в едином коммуникационном пространстве с группой на протяжении всего курса, т. е. в процессе обучения слушатель может задавать преподавателю уточняющие вопросы по материалам лекций и домашних заданий.
Программа обучения
Модуль 1
Модуль
Модуль 2
модуль
Модуль 3
модуль
Модуль 4
модуль
Модуль 5
модуль
Модуль
Технические детали курса; декомпозиция; чистые функции; цикломатическая сложность; читаемость; фичеризм; поддерживаемость; статический анализ кода.
Домашние задания: 1
1 Рефакторинг существующего кода.
Объекты и переменные; структуры данных под капотом основных типов; list vs tuple; профилирование памяти; как работает сборщик мусора.
Принципы ООП; mixins; class/instance variables; MRO; dict; slots; name mangling.
Домашние задания: 1
1 Добавление фич в скрипт для статического анализа кода.
IP, TCP, HTTP; [u]WSGI.
Домашние задания: 1
1 Написать свой wsgi-совместимый веб-фреймворк.
werkzeug; Flask.
Домашние задания: 1
1 Сделать демо интернет-магазина на Flask.
ORM – зачем нужно; описание схемы данных; сессии; добавление/удаление/апдейт данных
15 августа, 20:00 — 21:30
Домашние задания: 1
1 Написать свою ORM для sqlite.
Django apps; Django ORM; Django Class Based Views; Django common tools.
18 августа, 12:00 — 13:30
Домашние задания: 1
1 Сделать демо интернет-магазина на Django.
Семинар. Реализуем свой WSGI-совместимый фреймворк.
22 августа, 20:00 — 21:30
модуль
Django REST Framework. Django Configurations.
25 августа, 12:00 — 13:30
Домашние задания: 1
1 Реализуем базовый бекенд для сайта с курсами.
API. GraphQL и его реализация в Python. GraphQL и Django.
29 августа, 20:00 — 21:30
Домашние задания: 1
1 Добавляем сущности и фичи для API сайта с курсами.
Fabric. Развертывание проекта на сервере.
1 сентября, 12:00 — 13:30
Django шаблоны и немного Bootstrap 3. Делаем веб-интерфейс.
5 сентября, 20:00 — 21:30
Знакомство с Front-end частью курса. Основы HTML, CSS, методологии вёрстки. Немного Bootstrap 4.
8 сентября, 12:00 — 13:30
Домашние задания: 1
1 Сделать вёрстку (HTML + CSS) главной страницы сайта для обучения.
Django m2m, select_related/prefetch_related, django debug toolbar, factory_boy, faker.
12 сентября, 20:00 — 21:30
Основы JS: типы данных, операторы, объекты, работа с DOM и браузером
15 сентября, 12:00 — 13:30
Домашние задания: 1
1 Добавление поведения к главной странице, страница курсов
Python social auth, django context processors.
19 сентября, 20:00 — 21:30
модуль
Продвинутый JS: ООП в JS, прототипирование, асинхронность.
22 сентября, 12:00 — 13:30
Домашние задания: 1
1 Страница расписания занятий
Азы работы с очередями задач.
26 сентября, 20:00 — 21:30
Домашние задания: 1
1 Добаляем асинхронную отправку электронной почты
ES6, NodeJS окружение, babel + webpack, транспайлинг, CSS препроцессоры
29 сентября, 12:00 — 13:30
Домашние задания: 1
1 Сборка UI с помощью webpack, форма логина и регистрации, проксирование вызовов на back-end
Пишем свой менеджер очередей.
3 октября, 20:00 — 21:30
fetch || axios || $.ajax для REST запросов, модульность
6 октября, 12:00 — 13:30
Домашние задания: 1
1 Загрузка списка курсов с сервера, логин страница, REST API для работы
Введение в автотесты.
10 октября, 20:00 — 21:30
Домашние задания: 1
1 Покрыть проект приёмочными тестами на 60%
Code review
13 октября, 12:00 — 13:30
Домашние задания: 1
1 Исправление недостатков в соответствии с code review
Введение в TDD.
17 октября, 20:00 — 21:30
модуль
Основы React, JSX, компоненты React
20 октября, 12:00 — 13:30
Домашние задания: 1
1 Главная страница на React
Введение в pytest.
24 октября, 20:00 — 21:30
Домашние задания: 1
1 Переписать тесты на pytest и factory_boy
state и props, data-flow в React-компонентах
27 октября, 12:00 — 13:30
Домашние задания: 1
1 Страница логина, регистрации на React
InfluxDB, Grafana.
31 октября, 20:00 — 21:30
Жизненный цикл React-компонент
3 ноября, 12:00 — 13:30
Домашние задания: 1
1 Страница личного кабинета, отправка решения на сервер
Jenkins, Sentry.
7 ноября, 20:00 — 21:30
Домашние задания: 1
1 Настроить логирование ошибок в Sentry.
Состояние приложения. Flux & Redux
10 ноября, 12:00 — 13:30
Домашние задания: 1
1 Блок успеваемости в личном кабинете, ведомость в кабинете преподавателя
python-telegram-bot
14 ноября, 20:00 — 21:30
модуль
Code review
17 ноября, 12:00 — 13:30
Домашние задания: 1
1 Исправление недостатков в соответствии с code review
threading, multiprocessing, queue.
21 ноября, 20:00 — 21:30
Routing в React. SPA
24 ноября, 12:00 — 13:30
Домашние задания: 1
1 Организация всего приложения в виде SPA.
Введение в docker, docker-compose.
28 ноября, 20:00 — 21:30
Домашние задания: 1
1 Завернуть проект в докер-контейнеры
Тестирование JS приложений
1 декабря, 12:00 — 13:30
Домашние задания: 1
1 Написание unit-тестов для UI и back-end
asyncio
5 декабря, 20:00 — 21:30
Обзор Vue2
8 декабря, 12:00 — 13:30
Домашние задания: 1
1 Landing page на Vue
QnA
12 декабря, 12:00 — 13:30
Расписание занятий
Другие группы
Среда и суббота
12:00—13:30 и 20:00—21:30
Группа: WebPython-2018-07
Вторник и суббота
20:00—21:30 и 10:00—11:30
Группа: WEBPython-2018-04
Подглядеть
Правила хорошего кода на Python
Илья Лебедев
Cоздание приложения на Webpack + React + Express
Юрий Дворжецкий
Пишем свою библиотеку для работы с xlsx файлами
Илья Лебедев
Видеоматериалы по теме
День открытых дверей
23 июля в 20:00
День открытых дверей
13 апреля в 20:00
После обучения вы
  • получите материалы по всем пройденным занятиям (видеозаписи вебинаров, презентации, примеры кодов);
  • повысите свои знания в области бекенд- и фронтенд-разработки на Python;
  • получите сертификат о прохождении курса;
  • улучшите навыки в технологиях Python, JavaScript, Django ORM, SQLALchemy, Werkzeug, Flask, GraphQL, InfluxDB, Grafana, Jenkins, Sentry, NodeJS, ReactJS, VueJS и других;
  • получите приглашение пройти собеседование в компаниях-партнерах (в случае успешного обучения).
Выпускной проект
В рамках курса предусмотрен проект. Это будет большая работа, которая объединит в себе все знания, полученные во время обучения. В процессе написания проекта вы можете консультироваться с преподавателями. Готовый проект станет демонстрацией ваших возможностей и образцом кода, который вы сможете показывать потенциальным работодателям при трудоустройстве.
Ваш сертификат
otus.ru
Константин Константинопольский
успешно закончил курс
«Web-разработчик на Python»
Успешных заданий:
16 из 16
Проектная работа:
Распределённая система сетевого мониторинга
Виталий Чибриков
Генеральный директор
№ 0001
otus.ru
Константин Константинопольский
успешно закончил курс
«Web-разработчик на Python»
Успешных заданий:
16 из 16
Проектная работа:
Распределённая система сетевого мониторинга
Виталий Чибриков
Генеральный директор
№ 0001