LINUX.ORG.RU
ФорумTalks

Спрос на питонистов [теория тупости]

 , , ,


0

1

Сопсоставил я факты, и поразился одной вещи, которую отправлю вам в виде твитта.

На рынке труда сложилась абсурдная ситуация, когда зарплаты питонистов вышли почти на уровень крестовиков. Питоносеньоры стоят $5500-7000. WTF, если учесть, что изначально смысл питона заключался в том, чтобы посадить на нем кодить макаку за еду? Неужели я был прав год назад, когда писал, что кодинг на питоне не проще, чем кодинг на C++? Или же это очередной рынкоабсурд плана:

-- На чём будем делать новый проект?
-- На питоне. На нем проще писать и больше кодеров...
Спустя год...
-- Почему до сих пор ничего не работает и где нам найти норм индуса-питониста дешевле чем за $5000?

★★★★

изначально смысл питона заключался в том, чтобы посадить на нем кодить макаку за еду

Путаешь с go. Хотя за go тоже подозрительно много нынче дают.

PolarFox ★★★★★ ()

кодинг

Кодинг проще. Программирование не проще.

izzholtik ★★★ ()

Пользуясь случаем, хочу спросить, куда можно вкатиться джуном? Неужели питон?

sehellion ★★★★★ ()

Это еще не предел, на dou.ua тема поднялась, там уже вакансии на 100к / year, это в украине(!), по многим языкам. Какая-то херня происходит с рынком труда. Явная диспропорция, наверное бабло инвесторов пошле в всякие онлан стартпаы, плюс рост инет свервисов из-за пандемии, потому и начался канибальный хантинг. Рано или поздно все это все сдуется, а кодерам наверное просто нужно пользоваться временной ситуацией.

Aber ★★★★☆ ()

Могу предположить, что питон очень разный. Это и бэк и фронт и наука и ML. За последний скорее всего и раздают чемоданы денег, чтобы потом тебе рекламу показать. Это не значит что вчерашняя веб-макака будет 7 кусков грести.

Lordwind ★★★★★ ()
Ответ на: комментарий от utf8nowhere

Тут айранбаг однажды сказала что чтоб быть нормальным кодером на c++ нужно иметь 10 лет опыта. Я как синиор жабокодер с 10+ годами коммерческого опыта могу ответственно сказать, что чтоб писать на жабе без вопросов сообразительному человеку нужно 2-3 года в команде людей с большим опытом. Это не личный опыт, это мое наблюдение со стороны. После осознания этого факта мне даже было обидно :)
Интересно что там с Python, может кто поделится? Мнения по поводу себя любимых мне не интересно, себя нельзя адекватно оценить, нужно именно наблюдение за другими персонажами.

Aber ★★★★☆ ()

Питоносеньоры стоят $5500-7000. WTF, если учесть, что изначально смысл питона заключался в том, чтобы посадить на нем кодить макаку за еду?

Вероятно, в том, что крестовик с похожей производительностью будет (условно) в три раза дороже? %)

Nervous ★★★★★ ()
Ответ на: комментарий от Aber

на c++ нужно иметь 10 лет опыта.

чтоб писать на жабе без вопросов сообразительному человеку нужно 2-3 года в команде людей с большим опытом.

Интересно что там с Python, может кто поделится?

Чтобы писать как джун, было достаточно 1 день поработать в паре с умным человеком :)

question4 ★★★★★ ()
Ответ на: комментарий от question4

Может я недостаточно ясно выразил мысль, чтоб писать как синиор нужно 2-3 года, в контексте жабы это означает владения коллециями и отсутствия проблем с написанием дженериков. Человек просто пишет код не отличимый от кода любого синиора и знает все основные трудности/ловушки, потому никаких глупостей не делает.

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

Aber ★★★★☆ ()
Последнее исправление: Aber (всего исправлений: 3)

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

leave ★★★★★ ()
Ответ на: комментарий от Aber

Это еще не предел, на dou.ua тема поднялась, там уже вакансии на 100к / year, это в украине(!), по многим языкам. Какая-то херня происходит с рынком труда

Объясняю. Приходит очередной стартап, у которого есть два вариант «развития» бизнеса: либо нанять грамотного кодера и показать инвесторам хотя бы что-то (потому что сроки, как обычно, пролюблены), либо банкротиться. Они заплатят $8k, они заплатят $10k, рекорд на djinni был $12k за чела, который не стоил этих денег, даже если считать, что всё его резюме правдиво от начала до конца и у него безупречные навыки по всем тезисам. Да, сдуется это очень быстро, и да, этим нужно пользоваться. Этим точно так же пользуется амазон: основная функция большинство онлайн-стартапов заключается в спонсировании амазона — об этом просто мало кто говорит. Конечно, чтобы быть привлекательным для такого стартапа, тебе нужно быть готовым иметь очень хорошие навыки пускания пыли в глаза, и быть готовым через пару месяцев искать новую работу.

byko3y ★★★★ ()
Ответ на: комментарий от Aber

чтоб писать на жабе без вопросов сообразительному человеку нужно 2-3 года в команде людей с большим опытом

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

Интересно что там с Python, может кто поделится?

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

byko3y ★★★★ ()
Ответ на: комментарий от Aber

Вот например практически все джуны попадают в ловушку мутабельных ключей в хешкартах

Охлол, эту хрень в 2022 до сих пор не починили?

byko3y ★★★★ ()
Ответ на: комментарий от Nervous

Вероятно, в том, что крестовик с похожей производительностью будет (условно) в три раза дороже?

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

byko3y ★★★★ ()
Ответ на: комментарий от leave

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

Ну как бы то, что платят за превозмогание — это самоочевидно. Другое дело, что у питона в 2021 были альтернативы, и мотивация плана «весь рынок охотится на питонистов — давайте и мы тоже будем» мне видится странной.

byko3y ★★★★ ()
Ответ на: комментарий от Aber

Рано или поздно все это все сдуется

не сдуется, нечему сдуваться, просто уклад жизни меняется

nightsinger ()

Неужели я был прав год назад, когда писал, что кодинг на питоне не проще, чем кодинг на C++?

Я думаю рын_очек – это не армия и платят не тому, кто больше за$$ался, а кто больше денег принес кабанчику. Значит питонисты их приносят больше.

Im_not_a_robot ★★★★★ ()

Кто тебе сказал, что плюсовики много зарабатывают? Вообще, чем ближе к железу, тем меньше денег. Я давече променял опостылевший жабоинтерпрайз на плюсы с потерей 1к евро в зп. Зато -15% к депрессии.

untitl3d ()

Это ты ещё на зарплаты гошников не смотрел. За процедурные портянки бойлерплейта платят ещё больше.

OSBuster ()
Ответ на: комментарий от Aber

У меня 10+ лет опыта на жабе + универ был весь на жабе, то есть учили всему на ней. Я не знаю устройства хешмапы ибо лень запоминать. Чяднт? :)

Кстати, что это за ловушка мутабельных ключей? Я тоже не знаю :)

untitl3d ()
Последнее исправление: untitl3d (всего исправлений: 1)
Ответ на: комментарий от untitl3d

Ты не пройдешь мое интервью :)

Код запоминать не нужно, только идею про бакеты и для чего нужен hashCode.

Я менторствовал джунов и момент когда они лажают с hasmap/set определяется когда они издают такой звук: «У меня тесты то проходят то не проходят, что за х-ня!».

Aber ★★★★☆ ()
Ответ на: комментарий от Aber

Может я недостаточно ясно выразил мысль, чтоб писать как синиор нужно 2-3 года, в контексте жабы это означает владения коллециями и отсутствия проблем с написанием дженериков

Мухаха. Это сейчас синьором называется? Больше похоже на синьора помидора в значении «старшеклассник». Что же тогда от жуниоров требуется?

bread ()
Ответ на: комментарий от Aber

Ты не пройдешь мое интервью

Я этому рад. Если ты из тех, кто сует user defined типы в ключи мапы, а потом героически переписывает equals и hashCode да еще и жунов подобному учит, то я сам нажму красную кнопочку на интервью с тобой.

untitl3d ()

Тему надо переименовать «Да не горит у меня!»

Успешность коммерческого проекта определяется извлеченной прибылью. Есть места, где уместен Питон, есть места, где С (или кресты), видел я программистов на питоне за сотни нефти, видел я (прям тут) эмбеддеров на хлебе и воде. И наоборот видел.

кодить макаку за еду

Это у тебя в зеркале, да еще у одного Эдуарда из Архыза. А у

индуса-питониста

опыт преодоления весьма непростых экономических и социальных преград, чтобы ты на него свысока смотрел. Спердобейся!

Shaman007 ★★★★★ ()
Ответ на: комментарий от untitl3d

У меня 10+ лет опыта на жабе + универ был весь на жабе, то есть учили всему на ней. Я не знаю устройства хешмапы ибо лень запоминать

Старость не радость. Но если свеженький выпускник этого не знает, то это печаль. Вообще, нормальный детектор профнепригодности.

bread ()
Ответ на: комментарий от byko3y

Платят за то, что востребовано. Кресты не востребованы. Зарплаты питонистов сильно поехали вверх после появления tensorflow и развития датасаенса.

leave ★★★★★ ()
Ответ на: комментарий от untitl3d

Кстати, что это за ловушка мутабельных ключей? Я тоже не знаю :)

HashMap в большинстве случаев имеет сложность вставки/извлечения O(1), это достигается за счет вычисления хеша ключа в момент вставки. Метод put хешу ключа находит бакет (корзину) куда помещается ключ-значение.
Когда нужно извлечь значение по ключу метод get(key) опять вычислит бакет (корзину) где нужно искать ключ-значение. Если мы меняем ключ то меняется его hashcode, и с большой вероятностью метод get будет искать ключ-значение в другом бакете (корзине) и ничего не найдет. Но если коллекция растет то может произойти rehash и все опять будет нормально, в общем рандом.

Aber ★★★★☆ ()
Ответ на: комментарий от Aber

Ну и как ты ее починишь не добавляя оверхеда?

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

byko3y ★★★★ ()
Ответ на: комментарий от Aber

Это я в курсе. Мне лень запоминать что там на бекенде за имплементация. Когда коллизии, красно-черное дерево или еще что и какая там асимптотика. На самом деле в мапе в java worst case n, нежданчик да?

Мне вот никогда в жизни не приходилось мутабельные типы использовать как ключи в мапе. Даже не знал про такую проблему, интуитивно избегал.

untitl3d ()
Последнее исправление: untitl3d (всего исправлений: 1)
Ответ на: комментарий от untitl3d

Да нет, должно быть o(n) в худшем, когда коллизии. n^2 никак не может получится. А вообще вроде o(n) это раньше было, теперь на случай коллизии log n. Т.е. они в бакеты TreeMap засунули, я не проверял, где-то прочитал.

Aber ★★★★☆ ()
Ответ на: комментарий от Im_not_a_robot

Я думаю рын_очек – это не армия и платят не тому, кто больше за$$ался, а кто больше денег принес кабанчику. Значит питонисты их приносят больше

Ты много принес денег кабанчику? По опыту меня и людей, с которыми я знаком, программирование очень и очень опосредовано связано с зарабатыванием денег. То есть, в большинстве случаев практически нереально посчитать, сколько денег заработано или потеряно на софте. Вот Lidl внедрила SAP, а по итогу выбросила деньги на ветер и не получила ничего. Но SAP — это самые прибыльные мировые софтостроители (в абсолютном выражении). Если подумать, что значит конкуренция плана «кто дороже всего продаст свою систему», то получится, что на рынке выигрывает тот, кто таким образом принесет больше всего убытков заказчику в виде прибыли себе любимому.

byko3y ★★★★ ()
Ответ на: комментарий от untitl3d

Кто тебе сказал, что плюсовики много зарабатывают? Вообще, чем ближе к железу, тем меньше денег. Я давече променял опостылевший жабоинтерпрайз на плюсы с потерей 1к евро в зп. Зато -15% к депрессии

У меня та же фигня: ушел от оперденей в железки, не могу нарадоваться. Йося Крейнин правильно говорил по этому поводу. Он сам тоже железки ковыряет нынче.

byko3y ★★★★ ()

изначально смысл питона заключался в том, чтобы посадить на нем кодить макаку за еду?

Что-то ты путаешь Python и php, либо с js.

th3m3 ★★★★★ ()

плюсую мнение, что такие деньги платят не опытным клепателям сайтиков на джанге, а ML-щикам со знанием питона.

Примерно то же самое с Go, только там платят не за ML, а за знание AWS, кубернетесов, распределенных БД и всего прочего на эту тему.

Lrrr ★★★ ()

Неужели я был прав год назад, когда писал, что кодинг на питоне не проще, чем кодинг на C++?

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

bread ()

Крестовики не нужны, потому что пишут на порядок медленнее, чем питонисты. Кто в здравом уме им (крестовикам) вообще платит?

hakavlad ★★★ ()
Последнее исправление: hakavlad (всего исправлений: 1)
Ответ на: комментарий от byko3y

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

Мне кажется это самое сложное, это байткод надо вкомпилливать, потом компиляцию разделить как в сишных проектах на release и debug, заставить все работать в разных IDE плюс плагины в maven/gradle.

Проще натравить статический анализатор чтоб он проверял имутабельность класса используемого как ключ, типа все поля final или вот недавно в java появились иммутабельные классы recrod, с ним наверное будет проще с уже существующим статическим анализаторам новые правила прописать.
Но в общем это все костыли и многие стат. анализаторы не ходят по classpath, потому как это сложно и медленно, а анализирует только текущий документ на лету.

Aber ★★★★☆ ()
Ответ на: комментарий от bread

Мухаха. Это сейчас синьором называется? Больше похоже на синьора помидора в значении «старшеклассник». Что же тогда от жуниоров требуется?

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

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

Aber ★★★★☆ ()
Ответ на: комментарий от Shaman007

Успешность коммерческого проекта определяется извлеченной прибылью

Ты забываешь уточнить, кем извлеченной. У коммерческого проекта нет рук и ног, нет жены, нет паспорта, и с новым годом его поздравить не получится. Коммерческая организация — это набор независимых людей, которые, в общем-то, друг другу безразличны, и их объединяет только возможность извлечь прибыль, которая даже здесь может оказаться разной, что опять поссорит этих людей.

Есть места, где уместен Питон, есть места, где С (или кресты), видел я программистов на питоне за сотни нефти, видел я (прям тут) эмбеддеров на хлебе и воде. И наоборот видел

А я видел людей, которые занимались вообще черт знает чем, и норм извлекали прибыль. Круче питонистов, ага. Но тред все-таки был не про сторону работника, а про сторону нанимателя, который смотрит такой на рыночек, и думает «о, питонисты подорожали... САМОЕ ВРЕМЯ НАНЯТЬ ПИТОНИСТА».

кодить макаку за еду

Это у тебя в зеркале, да еще у одного Эдуарда из Архыза

Честно говоря, уже не помнил, что это за эдик. Для тех, кто тоже не помнит: www.linux.org.ru/people/Eddy_Em/profile

А у индуса-питониста опыт преодоления весьма непростых экономических и социальных преград, чтобы ты на него свысока смотрел. Спердобейся!

Как бы я спердобился, суть преград понимаю, чисто социальных: есть люди, которые всем нужны, но они уже наняты, и есть в 20 раз больше людей, которых никто не нанимает. Смысл треда, еще раз, заключается в том, чтобы мне попытаться понять смысл традиционно бессмысленных процессов в IT индустрии. Как говорил один великий «за привелегию писать программы нужно брать деньги с самих программистов».

byko3y ★★★★ ()
Ответ на: комментарий от leave

Платят за то, что востребовано. Кресты не востребованы. Зарплаты питонистов сильно поехали вверх после появления tensorflow и развития датасаенса

Tensorflow очень давно появился, а вот неадекватный рост спроса и ЗП возник совсем недавно, причем, этот темп сильно опережает темпы по остальным ЯП, особенно по всяким PHP и прочим устаревшем мусоре.

byko3y ★★★★ ()
Ответ на: комментарий от Aber

Может я недостаточно ясно выразил мысль

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

question4 ★★★★★ ()
Ответ на: комментарий от Aber

Мне кажется это самое сложное, это байткод надо вкомпилливать, потом компиляцию разделить как в сишных проектах на release и debug, заставить все работать в разных IDE плюс плагины в maven/gradle

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

Проще натравить статический анализатор чтоб он проверял имутабельность класса используемого как ключ, типа все поля final или вот недавно в java появились иммутабельные классы recrod, с ним наверное будет проще с уже существующим статическим анализаторам новые правила прописать

Но это серьезно ограничивает применение типа, используемого в качестве хэш-ключа. То есть, это как бы неявные накладные расходы на трансляцию. Конечно ,я не экспорт по жаве, так что они могут быть ничтожны и оправданы.

byko3y ★★★★ ()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)