Программа обновлена
Python Developer
Все, что нужно знать о программировании на Python: с нуля до middle+
30 июля
Basic
10 месяцев
Онлайн
Чем специализация отличается от обычного курса?
Здесь вы прокачаетесь сначала до junior-разработчика, а потом сразу же – до middle. И всё это в пределах одной программы.
Кому подходит специализация?
- Тем, кто хочет с нуля освоить профессию Python-разработчика. Ваши навыки разработки будут соответствовать строгим требованиям IT-компаний, даже если сейчас вы ничего не знаете о программировании
- Тем, кто ещё не определился с языком программирования. Сможете полностью переквалифицироваться в Python-разработчика
Где нужен Python?
- бэкенд-разработка
- высокие нагрузки
- автоматизация тестирования
- веб-разработка
- data science
![](https://cdn.otus.ru/media/public/48/2c/питон_2-263987-482ca8.jpg)
Какой результат вы получите?
Специализация состоит из двух ступеней, каждая длится 5 месяцев
- Чтобы начать обучение, понадобится только компьютер
- Познакомитесь с синтаксисом и базовыми операторами Python
- Изучите основы ООП и научитесь писать тесты
- Научитесь работать в асинхронном режиме с вебом и базами данных, создавать и настраивать автоматические тесты, работать с API
- Научитесь использовать библиотеки для data science, разворачивать приложения в Docker-контейнерах, настраивать автоматический деплой
- Рассмотрите фундаментальные основы Python и веб-разработки на продвинутом уровне
- Научитесь писать простой и идиоматичный код, тестировать и поддерживать код на Python
- Освоите программную инженерию, сформируете прагматичный подход к решению задач
- Научитесь писать приложения, которые не умирают под нагрузкой
Система знаний
Изучайте азы, осваивайте продвинутые навыки и переходите на профессиональный уровень
Опыт экспертов
Наши преподаватели – эксперты разработки со средним стажем 10 лет, работающие с крупными заказчиками
Восстребованность на рынке
Научитесь выполнять задачи,
которые по силам
middle-разработчику
Партнеры
- Разместите резюме в базе OTUS: так наши партнёры смогут пригласить вас на интервью
- Участвуйте в карьерных мероприятиях: там мы разбираемся, как составить резюме
- Проявите себя на занятиях и получите возможность пройти собеседование у партнёров OTUS
Python Developer
Работодатели курса
Формат обучения
Интерактивные вебинары
2 онлайн-занятия по 2 академических часа в неделю, вечный доступ к обучающим материалам
Две проектные работы
Дополните портфолио двумя разными проектами. Чувствуйте себя на собеседованиях уверенно
Активное комьюнити
Общайтесь с преподавателями на вебинарах, в закрытом телеграм-чате, при проверке домашних заданий
Групповые менторские консультации
Менторы объяснят, как лучше справляться с задачами. Групповой разбор домашних заданий проходит раз в месяц
Вы выполняете домашнее задание
Ментор проверяет ДЗ в личном кабинете, даёт развернутую обратную связь
На занятии ментор отвечает на частые вопросы, подробно разбирает работы студентов, объясняет каждый этап выполнения ДЗ
Вы можете проконсультироваться с ментором в телеграм-чате. Ментор расскажет об итогах проверки, объяснит непонятные детали
Программа
1 ступень
Синтаксис и базовые операторы Python
Цель: знакомство с базовыми структурами данных и операторами Python. Азы работы с shell и git.
Тема 1: Базовые типы и структуры данных. Управление потоком
Тема 2: Работа с функциями и данными
Тема 3: Генераторы, декораторы, неограниченное количество аргументов и результатов
Тема 4: Git, shell
ООП. Классы, исключения. Тесты
Знакомство с ООП в Python. Применение всех основных принципов ООП, знакомство с датаклассами. Разделение на модули.
Тема 1: Основы ООП
Тема 2: Продвинутый ООП, исключения
Тема 3: Модули и импорты
Тема 4: Датаклассы. Виртуальное окружение
Тема 5: Тесты
Взаимодействие с внешним миром. Создание простейшего API. Сборка проекта
Основы работы с файлами (локально) и сетью (HTTP). Создание API
Тема 1: Знакомство со встроенными модулями
Тема 2: Файлы и сеть
Тема 3: FastAPI — быстрая разработка API
Тема 4: Docker; системы контроля зависимостей
Работа с базами данных, асинхронное программирование
Знакомство с асинхронным программированием. Знакомство с базами данных: PostgreSQL, Mongo DB, Redis. Знакомство с ORM, асинхронная работа с БД.
Тема 1: Хранение данных в реляционных БД. Язык SQL
Тема 2: ORM: SQLAlchemy
Тема 3: SQLAlchemy: связи между таблицами в БД
Тема 4: Миграции схем: alembic
Тема 5: Сложные связи в БД
Тема 6: Асинхронное программирование в Python
Тема 7: Асинхронная работа с БД
Тема 8: Асинхронная работа API с БД
Веб разработка на Flask
Знакомство с веб-разработкой на Flask: работа с Flask, работа с шаблонами, работа с фронтендом.
Тема 1: Знакомство с веб разработкой на Flask
Тема 2: Основы фронтенда
Тема 3: Базовый фронтенд
Тема 4: Flask-SQLAlchemy, Flask-Migrate
Тема 5: Взаимодействие приложений между контейнерами, docker compose
Веб-разработка на Django
Знакомство с Django, Django ORM, Generics. Тестирование веб-приложений, фабрики.
Тема 1: Знакомство с Django
Тема 2: Django ORM, django-debug-toolbar
Тема 3: Django и отложенные задачи
Тема 4: Django Class Based Views, generics, Forms
Тема 5: Работа с пользователями и права в Django
Тема 6: Тестирование Django приложения
Тема 7: Фабрики
Python для Data Science
Знакомство с библиотеками для обработки массивов данных: NumPy, Pandas. Основы OpenCV
Тема 1: NumPy. Это лишь продвинутые массивы или что-то большее?
Тема 2: Pandas. Ещё одна библиотека для работы с данными?
Тема 3: OpenCV
DevOps
Автоматизация тестирования и деплоя. Знакомство с GitHub Actions, GitLab CI/CD
Тема 1: GitHub Actions
Тема 2: GitLab CI
Тема 3: GitLab CD
Проектная работа
Заключительный месяц курса посвящен разработке проекта. В качестве темы выбирается то, что интересно писать студенту и то, что потенциально можно будет потом включить в свое резюме. Участие в разработке некоего open source продукта тоже может рассматриваться в качестве выпускного проекта. При этом не обязательно закончить его за месяц. В процессе написания по проекту можно получить консультации преподавателей.
Тема 1: Выбор темы и организация проектной работы
Тема 2: Консультация по проектам и домашним заданиям
Тема 3: Защита проектных работ
2 ступень
Advanced basics
Этот модуль посвящен рассмотрению фундаментальных основ языка на продвинутом уровне, а также применению общих практик разработки ПО в контексте "экосистемы" Python. Целью является достижение единого понятийного аппарата, формирование представления о внутреннем устройстве языка, его возможностях, ограничениях, недостатках и области применимости. В модуле рассматриваются аспекты функционального, процедурного и ОО программирования на Python, особенности устройства виртуальной машины, вопросы обеспечения качества ПО и автоматизации инфраструктурных задач.
Тема 1: Advanced basics. Протоколы
Тема 2: Advanced basics. "Граждане первого порядка"
Тема 3: Internals. Виртуальная машина
Тема 4: Internals. Управление памятью, "печально известный" GIL
Тема 5: OOP. Объектная модель
Тема 6: OOP. Белая и черная "магия"
Тема 7: Testing. Дизайн тестов
Тема 8: Testing. Пирамида тестирования
Тема 9: Automatization. Сетевое взаимодействие
Тема 10: Automatization. Общение с БД и демонизация
Web
Этот модуль посвящен веб-разработке, тому, какой она выглядит со стороны Python программиста и какими особенностями обладает. Целью является рассмотрение нюансов и лучших практик по созданию и эксплуатации веб-сервисов с использованием фреймворка Django. В модуле рассматривается сам Django, внутреннее устройство ORM и других его составляющих, обсуждаются особенности построения REST API, масштабирования веб-проектов.
Тема 1: Dynamic Web
Тема 2: Django. Intro
Тема 3: Django. ORM и "зло"
Тема 4: Database layer
Тема 5: Django. Views
Тема 6: Django. Forms
Тема 7: REST API. Know-how
Тема 8: Web performance
Data engineering
Этот модуль посвящен знакомству с фундаментальными библиотеками, применяемыми для анализа данных. Python является де-факто стандартом при решении аналитических задач, поэтому данный аспект языка нельзя обойти стороной. При этом, целью модуля является не погружение в математические дебри, а рассмотрение таких инструментов как jupyter, numpy, pandas и matplotlib и области их применения в инженерной и аналитической деятельности.
Тема 1: Основы NumPy
Тема 2: Advanced NumPy и IPython
Тема 3: Pandas. Машинное обучение и продакшен
Тема 4: Визуализация данных
Highload
Этот модуль посвящен высокопроизводительным вычислениям на Python. В модуле рассматриваются особенности конкурентного и асинхронного программирования и то, как на это влияет устройство виртуальной машины языка. Так же внимание уделяется превратностям написания расширений на С и вопросам профилирования кода. В качестве бонуса происходит знакомство с языком Go, который часто используется Python программистами для решения performance-critical задач.
Тема 1: Concurrency. Потоки
Тема 2: Concurrency. Процессы
Тема 3: C extensions
Тема 4: ffi. Cython. Pypy
Тема 5: Asyncio. Origins
Тема 6: Asyncio. Event loop, async/await, low/high level API
Тема 7: Golang. Тур по языку
Тема 8: Golang. Особенности внутреннего устройства
Тема 9: Profiling
Тема 10: Python 2 vs Python 3
Проектная работа
Заключительный месяц курса посвящен разработке проекта. В качестве темы выбирается то, что интересно писать студенту и то, что потенциально можно будет потом включить в свое резюме. Участие в разработке некоего open source продукта тоже может рассматриваться в качестве выпускного проекта. При этом не обязательно закончить его за месяц. В процессе написания проекта можно получить консультации преподавателей. Примеры тем проекта: - система мониторинга ПК в корпоративной сети - свой ORM - web приложение по поиску групп с целевой аудиторией в ВК - исследование dataset’а с визуализацией
Тема 1: Выбор темы и организация проектной работы
Тема 2: Консультация по проектам и домашним заданиям
Тема 3: Защита проектных работ
Также вы можете получить полную программу, чтобы убедиться, что обучение вам подходит
Проектная работа
Вы выполните 2 больших проекта: по одному на каждую ступень обучения.
Разработайте архитектуру приложения, опишите задачи, которые это приложение будет выполнять, реализуйте основную функциональность. Создайте проект для веб-разработки, для интеграции с сервисами или для data science.
Примеры итоговых проектов студентов:
- Система мониторинга ПК в корпоративной сети
- Свой ORM
- Веб-приложение по поиску групп с целевой аудиторией в ВК
- Исследование датасета с визуализацией
Преподаватели
Эксперты-практики делятся опытом, разбирают кейсы студентов и дают развернутый фидбэк на домашние задания
Ближайшие мероприятия
Бесплатный открытый вебинар — это настоящее занятие в режиме онлайн с преподавателем курса, которое позволяет посмотреть, как проходит процесс обучения. На открытом вебинаре можно посмотреть, как проходит обучение, а ещё узнать что-то ценное по интересующей теме. На занятии слушатели могут задавать ведущему вопросы.
Вебинар предназначен для тех, кто хочет освоить создание ботов для Telegram, используя язык программирования Python. Мы рассмотрим основные концепции и инструменты, необходимые для разработки функциональных и интересных ботов.
На вебинаре мы:
— установим и настроим необходимые инструменты для создания Telegram-ботов
— подробно рассмотрим формат работы с библиотекой Python-telegram-bot
— создадим простого бота: от идеи до реализации
— расширим его функциональность с помощью дополнительных возможностей и функций
— рассмотрим примеры работы готовых ботов
— выясним, почему именно Python идеален для создания Telegram-ботов
Кому подойдёт: Начинающим разработчикам, которые желают освоить создание ботов для Telegram на Python.
Результаты вебинара: После вебинара вы сможете создать своего собственного Telegram-бота на Python и расширить его функциональность с помощью различных инструментов и библиотек.
На занятии вы узнаете:
- Основы Django: краткий обзор архитектуры Django, установка Django и создание нового проекта
- Ваше первое приложение: определение и регистрация простой модели данных, создание представления и маршрута для отображения информации на странице
- Работа с шаблонами: использование шаблонов для отображения данных в браузере
Этот открытый урок подойдет тем, кто начинает знакомство с веб-разраюоткой и Django.
Не упустите шанс начать своё путешествие в мир веб-разработки с Django и создать свой первый веб-проект!
Прошедшие
мероприятия
Корпоративное обучение для ваших сотрудников
- Курсы OTUS верифицированы крупными игроками ИТ-рынка и предлагают инструменты и практики, актуальные на данный момент
- Студенты работают в группах, могут получить консультации не только преподавателей, но и профессионального сообщества
- OTUS проверяет знания студентов перед стартом обучения и после его завершения
- Простой и удобный личный кабинет компании, в котором можно видеть статистику по обучению сотрудников
- Сертификат нашего выпускника за 5 лет стал гарантом качества знаний в обществе
- OTUS создал в IT более 120 курсов по 7 направлениям, линейка которых расширяется по 40-50 курсов в год
Отзывы
Диплом о профессиональной переподготовке
OTUS осуществляет лицензированную образовательную деятельность. В конце прохождения специализации вы получите сертификат OTUS и диплом о получении новой специальности государственного образца
![](/_next/static/images/img/otus-diploma-384b80a9982da08b574eb04d3f31c0e9.jpg)
Почему специализация выгоднее, чем отдельные курсы?
- Дешевле, чем два курса по отдельности
- Вы получаете диплом о профессиональной переподготовке
- Знания и навыки для уровней junior и middle сведены в единую программу
Python Developer
Стоимость в рассрочку
Стоимость указана для оплаты физическими лицами
вычета до 13% стоимости обучения. Оставьте заявку и менеджер вас проконсультирует
+7 499 938-92-02 бесплатно