Pull to refresh

Лучший стек для питониста-джуна 2023

Level of difficultyEasy
Reading time4 min
Views14K

В данной статье высказано лишь мнение автора, статья выпущена не с целью агитации и попытки завлечь разработчика на смену технологий. Данный стек я считаю наиболее благоприятным и достаточно актуальным по состоянию рынка на 2023 год.

Django

Давно устоявшийся и прекрасно показывающий себя фреймворк. Постоянная поддержка, множество пакетов "из под капота", отличный ORM, хорошее распределение компонентов и простота в изучении - вот, что предлагает Django.

Да, все мы знаем, что выходят новые фреймворки, например, FastAPI, который все увереннее закрепляется на рынке, но сможет ли он похвастаться тем, что имеет Django? Например, для нормальной ORM, если вы не хотите писать напрямую SQL-запросы конечно же, нужно будет воспользоваться sqlalchemy и alembic. В Django же все проще, создай проект и твори! Есть и плюсы FastAPI, но об этом в другой статье, не будем отходить от темы.

Так вот, есть и не такие «молодые» технологии, например, тот же Flask, тоже хорошо закрепился на рынке и стеке разработчиков, но ситуация очень похожа с FastAPI, не хватает простоты и множества удобств. Та же панель администратора - это что-то с чем-то, максимально полезный инструмент, который используются все при создании проектов на Django. Так же, стоит отметить приложения в Django, отличный способ разделять основные модули проекта и не ловить путаницу, опять-таки, не все могут этим похвастаться. Не стоит и забывать об огромном комьюнити пользователей этого фреймворка, я не раз сталкивался с ошибками и практически все находил на том же Stack Overflow. Еще одна, но значительная плюшка - это неплохой перевод на русский язык.

Django пользуется принципом «Всё включено» («Batteries included»)

Django REST Framework

О да, я знаю! На этом моменте, как мне кажется, многие могут оставить комментарий по типу: "Ну мог бы отнести DRF к Django", но нет, о нем я хочу рассказать в отдельном пункте.

Django REST Framework, который часто сокращается — «DRF», является библиотекой для построения API. Он имеет модульную и настраиваемую архитектуру, которая хорошо работает для создания как простых, так и сложных API. Так же, дает большие плюшки из-под капота и легкость в понимании. С ним вы точно сможете построить хороший а главное - рабочий и быстрый API.

Так же, хочу отметить возможность создания «кастомного» API и добавления к нему классов-миксинов.

PostgreSQL

Да, знаю, я же так хвалил ORM, но все же, хоть чуточку, но нужно понимать эту БД, например, для того, чтобы вы понимали как она устроена, какими способами можно хранить ваши данные (не будете же вы их хранить на проде в SQLite).

Думаю этот пункт не нужно сильно заполнять, тут все и так очевидно, знания базовых SQL-запросов и понимание как работает данная БД и ее плюшки выведут вас на хорошее хранение данных. Конечно же необходимо работать с pgAdmin, но там все еще проще и понятнее.

Docker и Docker-compose

Знаю, что данная технология относится больше к DevOps, но если взглянуть на рынок и вакансии - все чаще в критериях можно увидеть эти технологии

Тут тоже все очень очевидно, без контейнеризации сейчас вообще никуда. Практически всегда, нет, скорее всего всегда, бек «лежит» на Docker. Он довольно прост в изучении, при чем на это не понадобится большое время, чтобы начать собирать простые контейнеры. Это еще не так сильно закрепилось в требованиях в специалисту, но на фоне других конкурентов вы будете смотреться лучше.

Бонусом для вас даю наводку на бесплатный курс для старта в изучении Docker на платформе Stepik. Перейдя на платформу загляните на данный курс
Важно! Курс никак не связан со мною, я не агитирую, просто даю полезную информацию!

Git

То, без чего не обходится ни один проект

В цитате все указано верно, да да, нужно иметь знания в этой области. И тут скорее всего этот пункт подходит не только для питонистов, а для всех разработчиков вообще. Git также легок в изучении и не требует огромных усилий и затраты времени. Базовые для работы моменты реально изучить в очень короткие и сжатые сроки. Плюсом будет то, что вы можете практиковать его на своих проектах и выкладывать все в GitHub или другую рабочую среду.

JavaScript, HTML и CSS

Сейчас возможно будут гневные комментарии и ряд упреков, но я попробую объяснить почему я включил это в список

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

Так вот, компании было бы очень кстати, если бы вы обладали небольшими знаниями в этой области, придя на работу вы можете больше отточить эти навыки и в итоге стать Full-stack разработчиком.

Есть и другой вариант, компании нужен тот самый Full-stack, но это не очень простая задача - найти Full-stack джуна. Компания берет back-end и в последствии переучивает его на Full-stack. Довольно частый исход событий.

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

Бесплатных или очень дешевых курсов в интернете валом, ну или самостоятельное изучение на худой конец.

Примеры того, о чем я рассказал на реальных вакансиях

Подведем итоги

Я знаю, что не указал - Python Core, принципы ООП и подобные, строение API, но речь шла о технологиях, а не об остальных требованиях.

Нужен ли такой стек? Ответ - да! Определено, конечно же, вы можете заменить Django на Flask или FastAPI, чаще всего просят что‑то из трех вариантов, но я считаю Django наиболее востребованным, простым в изучении и мощным фреймворком, да, в нем есть и свои минусы, ну куда уж без них, но это не мешает ему оставаться «царем горы». Вы конечно можете не учить Docker и JS, но почему бы не получить плюс?

В целом, это актуальные желания рынка на 2023 год, что будет дальше? Никто не знает. Последнее время для IT становится более тяжелым и непредсказуемым.

Tags:
Hubs:
If this publication inspired you and you want to support the author, do not hesitate to click on the button
Total votes 8: ↑4 and ↓4+1
Comments7

Articles