Раздел I: Основы Python и работа с Flask
Блок 1: Основы Python
Введение в Python
Типы данных, функции, классы, ошибки
Строки, условия, циклы
Списки и словари в Python
Базы данных и статистика
Многопоточность
Блок 2: Основы SQL
Введение в блок SQL
Извлечение и фильтрация данных (часть 1)
Извлечение и фильтрация данных (часть 2)
Преобразование и сортировка данных (часть 1)
Преобразование и сортировка данных (часть 2)
Блок 3: Работа с Flask
Веб-сервер flask и контроль версий Git
Итоговый проект
разработка API на Flask
SQL AlchemyREST API FLASK и сериализация
Блок 4: SQL и базы данных
Группировка данных
Введение в базы данных
Объединение таблиц
ПодзапросыОбновление, добавление и удаление данных
Создание, изменение и удаление таблиц
AdvancedИтоговый проект LEGO
Обзор основных программ
Раздел II: Advanced Python: ООП и Django
Блок 5: ООП в Python
Объектно-ориентированное программирование на Python
Понятия ООП: наследование, инкапсуляция, полиморфизм
Работа с классами и объектами
Работа с итераторами и генераторами
Структуры данных в Python
Функциональное программирование в Python
Блок 6: Бэкенд-разработка на Python и Django
Архитектура и серверная часть
Веб-сервер на Python
JSON, XML, AJAX и работа с API
Асинхронное программирование
Сборка проекта на Django
Работа с ORMDjango REST и API
Авторизация и аутентификация, OAuth2.0
Блок 7: Системы контроля версий
Системы контроля версий. Версионирование кода, совместная разработка, CSV
Git & GitHub. Git, Commit, Ветки, слияние веток и разрешение конфликтов, GitHub, Командная работа, Код ревью
Жизненный цикл ПО, CI/CD
Git, основные понятия. Знакомство с GitLab
Введение в GitLab CI
GitLab CI. Внутренние переменные, Артефакты, Правила
Блок 8: Современные методологии разработки
Методологии управления: Agile и Waterfall
Scrum
Инструменты управления
Раздел III: Специализации (Web-разработка, DevOps, Data Science)
Специализация — Веб-разработчик
Блок 9: Принципы HTML
Структура веб страницы, базовый HTML
Базовый CSS, селекторы и каскад
Продвинутый CSS, адаптивность и кроссбраузерность
Основы языка, инструменты для разработки и отладки
Блок 10: Объекты HTML и DOM-модель
Объекты, массивы, функции
DOM-модель и работа со страницей
Обработка событий
Взаимодействие с сервером
Блок 11: Основы JavaScript
Введение. Переменные и работа с числами. Константы
Строки, boolean и условные операторы. Преобразование типов и нестрогие сравнения
Массивы и циклы. Объекты
Функции / области видимости и замыкания
Обработка событий и пользовательский ввод
Блок 12: Структуры и библиотеки JavaScript
Подключение библиотек
Регулярные выражения. Форматирование. Работа с датами
Mикро и макротаски. Цикл событий
Анимации и CSS фреймворки
Структуры данных и алгоритмы
Блок 13: Javascript Advanced: библиотека React
Быстрый старт в React
События и состояние
Работа с HTTP и жизненный цикл
Контейнеры и презентационные компоненты
Типизация React-приложений
Hooks, Context API
Функциональное программирование
Redux и асинхронность
Специализация — DevOps
Блок 14: Основы DevOps для программиста
Введение в DevOps
Linux: введение и основные концепты ОС.
Bash. Базовый инструмент скриптов в Linux
Жизненный цикл ПО, CI/CD
Блок 15: Работа с Docker
Контейнеризация. Знакомство с Docker.
Упаковка приложений в Docker
Docker-Compose. Сервисы и взаимодействия
Блок 16: Упрвление конфигурациями, Ansible
Ansible. Основные концепции и команды
Ansible.Роли и переменные
Ansible. Разработка ролей
Блок 17: Advanced: MLOps — DevOps в мире Machine Learning
Методологии анализа больших данных и организации команды. CRISP-DM
Культура сбора и источники данных / Улучшение качества работы с данными
Блок 18: Advanced: облачные сервисы и Hadoop
Основы работы в Hadoop и MapReduce
Основы архитектуры хранения и обработки больших данных, виды обработки и масштабирования
Специализация — Data Science
Блок 19: Основы Data Science
Кто такой Data Scientiest
Знакомство с машинным обучением
Линейная регрессия
Блок 20: Алгоритмы Data Science
Бинарная классификация
Валидация. Почему это важно
Решающие деревья
Бутстрап, Бэггинг и случайный лес
Feature Engineering, Feature Selection
Градиентный бустинг
A/B тестирование
Обучение без учителя
Блок 21: Рекомендательные системы для Data Scientist
Введение в рекомендательные системы
Метрики и бейзлайны
Матричное разложение
Рекомендации через поиск ближайших соседей
Воркшоп: предсказание оттока клиентов и прогноз продаж
Воркшоп: скоринг кредитного портфеля