Интенсивный темп учёбы — по 8 часов 5 дней в неделю. Зато получите новую профессию в 2 раза быстрее, чем на обычном курсе.
- Основы Python — бесплатное введение. Во вводном курсе вы попробуете себя в роли бэкенд-разработчика на Python — это поможет понять, хотите ли вы развиваться в этом направлении.Вы узнаете, что такое бэкенд и какие задачи он решает, исследуете серверную часть приложения и поймёте, как она взаимодействует с пользователями и с другими серверами.
- Углублённый Python. Вы детально погрузитесь в «грамматику» Python, научитесь применять встроенные инструменты и модули этого языка, а также поймёте, как Python работает с оперативной памятью и почему это важно на практике. В каждом уроке вас ждут практические задания, а по окончании спринта вы напишете программу, обрабатывающую данные фитнес-трекера. В этом же модуле вы познакомитесь с основами объектно-ориентированного программирования, установите и настроите среду разработки, узнаете, как работать с системой версионирования кода.
- Бэкенд на Django. Главная тема модуля — работа с веб-фреймворком Django. Это программный «конструктор» для создания веб-проектов, с помощью которого вы создадите полноценное веб-приложение — это будет платформа для блогов. Вы шаг за шагом создадите полноценный портал с авторизацией и комментариями.В процессе работы вы научитесь обрабатывать HTTP-запросы, подключите к приложению базу данных, создадите веб-страницы проекта. Любой код нуждается в проверке, поэтому вы также научитесь писать автоматические тесты для своих программ. В каждом уроке будут практические задания, часть из которых вы будете выполнять не в тренажёре, а на своём компьютере: развернёте среду разработки и запустите проект локально. К концу модуля допишете проект, и он станет ещё одной выполненной работой в вашем портфолио.
- API: интерфейс взаимодействия программ. В этом модуле вы разберётесь, как веб-проекты взаимодействуют друг с другом, запрашивая и передавая информацию. Например, каким образом ваша программа на Python может общаться с серверами Телеграма для управления ботом и как тот в свою очередь может получать информацию от других сервисов в интернете.Вы узнаете, что такое API, создадите свой сервис REST API, научитесь настраивать взаимодействие между фронтендом и бэкендом, а также напишете бота, который взаимодействует с популярными веб-сервисами. Кроме того, узнаете, как можно организовать авторизацию в разных проектах.
- Управление проектом на удалённом сервере. Работа с облачными сервисами, настройка серверов, тестирование и обновление кода — всё это рутинные операции, с которыми сталкивается любой программист. Вы самостоятельно настроите сервер в облаке, узнаете, как автоматизировать процессы тестирования и обновления кода, и развернёте свой проект в docker-контейнерах на сервере.
- Выпускной проект Foodgram. Вы самостоятельно напишете веб-приложение Foodgram — сайт, на котором пользователи будут публиковать собственные рецепты, добавлять чужие рецепты в избранное и подписываться на публикации других авторов. Сервис «Список покупок» позволит пользователям создавать список продуктов, которые нужно купить для приготовления выбранных блюд.
- Алгоритмы и структуры данных. Это опциональный модуль — проходить его можно по желанию. Любую задачу можно решить медленно и неэффективно, а можно — быстро и экономно. Неэффективное программное решение может впустую занять все вычислительные ресурсы сервера и замедлить его работу, а то и вовсе сломать его. Изучение алгоритмов поможет избежать подобных ошибок и ускорить работу программ. Вы научитесь проектировать решения для разгрузки системы, что позволит вашим проектам работать эффективнее. А ещё приобретёте такие навыки, как поиск и реализация разных вариантов решения одних и тех же задач, оценка вариантов решения, понимание основных структур данных и применение их для решения конкретных задач.