Задать вопрос
@alexei_mark0v

Для каких проектов и задач в backend предпочтительнее Python с фреймворком Django?

для каких проектов и задач в backend предпочтительнее Python с фреймворком Django? Действительно ли в backend разработке на этом стэке (Python Django и др. фреймворки) новичку найти работу гораздо сложнее, чем на других языках (например, java, php)?

В областях применения других backend языков (php, java, c#, c++, go) более-менее разобрался, но касательно применения Python в backend информация крайне противоречивая в интернете. На одних сайтах пишут про то, что он удобен для небольших проектов или для того, чтобы основу перспективного проекта сначала писать на python, а потом уже дорабатывать на других языках. Огромное количество курсов, где рассказывают, как python востребован в backend, отличное решение для старта в IT и всё в этом духе. Приводят в пример статистику, где python на первых местах рейтинга, но, если я правильно понял, популярен он за счет других областей – аналитики, data science и др., но не backend. Помимо этого, встречаю на тематических сайтах противоположное мнение, что в коммерческой разработке он применяется в основном опытными разработчиками и только в определённых случаях, соответственно работу найти крайне сложно новичку в этом направлении. Я написал на Хабркарьере «Django» и там 25 вакансий (всех уровней), на хэд хантере их 63 – сильно меньше, чем на java, php, например. Всё это наталкивает на мысль, что острая востребованность python в backend – это миф. Понимаю, что нужно самостоятельно искать информацию, но это тот случай, когда самому непросто разобраться на начальном этапе.
  • Вопрос задан
  • 640 просмотров
Подписаться 2 Простой 1 комментарий
Решения вопроса 2
trapwalker
@trapwalker
Программист, энтузиаст
Вы немного путаете причины и следствия.
Если ML и аналитику делают чаще всего н апитоне, это не значит, что на питоне делают чаще всего аналитику и ML. Просто для аналитики и ML в питоне очень много "батареек", он в этом направлении лидер. Но основное применение питона - это бэкенд. Джанго действительно очень популярна, и его только недавно стал перегонять FastAPI соблазняя своей асинхронностью.
Прелесть и преимущество Джанги в его самодостаточности для многих направлений применения. Там и довольно элегантный ORM в коробке, и шаблонизатор, и, что часто очень важно, простя в использовании и мощная админка с системой атворизации и управления правами. Практически с голой джангой и за пол часика можно быстро набросать модель данных и развернуть MVP, причем совсем не придётся тратить время ни на авторизацию, ни на организацию всяких там систем миграций, таск-менеджмента, модульного согласования разных фичей и т.д..
А если учесть, что гитхаб ломится от готовых блогов, магазинов, чатов, виджетов, систем работы с комментариями в виде приложений для джанго, а эти приложения егко собираются в один проект и не толкаются друг с другом локтями при этом, то тут вполне можно понять почему Джанго так популярен.
Питон в целом и Джанго в частности дают скорость разработки, которой позавидуют любые другие языки и фреймворки. При этом язык довольно свежий, современный и удобный.

Однако меня смущает ваша постановка вопроса. Такое ощущение, что вы себе стек подбираете по озвученным критериям. Эдак могу посоветовать идти в перловики. На перле тонны легаси, в котором сейчас хрен кто ладу даёт, все бегут на что-то покомфортнее, а зарплаты у перловиков из-за вакуума на рынке не маленькая. Ну там, где это вижу я. Да, будущего у языка нет, но здесь и сейчас можно постричь бабла и подоминировать на своей нещаменимости=).
Java - это жирный энтерпрайз, там всегда были и будут деньги. Полагаю крупные компании не сильно боятся обучать себе джунов, потому что эти джуны не улизнут в стартапы и будут залочены на корпоративный сегмент.
Почему меня сутил ваш подход. Дело в том, что разных направлений развития много и в каждом можно преуспеть, но преуспеть в любом направлении сложнее, если вы выбрали его не по "зову сердца", а по меркантильным соображениям и требованиям рынка. У вас может просто не хватить мотивации, чтобы добиться нужного уровня профессионализма для востребованности в выбранном сегменте.
Ответ написан
Комментировать
DollyPapper
@DollyPapper
Все современные языки это один х прокладка между базой данных и клиентом. Нет разницы. Java выбирают чаще всего и энтерпрайзе, потому что там решения проверенные временем, есть специалисты проверенные временем. В остальном создается вакансия "Требуется разрабочик на %язык_name%", потому что уже написано решение на этом языке, команда имеет экспертизу в этом языке. Объективных технических причин выбора например между php-laravel/python-django нет. Бытует мнение что например в php устроится джуну проще чем в python. Но оно складывается из: найти работу на wordpress/битрикс/etc. проще чем в нормальный e-commerce проект питоне. Потому что для такого разряда вакансий требований к разработчику меньше. Одинаковую сложность вы найдете в сравнении: нормальный e-commerce php/нормальный e-commerce python. Но так исторически сложилось что php у нас популярней, потому что банально найти уже матерых спецов на нем проще чем на питоне, вот и пишут на php. Разницы между этими двумя языками в бекенде? Да никаких. Но это я про классический бек - запрос ответ. Php вам уже не подойдет например для вебсокет серверов. Тут уже нужен язык в котором довольно просто сделать durable соединение.
Т.е. резюмируя - выбор языка и стека это чисто политический и бизнесовый аспект в большинстве проектов.

Действительно ли в backend разработке на этом стэке (Python Django и др. фреймворки) новичку найти работу гораздо сложнее, чем на других языках (например, java, php)?
- да сложнее. Потому что на единицу вакансии приходится 10 вкатывающихся в IT единиц. А вакансий этих меньше того же php по озвученым выше причинам. Вопрос лишь в том - боитесь ли вы трудностей и сколько готовы потратить на поиск работы.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
phaggi
@phaggi
лужу, паяю, ЭВМы починяю
Как я понимаю:
если сделать что-то не совсем стандартное среднее, типа сайта для фитнес-клуба, частной поликлиники или что-то в таком роде, или внутренний портал корпоративный, то бэк на Django популярен. Потому что сделать нестандарт там будет не слишком заморочено.

Мелкое что-то, или что-то стандартное, классическое, стандартный магазин там… - либо Django несколько оверсайз, либо уже есть готовые конструкторы с кучей модов и плагинов.
А что-то крупное и крутое серьезное - там как правило уже есть легаси своё.
Ответ написан
Комментировать
dimonchik2013
@dimonchik2013
non progredi est regredi
Я написал на Хабркарьере «Django» и там 25 вакансий (всех уровней), на хэд хантере их 63 – сильно меньше, чем на java, php


*авно вопрос - рисани Spring и нафиг тебе тот Питон сдался, будешь миллионы зашибать )))))))))))

вкратце так: Питон - 1 единица, Java - 4 единицы
времени

а Джанго особо и не нужно, был бы Питонист хороший
Ответ написан
Комментировать
un1t
@un1t
Джанго выбирается из требований к проекту и требований бизнеса. Например если много людей на рынке знают джанго, то это хороший выбор, т.к. не будет проблем найти работника. У него есть определенные плюсы и минусы. В двух словах так не могу объяснить.

Ты сравниваешь один фреймворк на питоне со всеми фреймворками на php. Сравнивай тогда laravel или symfony.
На питоне сейчас популярны django, flask, fastapi. Причем джанга занимает 70%.
Аналитика данных и машинное обучение это не более 10% вакансий, а 90% это бек.

Самые популярные языки для бека на сегодняшний момент насколько могу судить это java, python, go, php, nodejs. На любом из этих языков полно вакансий.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы