Roadmap Python Developer
Бери и изучай. Если тема тебе знакома, можно быстро ее пробежать или скипнуть. Задача - прокачать базовые знания.
Python
Базовый python
Ну понятно, тут надо понимать базовый синтаксис и разбираться как вообще пишется какой либо код и как он работает. Для этого можно пройти бесплатные курсы
Курс посвящен базовым понятиям и элементам языка программирования Python (операторы, числовые и строковые переменные, списки, условия и циклы). Курс является вводным и наиболее подойдет слушателям, не имеющим опыта написания программ ни на одном из языков программирования. Cсылка: https://stepik.org/course/67/
Так же можно посмотреть тут: https://pythontutor.ru/
После следует приступить к плейлисту декораторы канала luchanos и для практики пройти на Stepik «Декораторы в Python»: часть 1 и часть 2.
ООП
Понимать что такое классы, как организовано наследование и прочие трюки в ООП на примитивном уровне
- плейлист Python OOP канала JimShapedCoding;
- курс Python ООП Олега Молчанова
В конце переходим к SOLID и по желанию к паттернам (плейлист и сайт)
Конкурентность
Что такое, как, зачем и почему? Понимать принципы и отличия подходов к конкурентным задачам.
Основы многопроцессорности и многопоточности:
- Вот неплохая лекция https://www.youtube.com/watch?v=QitEF7Qvi4w
- Конкурентность в Python канала luchanos.
По асинхронному программированию:
- раз, два, три и спина болеть не будет
- Асинхронность в Python от Олега Молчанова;
- import asyncio: Learn Python’s Asyncio канала EdgeDB.
- https://stepik.org/170777
Тестирование кода
Базовое понимание что такое тестирование.
плейлист Pytest тестирование канала luchanos.
Алгоритмы
📌 Если с алгоритмами совсем плохо, лучше пройти курс, например ниже. Если более менее, то просто зарешать easy левел на leetcode, от 50 задач.
Важно! Понимать что такое большое О (big O notation). Уметь считать сложность своего решения. Почитать книгу Адитьи Бхаргавы «Грокаем алгоритмы».
В курсе будут подробно разобраны базовые алгоритмические методы: жадные алгоритмы, метод «разделяй и властвуй», динамическое программирование. Для всех алгоритмов будут математически строго доказаны корректность и оценки на время работы. Помимо теоретических основ будут рассказаны тонкости реализации алгоритмов на языках программирования C++, Java и Python.
Cсылка: https://stepik.org/course/217. Чуть больше задачек по Python есть тут - https://stepik.org/course/431/. Алгоритмы: теория и практика. Методы - https://stepik.org/course/1547/syllabus
Python web basis
Разобраться что такое вебсервер как это работает +-. Пример курса где про это есть (https://stepik.org/course/512/promo,
FastAPI
Базовый веб фреймворк на python. понимать основы, как на нем писать, как устроена идея вебсервиса и тд.
- https://stepik.org/course/179694/promo
- https://www.youtube.com/watch?v=7IdfnjXsdN4&list=PLeLN0qH0-mCVQKZ8-W1LhxDcVlWtTALCS
Django
Тоже базовый вебфреймворк. Желательно пройти базовый курс, например:
- https://www.youtube.com/watch?v=wOjicN2OXbs&list=PLBheEHDcG7-nyRX-kMT2jyudahDQ-A-Ss
- https://stepik.org/course/174634/promo
Базы данных
Курс введения в базы данных знакомит слушателями с историей создания систем обработки структурированных данных, подходами к обработке информации, развитием моделей данных и систем управления данными. Основу курса составляет изучение и применение в типовых ситуациях средств SQL для обработки данных в SQL-СУБД. Выполнение практических задач в рамках курса предполагает использование СУБД MySQL.
Ссылка: https://stepik.org/course/551
Ссылка: https://stepik.org/course/2614
Тренажер: https://stepik.org/course/Интерактивный-тренажер-по-SQL-63054/
По возможности просмотреть курс по PostgreSQL:
Порешать задачки тут
Объяснения про Explain Analyze: https://www.youtube.com/watch?v=sgC9LIj-6fM
Остальное
HTTP / REST API
Понимать что это такое, ключевую идею. Почитать можно тут
https://habr.com/ru/post/483202/ https://habr.com/ru/post/590679/ https://habr.com/ru/company/piter/blog/511382/
GIT
Система контроля версий Git является стандартом де-факто в деле управления исходным кодом и каждый разработчик должен понимать основы работы с ней. Задачей курса является описание наиболее важных команд и сценариев их использования.
Cсылка: https://stepik.org/course/3145/
Крутой тренажер: https://learngitbranching.js.org/?locale=ru_RU
Можно что то другое (ютуб или книги), главное понимать команды из шпаргалки
https://www.youtube.com/watch?v=hqDWXBlQG5c
Docker
Базовое понимание что такое docker и docker-compose. Поидее этого видоса достаточно. При особом желании лучше потренироваться пособирать свои образы и позапускать простейшие docker-compose файлы
Docker с 0 до 100%. Всё, что нужно знать.
Docker - Полный курс Docker Для Начинающих [3 ЧАСА]
Linux
желательно сразу пересесть на linux (ubuntu, mint) или macos. Т.к. на винде гораздо больше ненужных нам проблем.
Курс по линуксу: https://stepik.org/course/73/promo
message brokers Kafka/RabbitMQ
Тут совсем по верхам достаточно пройтись, понять что это и зачем, как с этим работать - пока не важно
- https://habr.com/ru/companies/sberbank/articles/669456/
- https://academy.mediasoft.team/article/brokery-soobshenii-chto-eto-iz-chego-sostoyat-plyusy-i-minusy-sravnivaem-apache-kafka-redis-i-rabbitmq/
- https://www.youtube.com/watch?v=UhpNvIeoYi8
- https://www.youtube.com/watch?v=Mw9YFay8-WM
- https://www.youtube.com/watch?v=ygZ9LsJG7Dw
Полезное
- Курс по Python от Google;
- Хендбук по Python – курс от Яндекса;
- Python Full Course на канале Bro Code;
- Питонтьютор – небольшой курс по Python;
- Интерактивное руководство по Python от DataCamp;
- Python tutorials – ещё один неплохой курс по питону;
- Python for Everybody – курс от университета Мичигана;
- Изучаем Python – курс для начинающих от freeCodeCamp;
- Добрый, добрый Python – обучающий курс от Сергея Балакирева;
- Инди-курс программирования на Python – курс от Артёма Егорова;
- Алгоритмы и структуры данных на Python 3 – лекции Тимофея Хирьянова;
- Программирование на Python – курс начального уровня от института биоинформатики.
- https://neetcode.io/roadmap