September 8, 2024

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 и по желанию к паттернам (плейлист и сайт)

Конкурентность

Что такое, как, зачем и почему? Понимать принципы и отличия подходов к конкурентным задачам.

Основы многопроцессорности и многопоточности:

По асинхронному программированию:

Тестирование кода

Базовое понимание что такое тестирование.

плейлист 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. понимать основы, как на нем писать, как устроена идея вебсервиса и тд.

Курсы:

Django

Тоже базовый вебфреймворк. Желательно пройти базовый курс, например:

Базы данных

Курс введения в базы данных знакомит слушателями с историей создания систем обработки структурированных данных, подходами к обработке информации, развитием моделей данных и систем управления данными. Основу курса составляет изучение и применение в типовых ситуациях средств SQL для обработки данных в SQL-СУБД. Выполнение практических задач в рамках курса предполагает использование СУБД MySQL.

Ссылка: https://stepik.org/course/551

Ссылка: https://stepik.org/course/2614

Тренажер: https://stepik.org/course/Интерактивный-тренажер-по-SQL-63054/

По возможности просмотреть курс по PostgreSQL:

Курс по SQL для начинающих

Порешать задачки тут

Объяснения про 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

Тут совсем по верхам достаточно пройтись, понять что это и зачем, как с этим работать - пока не важно

Почитать:

Посмотреть:

Полезное