Скоро! Разработчик программного обеспечения на Python (backend разработчик) [2024] [ИПАП]

Статус
В этой теме нельзя размещать новые ответы.
Разработчик программного обеспечения на Python (backend разработчик) [2024]
ИПАП (Институт прикладной автоматизации и программирования)


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

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

На курсе вы научитесь:
1. Разрабатывать веб-приложения и оптимизировать их;
2. Работать с базами данных и Git;
3. Разворачивать приложения в Docker-контейнерах;
4. Освоите linux для разработчиков;
5. Получите навык работы с фреймворками Django и SQLAlchemy;
6. По окончании обучения подготовите проект для портфолио и сможете рассматривать вакансии junior разработчика.

Спойлер: Модуль 1 - Основы программирования
Курс предназначен для ознакомления с фундаментальными принципами и методологиями программирования, алгоритмическими языками, а также способами проектирования, реализации и управления БД.

Навыки, приобретаемые по окончании курса:
1. Разработка и анализ линейных, ветвящихся и циклических алгоритмов;
2. Кодирование на языках высокого уровня;
3. Преобразование чисел в различных системах счисления;
4. Проектирование простых реляционных баз данных.

Модуль 1 - Базовые понятия и определения
  • Задача. Решение задачи;
  • Алгоритм. Свойства алгоритмов;
  • Программа. Программное обеспечение;
  • Информатика. Информация. Информационная технология;
  • Данные. Числа в арифметике;
  • Выражения. Операнды. Знаки операций. Идентификаторы. Константы;
  • Алгоритмические структуры;
  • Примеры алгоритмического решения математических задач.
Модуль 2 - Логика. Представление данных
  • Основы алгебры логики;
  • Системы счисления;
  • Связи между системами счисления;
  • Двоичная и шестнадцатеричная системы счисления;
  • Единицы измерения ёмкости запоминающих устройств;
  • Представление целых и вещественных чисел в памяти ЭВМ;
  • Диапазоны представления чисел в двоичной системе счисления;
  • Представление символьной информации. Кодовые таблицы;
  • Понятие типа данных.
Модуль 3 - Структуры данных
  • Базовые структуры данных – массивы и записи;
  • Основные операции над структурами данных;
  • Динамические структуры данных. Списки. Стеки. Деревья;
  • Практическая задача с использованием массивов и записей;
  • Анализ производительности алгоритмов.
Модуль 4 - Методологии и языки программирования
  • Стадии и этапы разработки программ. Проектирование. Реализация. Проблемы программирования;
  • Методологии программирования. Классификация методологий программирования (структурное, объектно-ориентированное, логическое, функциональное, программирование в ограничениях);
  • Структурное программирование. Базовые принципы (пошаговая детализация, модульное структурное программирование);
  • Объектно-ориентированное программирование. Базовые принципы (абстрагирование, инкапсуляция, наследование, полиморфизм);
  • Языки программирования. Классификация. Понятие фреймворка. Применение структурного программирования для решения задач
Модуль 5 - Хранение и передача информации
  • Файловая система с точки зрения программы;
  • Бинарные и текстовые файлы, язык XML. Кэширование данных;
  • Передача информации на внешние устройства: буферизация, коррекция ошибок, контрольные суммы, общие принципы шифрования;
  • Базы данных и информационные системы;
  • Требования пользователей к базам данных;
  • Схемы обмена данными при работе с БД клиент-серверного типа;
  • Инфологический аспект проектирования. Модель «сущность-связь»;
  • Даталогический аспект проектирования;
  • Модели данных (иерархическая, сетевая, реляционная) их достоинства и недостатки;
  • Реляционные базы данных. Нормализация.
Спойлер: Модуль 2 - Система контроля версий Git
Git - распределенная система управления версиями (VCS). Это универсальный, свободный и удобный инструмент для командной работы программистов над проектами любого уровня. Git - это система, которая позволяет сразу нескольким разработчикам сохранять и отслеживать изменения в файлах вашего проекта. Курс будет полезен не только начинающим, но и опытным разработчикам, желающим ликвидировать пробелы в навыках использования Git.

Навыки, приобретаемые по окончании курса:
1. Устанавливать и настраивать систему;
2. Создавать ветви, производить их слияние и устранять конфликты версий в коде.

1. Введение в системы контроля версий. —Системы контроля версий, зачем они нужны, их разновидности. Сходство и отличия
2. Репозитории, сервисы совместной разработки
3. Создание учётной записи на GitHub
4. Установка Gitlab
5. Использование клиента системы контроля версий GitHub desktop
6. Использование клиента системы контроля версий в среде разработки на примере PyCharm
7. Создание локального репозитория
8. Создание описания проекта
9. Синтаксис markdown
10. Первые commit
11. Файл .gitignore
12. Правильное описание коммита
13. Что и когда коммитить
14. Откат на прошлую версию
15. Отправка локальных коммитов в реестр
16. Обновление локального репозитория
17. Разрешение конфликтов
18. Создание веток, разработка в ветке, слияние веток
19. Форк проекта, доработка проекта, запрос слияния
20. Публикация готового проекта на GitHub
Спойлер: Модуль 3 - Программирование на языке Python. Базовый уровень
Python – высокоуровневый язык программирования, ориентированный на повышение производительности разработчика и читаемости кода. Синтаксис языка прост и минималистичен, что хорошо подойдет для начинающих программистов. В то же время библиотека языка весьма широка, а сам Python поддерживает несколько парадигм программирования (структурное, объектно-ориентированное, функциональное и тд.), что подойдет для опытных разработчиков.

Модуль 1 - Введение
  • Основные среды и интерпретаторы Python;
  • Обзор интерпретатора;
  • Основные понятия.
Модуль 2 - Стандарт написания кода на Python PEP8;
  • Линтеры;
  • Средства среды разработки;
  • Магические клавиши Pycharm.
Модуль 3 - Начинаем работать с Git
  • Создаем репозиторий на Guthub;
  • Подключаем репозиторий к среде разработки;
  • Коммиты;
  • Пишем README.
Модуль 4 - Типы данных и конструкции языка
  • Типизация в Python;
  • Условия;
  • Циклы;
  • Ввод и вывод.
Модуль 5 - Функции
  • Создание функций;
  • Фактические и формальные параметры;
  • Вызов функций.
Модуль 6 - Коллекции
  • Списки;
  • Словарь;
  • Кортеж;
  • Последовательность;
  • Что и для чего использовать.
Модуль 7 - Модули
  • Собственный модуль;
  • Пакеты;
  • Обзор дополнительных модулей Python;
  • Установка стороннего модуля.
Модуль 8 - Файловая система
  • Создание и редактирование файлов;
  • Создание каталогов;
  • Чтение из файла;
  • Запись в файл.
Модуль 9 - Исключения
  • Общие понятия;
  • Обработка исключений;
  • Выброс исключений;
  • Исключения из сторонних библиотек;
  • Место обработки;
  • Стандартные исключения Python.
Модуль 10 - Синтаксический сахар
  • Регулярные выражения;
  • Лямбда функция;
  • Декораторы.
Модуль 11 - Регулярные выражения
  • Синтаксис регулярных выражений;
  • Применение регулярных выражений.
Спойлер: Модуль 4 - Linux для разработчиков
Архитектура современных бизнес систем строится на базе unix подобных решений, которые отвечают высоким требованиям безопасности и надежности. Поэтому разрабатывая ПО для них, необходимо понимать, как работает ОС Linux, и быстро локализовывать пробелы, возникающие в ходе работы. Для быстрой и качественной поставки ПО во многих проектах используется docker.

Навыки, приобретаемые по окончании курса:
1. Установка ОС Linux;
2. Базово настраивать сервер рабочей станции;
3. Понимать принципы работы очередей сообщений, серверов баз данных и механизмов кэширования данных в оперативной памяти;
4. Использовать систему docker для организации и поставки ПО.

Модуль 1 - Обзор и установка ОС Linux
  • Red Hat подобные дистрибутивы;
  • Debian подобные дистрибутивы;
  • Обновление системы;
  • Подготовка к работе.
Модуль 2 - Методы установки ПО
  • Рабочая станция разработчика:
    • Установка среды разработки;
    • Установка дополнительных библиотек;
    • Установка вспомогательного ПО.
  • Настройка сети. Работа с сетью;
  • Поиск и устранение ошибок и неисправностей.
Модуль 3 - Сервер для запуска ПО
  • Базовая настройка сервера. Задачи по расписанию;
  • Сервер баз данных;
  • Сервер очередей сообщений;
  • Сервер Radius.
Модуль 4 - Новый подход к поставке ПО
  • Установка docker и зависимостей;
  • Запуск и поставка собственного приложения в контейнер docker.
Спойлер: Модуль 5 - Разработка реляционных баз данных в PostgreSQL. Язык запросов SQL и PL/pgSQL
На курсе слушатели изучат логический дизайн таблиц, индексирование и планы запросов. Научатся создавать объекты баз данных, включая представления, функции, триггеры. Вы узнаете и о других аспектах работы с данными, а именно – о транзакциях, параллелизме, курсорах, обработке ошибок. Курс рассчитан на неподготовленного пользователя и начинается с основ изучения языка запросов SQL.

Навыки, приобретаемые по окончании курса:
1. Разработка нормализованной структуры реляционной базы данных;
2. Выбор подходящих типов данных при создании таблиц;
3. Задание декларативных ограничений целостности данных;
4. Выборка и модификация данных в таблицах;
5. Разработка и создание представлений, скалярных и табличных функций, триггеров;
6. Управление транзакциями.
7. Определение стратегии индексирования для повышения производительности.

Модуль 1 - Введение в реляционные базы данных
  • Клиент-серверная архитектура. Требования к СУБД.
  • Инфологический, даталогический и физический аспекты проектирования БД.
  • Реляционная модель. Нормализация БД. Назначение, состав SQL.
Модуль 2 - Создание таблиц
  • Типы данных для полей таблицы. Декларативные ограничения целостности.
  • Связи между таблицами. Первичные и внешние ключи.
  • Создание таблиц в PostgreSQL посредством среды pgAdmin и DBeaver.
  • Понятие схемы данных, визуальное создание связей между таблицами.
  • Инструкции CREATE TABLE, ALTER TABLE, DROP TABLE.
  • Особенности изменения и пересоздания существующих таблиц.
Модуль 3 - Основы выборки данных
  • Синтаксис команды SELECT. Полные и краткие имена таблиц и полей. Псевдонимы.
  • Арифметических операции, встроенных функции. Агрегирующие функции. Фильтрация.
  • Операции сравнения для числовых и текстовых значений. Логические операции. Сортировка выводимого результата.
Модуль 4 - Соединение таблиц в запросе
  • Декартово произведение. Внутреннее соединение. Внешнее соединение.
Модуль 5 - Расширенные возможности выборки данных
  • Группировка строк по одному или нескольким полям.
  • Агрегирующие функции и фильтрация по группам. Вывод промежуточных итогов.
  • Вложенные запросы SELECT.
  • Объединение, вычитание, пересечение результатов нескольких запросов SELECT.
  • Обобщенные табличные выражения.
Модуль 6 - Представления
  • Понятие представления, преимущества использования.
  • Создание представлений при помощи запросов SELECT.
  • Ограничения на синтаксис запроса.
  • Использование представлений для выборки данных.
Модуль 7 - Манипулирование строками таблиц
  • Инструкция INSERT INTO. Отличия от запроса SELECT… INTO.
  • Модификация данных при помощи инструкции UPDATE. Удаление данных.
  • Инструкции DELETE FROM и TRUNCATE.
Модуль 8 - Функции и язык PL/pgSQL
  • Преимущества функций.
  • Создание функций, реализующих логику добавления и удаления данных.
  • Использование переменных. Перехват и обработка ошибок.
  • Табличные функции.
Модуль 9 - Курсоры
  • Серверные и клиентские курсоры.
  • Задачи, решаемые при помощи простых и вложенных курсоров.
  • Недостатки императивного подхода.
Модуль 10 - Транзакции
  • Назначение и свойства транзакций. Блокировки. Уровни изолированности транзакций.
  • Применение транзакций при создании функций.
Модуль 11 - Триггеры
  • Понятие триггера DML. Типы триггеров в стандарте.
  • Создание триггеров и триггерных функций. Преимущества и недостатки триггеров.
  • Использование триггеров для аудита.
Модуль 12 - Индексы и производительность
  • Алгоритмическая сложность различных запросов. План выполнения запроса.
  • Понятие индекса. Индексы по нескольким полям. Типы данных и индексы.
  • Кластеризованный индекс.
  • Повышение производительности при помощи некластеризованных индексов.
Спойлер: Модуль 6 - Python ORM
На курсе слушатели научатся создавать и оптимизировать веб-приложения, а также получат навык работы с фреймворком SQLAlchemy для работы с реляционными базами данных.

Навыки, приобретаемые по окончании курса:
1. Строить запросы;
2. Анализировать эффективность использования ORM;
3. Работать с SQLAlchemy.

1. Настройка Django ORM
2. Основные концепции ORM
3. Обзор Django ORM
4. Запрос данных из базы
5. Связи
6. Аннотирование и агрегация
7. Транзакции
8. Эффективное использование ORM
9. Работа с SQLAlchemy
Спойлер: Модуль 7 - Инфраструктурные решения для программиста
Данный модуль рассматривает технологии, используемые в серьезных проектах, состоящих из большого количества разнородных, слабосвязанных, удаленных компонентов. Знание данных технологий выносит вас из мира проектов «hello world» работающих на одной пользовательской рабочей станции в мир большого продакшена с определенными требованиями к доступности, производительности, отказоустойчивости и безопасности.

Все технологии будут рассмотрены с примерами кода на языке python, все сервисы будут развернуты на клоне самого крупного коммерческого линукс дистрибутива Red Hat Enterprise Linux — RockyLinux.

Слушателю будут предоставлены виртуальные машины с установленным ПО.

Модуль 1 - In-memory технологии
  • Redis - резидентная система управления базами данных класса NoSQL;
  • Tarantool - платформа in-memory вычислений.
Модуль 2 - Документно-ориентированная СУБД
  • MongoDB - документно-ориентированная система управления базами данных.
Модуль 3 - Колоночная аналитическая СУБД
  • ClickHouse - колоночная аналитическая СУБД.
Модуль 4 - Работа с очередями сообщений, распараллеливание выполнения
  • RabbitMQ - программный брокер сообщений на основе стандарта AMQP;
  • Apache Kafka - распределённый программный брокер сообщений.
Модуль 5 - Работа с REST API
  • Python FastAPI framework;
  • Python requests;
  • Сurl.
Модуль 6 - Кластерные решения, балансировка нагрузки, высокая доступность
  • Обзор решений высокой доступности;
  • Обзор решений балансировки;
  • Обзор Nginx;
  • Настройка Haproxy.
Модуль 7 - Логирование работы приложений
  • Понимание логирования;
  • Разработка подсистемы логирования для приложения;
  • Разбор и фильтрация логов;
  • Kibana/osd.
Модуль 8 - Docker платформа для разработки, доставки и эксплуатации приложений
  • Обзор решения;
  • Запуск контейнеров;
  • Интерфейс управления – Portainer;
  • Запуск своего приложения в Docker;
  • Публикация проекта на Dockerhub.
Спойлер: Модуль 8 - Программирование на языке Python. Продвинутый уровень
Python – высокоуровневый язык программирования, ориентированный на повышение производительности разработчика и читаемости кода. Синтаксис языка прост и минималистичен, что хорошо подойдет для начинающих программистов. В то же время библиотека языка весьма широка, а сам Python поддерживает несколько парадигм программирования (структурное, объектно-ориентированное, функциональное и тд.), что подойдет для опытных разработчиков.

Модуль 1 - Работа с базами данных
  • Обзор БД;
  • Серверные БД;
  • Установка движка БД;
  • Баз серверные БД;
  • Хранение данных приложения в БД;
  • Mysql, pgsql, reddis.
Модуль 2 - Работа с API внешних сервисов
  • Библиотека requests;
  • Формат данных JSON;
  • headers, payload;
  • Работа с API web сервиса получения погоды.
Модуль 3 - Работаем с API Telegram
  • Создание бота;
  • Создание канала;
  • Отправка сообщений в канал;
  • Отправка документов в канал;
  • Получение данных из канала;
  • Создание канала с информацией о погоде (курсе валют, последних новостях...).
Модуль 4 - Работаем с API VK
  • Бот для автоматической публикации постов;
  • Работа с командной строкой, написание планировщика.
Модуль 5 - Код ревью
  • Проведение ревью кода;
  • Написание замечаний;
  • Исправление замечаний (правильные коммиты)
Модуль 6 - Чтение чужого кода
  • Изучение чужого кода;
  • Написание README по чужому коду;
  • Ревью и оптимизация.
Модуль 7 - Совместная разработка
  • Создание ТЗ;
  • Распределение задач;
  • Создание веток на Github;
  • Реализация проекта;
  • Понятие чистых функций;
  • Слияние веток.
Модуль 8 - Совместная разработка веб сервиса на Python
  • Запуск простого веб сервиса;
  • Прием отправка данных;
  • Работа с Jinja;
  • Чтение данных из xls файла.
Модуль 9 - Совместная разработка веб сервиса на Python (Django)
  • Установка Django;
  • Основы Django;
  • Основы верстки;
  • Основы CSS;
  • Создание шаблонов;
  • Вызов внешних скриптов.
Модуль 10 - Рекомендации по оформлению портфолио на Github
  • Создание базового портфолио;
  • Ревью портфолио слушателей.
Спойлер: Модуль 9 - Анализ рынка труда. Подготовка к собеседованиям
По окончании очной программы обучения HR консультант поможет составить эффективное резюме, сопроводительное письмо и подскажет как оформить портфолио.

Модуль 1 - Анализ рынка труда IT-специалистов
  • Актуальные требования предъявляемые к IT-специалистам;
  • Как изменились обязанности специалистов в условиях санкций и перехода на российское ПО
  • Как меняется зарплата специалиста в зависимости от навыков.
Модуль 2 - Работа над резюме. Подготовка к собеседованию
  • На что обратить внимание при составлении резюме (в т.ч алгоритм создания резюме, на чём акцентировать внимание работодателя, сопроводительное письмо и допускаемых ошибках);
  • Как подготовиться к собеседованию, какие вопросы задаст будущий руководитель и что важно отметить о работодателе.

Продажник

Материал «Разработчик программного обеспечения на Python (backend разработчик) [2024] [ИПАП]», возможно, скоро появится на SHAREWOOD.
Воспользуйтесь поиском, может быть, он уже опубликован.
 
Статус
В этой теме нельзя размещать новые ответы.
Последние темы автора
SHAREWOOD
Ответы
0
Просмотры
9
SHAREWOOD
SHAREWOOD
SHAREWOOD
Ответы
0
Просмотры
8
SHAREWOOD
SHAREWOOD
SHAREWOOD
Ответы
0
Просмотры
9
SHAREWOOD
SHAREWOOD
SHAREWOOD
Ответы
0
Просмотры
9
SHAREWOOD
SHAREWOOD
Похожие темы
SHAREWOOD
Ответы
0
Просмотры
2K
SHAREWOOD
SHAREWOOD
SHAREWOOD
Ответы
0
Просмотры
2K
SHAREWOOD
SHAREWOOD
SHAREWOOD
Ответы
0
Просмотры
1K
SHAREWOOD
SHAREWOOD
Сверху Снизу