Комментарии 137
Модный Rust хотя бы появился рядом с С++, что примерно соответствует тому, что о нём рассказывают.
Но почему не упомянут Dart? Это же вроде наше мобильное всё. И он точно и кросс-платформеный, и производительный, и с низким порогом входа, и с игровым движком, правда двумерным, но 3D вроде только-что сделали. Я в недоумении. Особенно от того, что все согласны, статью плюсуют никто не спрашивает...
Никакого обесценивания к Дарту, просто всего не охватить, как мне кажется :) Тот же Flutter тоже не фигурирует.
Начинал с c\c++. Всю жизнь писал на Java. 3 года на Dart\Flutter. Последний год еще Rust пытаюсь использовать. Мои мысли по этим двум языкам:
Dart хорош в плане программирования. Я писал с первой версии. Просто поразительно, что они смогли впилить в имеющийся уже язык - это плюс. Многие библиотеки повторяют концепции из java - порог входа проще. Но вот кодогенерация слабовата, что заставило меня свои костыли писать, но проблемы не решились - жирный минус. Рефлекшен выпилили. Во Flutter ни рефлекшена изначально не было, ни никакая кодогенерация не помогает + много ненужных повторений в коде. Делается гуглом, некоторые есть протоколы, нонаполовину доделаны. К примеру grpc. Связка Dart\Flutter хороша и много лишнего кода, но все равно у тебя - один релиз программный,одна архитектура и дизайн, одна команда на ios и android - супер
Rust популярен в комьюнити и на слуху. Мониторинг вакансий показывает, что работодатели не нуждаются пока в нем (от чего - вопрос третий уже ). С++ все еще встречается часто в вакансиях
В Dart пишем поддержку макросов. Это радикально улучшит ситуацию с генерацией кода. Вот пример для JSON, вместе с интеграцией в IntelliJ. Сгенерированный код сейчас страшненький, пришлось оторвать пока оптимизацию import prefixes из статического анализатора, пока не догоним эту фичу в CFE (компиляторе).
![JSON macro example JSON macro example](https://habrastorage.org/getpro/habr/upload_files/153/f1b/835/153f1b835d26f31553491c33062a55b9.png)
Но почему не упомянут Dart?
Дык он же почти вымер. Единственная кампания в России, которая им пользовалась в итоге от него решила отказаться. За рубежом окромя гугла оно тоже особо никому не нужно - с большим успехом можно использовать TypeScript - и интероперабельность с JS есть и от него же здоровенная инфраструктура. Ну и wasm вроде как повсеместно завёлся, так что можно использовать что-то посерьёзнее (Rust, C/C++, Zig, C#, Go и пр) и вроде как других причин использовать дарт в проде нет.
Единственная кампания в России, которая им пользовалась в итоге от него решила отказаться.
Компаний, которые пишут на флаттер больше чем вы думаете, яндекс и surf на нем активно пишут и как-то нанимают, уверен что если поискать что-то найти по вкусу получится, но такого разнообразия как с другими технологиями не получите.
В плане кампания, которая активно вкладывалась в инфраструктуру. За яндекс есть сомнения т.к. они по большей части используют С++. Та кампания что решила уйти от него писала про это тут на хабре. Кодовую базу думается мне даже за пару-тройку лет они врядли успели совсем переписать.
В плане кампания, которая активно вкладывалась в инфраструктуру.
Вы видимо говорите о wrike... я детально не смотрел во вклад этой компании, но в мире дарт wrike - мамонты) и с их уходом кажется никакого интереса больше не представляют, особенно для Flutter сообщества в который они успели влезть только как организаторы конференций про Dart, сами они жили в мире Angular Dart. А это между прочем два разных мира: Flutter - мобильный, ангуляр - веб.
![скрин одной из статей wrike скрин одной из статей wrike](https://habrastorage.org/getpro/habr/upload_files/fd1/3c2/0bf/fd13c20bf2eda0bc26cc30aa2c17b98b.png)
Я же назвал актуальные на текущий момент компании, яндекс недавно портировал DivKit (2к звезд на гитхаб) на флаттер, что как бы намекает на живое состояние сообщества как вовне (которое просило), так и внутри (которое писало).
При этом Surf не менее, а может и более крупный игрок если судить по вкладу в "инфру", смотрите, 43 репозитория, я не могу сказать сколько из них чего и оценить пользу тоже (не пишущий флаттерист), но по прикидке 70% самописные или форкнутые либы, 30% остальное (образовательные репозитории+заготовки для новых проектов)
При этом я вами согласен: Dart как язык для веб разработки сейчас скорее мертв. Flutter же очень удобен и активно развивается сам, так и своей популярностью развивает Dart, язык улучшается и адаптируется под потребности и возможности фреймворка. В общем язык сейчас имеет свою нишу и в целом пытается где-то захватить новые.
Как же тонко и аккуратно вы обходите момент, что PHP - прекрасный язык общего назначения, занимающий порядка 90% рынка веб-разработки (один человек это сказал, да), востребованный везде и всеми и что специалистов (настоящих) по PHP ждут везде и за любые деньги.
Зато не забыли мертвый Руби упомянуть.
Что за комплексы у вас?
PHP это не язык общего назначения.
Популярность PHP медленно, но уверенно падает.
В крупном энтерпрайзе, как правило, предпочтение отдают Java и C#, а не PHP. Так что последний точно не востребован "везде".
90% рынка веб разработки PHP занимает, в основном, благодаря популярности готовых CMS. А если считать не по серверам, где он крутится, а по количеству уникальных проектов - всё сильно грустнее становится.
Ну а средняя медиана зарплат PHP разработчиков уже уверенно пробила 100к рублей и уверенно идёт вниз.
специалистов (настоящих) по PHP ждут везде и за любые деньги
Я, конечно, не "настоящий" программист на PHP, всего 15+ лет стажа, но выставляя зарплату в 230-250к на мое резюме 90% отказов без собеседования. А за меньшие деньги я не готов код писать, высиживая геморрой и разбираться в 100500 абстракциях пэхапешных фреймворков.
востребованный везде
Я вчера ради интереса попытался найти PHP в вакансиях от Сбера. Там хренова туча вакансий на питон, джаву, go и нет ни одной на php.
На самом деле этот язык нахрен не нужен в том сегменте рынка, где есть деньги. А где он нужен, так это в нищих ноунейм конторах, где тебе предложат 100-150к максимум за перманентную мозго[CENSORED] с легаси-фекалием.
Ну и биржи фриланса завалены специалистами по этому языку, который уже знает половина страны в виду его лёгкости освоения и древности.
А все эти вакансии по пхп с зарплатами 300к/сек - фейк.
В программировании 4 года, и все на еком проектах на PHP. Каждый проект - крупная продуктовая компания, с большими оборотами. Зарплата у меня 300к + куча бонусов и плюшек. Работу менял в декабре 2023, в вакансии была указана ЗП 280к. Отказы без собесов были, но не сильно много. За 2 недели прошел порядка 15 техсобесов, 6 офферов. С последними даже поторговался. Не знаю, что там у вас за стогнация в этом плане. Да и у всех моих знакомых пхпшников зарплата не меньше моей.
15-летний пхп-шник не может найти 250, а 4-летний получает 350. Кто-то чего-то недоговаривает...
Ну, это понятно, потому что зарплата=скиллы+умение их продать, а не просто скилы. Ну, вопрос из разряда, почему сеилс менеджер по торговле пластиковыми вёдрами может зарабатывать в 100 раз больше учёного-микробиолога :)
Так пхп-шник это не профессия, и не должность. Платят не знание языка.
Хорошая фантастическая история. Я охотно поверю про пэхапэшника с 4 годами опыта, которому платят зарплату Техлида по нынешним меркам. Будто кроме него никто не знает пхп и на этом языке жуткий дефицит кадров.
Ничего нового я на этом сайте и не ожидал услышать. Оторванные от реальности и здравого смысла комментарии, где работодатели за этот уже массовый язык платят сотруднику деньги, которые даже по зарплатомеру Хабра стоят на уровне "встречаются редко".
Не ёрничайте, я тоже знаю пхпшников сеньеров 300к+, опыта у них куда меньше 15 лет. Не мочь найти такую ЗП с таким опытом это надо в специфические условия попасть. Например не рассматривать удалёнку и жить в Урюпинске. Ну или принципиально отказываться решать литкод или ещё что-то в таком духе
Не мочь найти такую ЗП с таким опытом это надо в специфические условия попасть. Например не рассматривать удалёнку и жить в Урюпинске
Я рассматриваю удалёнку и живу в Москве.
тоже знаю пхпшников сеньеров 300к+, опыта у них куда меньше 15 лет
А я знаю пхпшников, кому не повезло устроиться в денежное место и они работают за 100-150. К чему эти сравнения?
Пхп существует четверть века. Его знают тысячи людей. И работодатели в условиях, когда можно нанять человека не за 300, а за 150 - нанимают за 150.
Меня умиляет эта детская наивность в то, что вас на том конце мечтают осыпать баблом за язык, который всегда был достаточно лёгок в освоении, а на одну вакансию сегодня сотни откликов.
Я уж промолчу о том, что количество компаний, готовых платить рядовому разработчику на пхп 300+ денег достаточно ограничено, потому что там с учётом взносов в фонды выйдет под 450.
Меня умиляет эта детская наивность в то, что вас на том конце мечтают осыпать баблом за язык, который всегда был достаточно лёгок в освоении,
А кто-то хочет осыпать баблом за язык, который тяжёл в освоении?
Бизнес хочет осыпать баблом, если вы закрываете его боли. Язык - это уже детали способа закрытия болей.
Бизнес хочет осыпать баблом, если вы закрываете его боли
Ест мнение, что никаких болей у бизнеса нет. Были бы боли - брали бы людей. Вы в курсе как сейчас проходят собеседования? Это как раз показатель того, что болей никаких нет. Бизнес может неспешно просеивать рынок и искать изумруды, ибо не горит.
Я не хочу обидеть участников треда, но у меня есть одно обидное наблюдение.
Как-то при собеседовании человека с 10-летним стажем поймал себя на мысли, что стаж и опыт - разные термины. Стаж был 10 лет, а опыта года на 2, так как всё, что человек делал с третьего года и дальше - повторение уже освоенного.
Может и тут также? Как абстрактный критерий понимания, идёт ли опыт, можно использовать следующий вопрос: бывают ли в работе такие задачи, про которые вы первые недели 2 вообще не знаете, как их делать?
Речь не об этом. Я написал о том, что меня даже не приглашают на собес с указанной зарплатой - мгновенные отказы. И дело тут не в опыте, а в том, что очень много людей варились в среде пхп и работодатель может среди этой массы выбирать спецов дешевле.
В принципе, это будет ждать почти всех разработчиков на популярных языках, как только наберётся критическая масса, которая будет способна закрывать задачи бизнеса. На стройке тоже нужны люди, но им по 70к платят, потому что желающие работать за эти деньги находятся. Тоже самое скоро будет т с it (если уже не произошло).
Ключевое слово "сеньеров". То есть, специалист, который кроме php знает SQL, Redis, Kafka, ClickHouse, gRPC/Protobuf/Swagger, k8s, RabbitMQ, SSL/TLS, HTTP/2, Kerberos/Oauth/Openid и т.п. А даже хорошее знание только языка программирования - это лишь джун+.
В том и дело, что знающих пхп много, а хороших программистов на пхп мало. И да - жуткий дефицит именно хороших кадров.
Выставляйте 300-350к. За 100-150к работодатель получит примерно так идентично полезного разработчика на любом стеке.
Я вчера ради интереса попытался найти PHP в вакансиях от Сбера. Там хренова туча вакансий на питон, джаву, go и нет ни одной на php.
То есть вы посмотрели вакансии одной компании и пытаетесь сделать на основании этого какие-то выводы?
СберЗдоровье, СберАптека, СберБонус, СберЛогистика, СберB2C-платформа и много других подразделений сбера на PHP. Если вы смотрите Core-сбер, то да, там Java.
комментарий удалён
Я вчера ради интереса попытался найти PHP в вакансиях от Сбера
Если смотреть крупнячков, то это какой-нибудь VK. Правда у них свой диалект - Kitty PHP. Да и то вроде тоже постепенно эксперементируют с другими языками.
2 года назад искал миддл php разраба в е-ком. Стек самый стандартный: laravel, nginx, mysql, docker. Спрашивал:
- sql (объединения, индексы, оптимизация запросов, группировки, шаблоны типа EAV)
- laravel (общие вопросы на знание фреймворка, работы с очередями, уведомениями и api)
- docker (общее понимание зачем и почему)
- nginx не спрашивал
Результаты:
- 150к выпускники скилл бокса. Уровень "я тут на вордпрессе сделал сайт бургерной"
- 200к джуны. Уровень "все слова которые вы говорите - я слышал, но что они значат хз"
- 250к джун+. Уровень "вот этой командой создаю модели из консоли, а вот этой генерирую CRUD"
- 300к миддлы. За этот прайс можно взять настоящую боевую единицу. День на осмотреться в проекте, на следующий уже решает задачи.
То есть это соискатели столько требовали и вы столько платили?)
Во даёте - пол-статьи говорит про PHP. 21 упоминание.
Не смотря на комментарии выше, отчасти соглашусь.
PHP лучший стек для малого и среднего бизнеса!
Если вам нужна какая-то панелька, backend с бизнес логикой, то лучше выбора не найти.
Максимально не дорогая поддержка. Куча доступных по ресурсам компании разработчиков, как фриланс, так и фуллтайм.
Сам лично знаю одного предпринимателя, который с нуля написал себе простинький функционал для своего сайта, тупо копируя и слегка поправляя код из интернетов.
В российском бигтехе пхп почти умер. Все пишут на го из того, что раньше было на пхп. Я не знаю о каких не 90, а даже 30 процентах речь. Разве что учитывать уже написанное, а не то, что пишется и поддерживается
По моим ощущениям, на Go переписывают узкие места, а круды как клепали так и клепают на ларавле. И я честно не вижу смысла писать всю админку большого екома на Го, когда ларавля даёт сто очков вперед по производительности процесса разработки.
Так расптространение оценивают по фронтам, а там столько-то миллионов сайтов на всяких вордпресах и прочих.
К сожалению, ваш комментарий такой же спорный, как и заявления в статье, с кторыми вы дискутируете. Что сильно его обесценивает.
90% рынка было в 90-х 2000-х, и те времена давно прошли.
Общего назначения он только в теории, на практике это веб-онли.
Настоящих специалистов по РНР действительно ждут везде и за любые деньги, но зачастую чтобы переучить на Go. Скажем, ко мне половина рекрутеров стучатся именно с вакансиями PHP/Go.
Я согласен с вами, что в статье написана чушь, буквально взаимоисключающие параграфы:
Сейчас можно порекомендовать Ruby..., потому что технология начала умирать
Тут конечно немного вырвано из контекста, но по факту абзац звучит именно так.
или "Во фрилансе самыми востребованными являются РНР и JS", но РНР язык непопулярный. Это как?
Так что да, вместо Руби вполне стоило бы поставить РНР, просто потому что на нем легче найти джниорскую позицию, хоть на 1С, хоть на уородпрес, хоть на галеры.
Но при этом и нарисованная вами картина тоже далека от реальности.
Что касается реальности, то на Ruby, точнее Ruby-on-rails, в РФ возник спрос, для примера, из-за необходимости выбора/перехода на Redmine и поддержки последнего. Несмотря на его древность и неказистый внешний вид, функционально, за счет плагинов, он вполне может конкурировать с Jira, которую сейчас в РФ не купишь.
Вообще на Ruby в РФ сейчас все и ужасно и неплохо одновременно. Количество вакансий упало очень сильно, на хабр карьере их менее 10, иногда вообще 1-2 на всю страну. На хх конечно побольше, но все равно число вакансий упало ощутимо. Плюс рынок руби разработчиков довольно сильно монополизировался. Но при всем при этом год назад я нашел себе работу с довольно неплохой зарплатой и собеседований было тоже достаточно.
Однако, я как рубист с 7 летним опытом, конкретно сейчас и конкретно в РФ вижу ощутимую просадку :) и посматриваю по сторонам.
занимающий порядка 90% рынка веб-разработки
А как считается - по количеству сайтов (упрощаю) или по количеству человеко/часов, затраченных на создание этих сайтов?
То есть, если у нас есть 9 человек, которые пишут каждый свой сайт на PHP и 9 человек, которые вместе пишут один сайт на C#, то это 90% или 50%?
А как считается - по количеству сайтов
Обычно какой-нибудь запрос кидается и анализируется. Редирект - на index.php > +1, есть ссылки а ля /wp/ > +1 и т.д. и т.п.
Спасибо. Очевидно, что считать веб разработку нужно не по количеству сайтов, а по затраченному времени. На PHP (наверное) обычно делают простые сайты (без сложной бизнес-логики) - 1 чел/мес. На C#/Java (наверное) обычно делают корпоративные сайты (фактически СЭД) - 100 чел/мес. Пока 10 шарпистов делают 1 сайт, 10 пхпешников успеют 100 сайтов сделать, а количество рабочих мест одинаковое.
Если считать, что сайт на пыхе и на жава имеют одну и ту же шкуру и тот же функционал, то написать качественно, без багов и уязвимостей на C#/Java будет быстрее. PHP хорошо себя покажет на mvp, но на длинной дистанции отсутвие строгой типизации неприменно приведёт к некоторой бОльшей лапше и замедлению скорости разработки. Ну и в рамках перфоманса PHP вроде как не слишком хорошо преодолевает проблему C10k .
Ну в пыхе же есть type hinting, плюс применяя архитектурные фишки и чистый код, можно вполне нормально писать. Сами по себе фреймворки хорошие - лара и симфа.
тайп хинты и линты не то же самое, что и строгая типизация при компиляции. У дефолтного php просто нет этого шага. У питона ровно те же проблемы - есть typing, но нет шага с верификацией всей программы - сиди лови проблемы в рантайме. Есть конечно отдельные компиляторы для всего, но они не сказать чтобы сильно популярны.
Если считать, что сайт на пыхе и на жава имеют одну и ту же шкуру и тот же функционал
Я имел ввиду не скорость разработки, а сильно отличающуюся сложность функционала "среднего сайта на пхп" и "среднего сайта на шарпе". На C# вполне нормально, когда команда несколько лет пишет один "сайт" (СЭД, СУО и т.п.). Причём, даже этот сайт может не пойти в зачёт (по алгоритму выше), если он доступен только во внутренней сети.
занимающий
занимавший. уверен что после 2014 и бума ноды процент упал.
Беда с Rust в том, что у большинства из тех, кто реально кодит на нём за деньги, ни Rust ни фреймворки на нём в вакансии не упоминались.
Когда это python стал проще go?
А что не так? Я вот программист с 30-летним стажем, программировал много на чём, сейчас основной язык C#, вдобавок выучил Python для всякого Data Science, он реально простой и приятный. Go я тоже пытался учить, но он у меня не идёт почему-то. Синтаксис какой-то непривычный. Надо ещё попробовать, но на мой взгляд реально Python проще, чем Go.
Java
...делать скучные вещи, пусть и иногда крутые, вроде трейдинга
У Киры Кузьменко какие-то свои особые уличные критерии скучности. Питон, голанг и свифт - прям ржомба, да? А если переписать микросервис с джавы на голанг, то на сколько падает уровень скучности?
Трейдинг это область, где крайне мало крудошлепства и перекладывания джейсонов. Там про хайлоад и оптимизацию. Если кому это скучно, то я не знаю.
Ну и про размежевание Java/Kotlin глупость какая-то. Да, есть KMP, но чаще всего речь-то идет о Kotlin over JVM в том самом скучном энтерпрайзе. Новые проекты на джаве мало кто пишет.
Если хотите работать в офисе, то учите Java.
Пятый год на удаленке. Как и вся моя команда. Как и вся моя предыдущая команда.
А реально есть в джава-энтерпрайзах тренд на переползание на котлин? Я без иронии интересуюсь
Это не просто тренд, а Тренд с большой буквы. Кое-где есть охранители-староверы, которые "только джава, только хардкор", но все чаще новый код пишут на котлине и старый перетаскивают потихоньку.
Используя котлин, получаешь фишки и JVM и котлина. Так зачем отказываться?
Понял, спасибо. А если бы, чисто теоретически, можно было взять и завтра же начать юзать джаву 22, всё равно миграция на котлин бы казалась оправдана?
На мой взгляд - да. Мы используем JVM 21 + котлин. Ну еще раз: вы ж ничего не теряете с этого перехода.
Многим в Java нужен Spring. В Kotlin, кажется, большая часть этого функционала есть из коробки. Так что, вероятно, уменьшение количества зависимостей может быть оправдано. Не эксперт по этим языкам, так что есть шанс, что ошибаюсь.
Я знаю что сейчас просиходит наверное в десятке джавовых проектов в разных энтерпрайзных компаниях-никто из них даже не помышляет о котлине, в том числе и для новых сервисов.
По вакансиям -джвавовых много, котлина на беке вообще не предлагали за последний год.
По моей статистике котлина на бэкеочень мало.
Хорошо, что отметили разницу между зарубежными человеками а ля швейцарский нож и нашим рынком, где я знаю людей, которые по 10 лет сидят на зарплате и пишут на одном языке. Не один раз была в жизни ситуация, когда на собеседовании зарубежные компании гоняли по C#, а в итоге давали задачи с реактом и ещё чем попало. На вопрос о таком подходе отвечали честно, что знание .net для них ценнее, даже если задачи редки. А js фреймворки можно быстро подучить.
Да это и с российскими компаниями так. Нанимают и гоняют на собесе как бэкэндера, а потом такие - ну, у нас тут фронт на реакте, фронтендера отдельно у нас нет, программировай! )
С другой стороны, подобные ситуации - веский аргумент для повышения зарплаты. Я редко от таких предложений отказывался. Порой даже сам вызывался, чтобы подучиться и расширить свой кругозор. Да и разбираться с чем-то новым всяко интересней, чем сотый раз делать то, что уже давно умеешь.
Это, кстати, моя большая боль: гонения на собеседовании в России. Садишься с каким-то зашореным лидом и 2-3 часа (без шуток, до 3 часов было) отвечаешь про устройство памяти, потоки, ковариантность делегатов и другие узкоспециализированные вопросы. Ни тебе софт скиллов, ни нормальных вопросов про опыт. В итоге меня не брали даже туда, где я весьма прилично отвечал - им всё равно мало. А в МААНГ+ легко пролез, при том, что задачи в целом схожи.
Очень не хватает грамотных нанимателей, вопросов, которые не гуглятся за минуту, да и вообще, понимания, что инженер - не кодер, а человек, отвечающий за инфраструктуру. Надеюсь, с приходом GitHub copilot и прочего AI эти ребята что-то поймут про ценность своих и чужих навыков.
Боже, я тут шарюсь по помойкам в поисках опыта/стажа, в России тоже такое есть.
Тебя нанимают за 40к₽ на С++ софт написать или проект переписать какой, а в итоге ты -"java,Javascript,python,android,Linux,windows,opencv,ML,opticflow,SQL,qt/qml,rust,c/c++,с#,dsp,delphi" разработчик и желательно чтоб проект был готов завтра. А когда начинаешь намекать что это не норма и надо бы зарплату нормальную платить начинают фыркать "ну ладно, на 5к₽ зарплату поднимем".
Причём такие интересные конторы часто попадаются, и там зачастую сидит один техлид которому платят нормально и пачка студентов. (из рассказов знакомых)
В АйТи зарплата коррелирует не только с навыками и опытом, но и с умением уходить туда, где больше платят. Я на старте карьеры поднимал себе зарплату на 50% каждые год-полтора. И это было справедливо - и опыт больше, и клиент богаче на новом проекте. Но у меня тоже есть люди, которые боятся переходить или просто не хотят уходить оттуда, где уже знают, как срезать углы и работать в полсилы.
Так что по помойкам надо прыгать, а не шариться :)
То есть, предлагается в течении нескольких месяцев, если не года изучать "java,Javascript,python,android,Linux,windows,opencv,ML,opticflow,SQL,qt/qml,rust,c/c++,с#,dsp,delphi", а за это еще и деньги платят? Для джуна, кое-как освоившего только C++, выглядит совсем неплохо )
Ну если после университета идти, то в целом неплохо, соглашусь. Но лично у меня опыта хватает, просто так сложилось что я в серой зоне всё время был и стабильной зарплаты не было. В итоге хоть куда подался и, мягко говоря, был впечатлён как дела на нижних уровнях делаются. Платят чуть ли не как уборщице, а требуют вагон знаний, ибо владелец часто не разбирается что он хочет.
В итоге я соскачив с нестабильной работы и поработав на стабильной опять решил занятся нестабильной, не фриланс так производство оборудования всякого... Эххх
Спасибо за материал, приятно было почитать.
Зависимость топ-10 от места работы: в корпорации, стартапе или фрилансе
Откуда вообще берутся эти умозаключения, что в найме есть только два варианта - корпорации и стартап? Большинство IT-компаний не являются ни корпорациями, ни стартапами. Но все как-то уж очень ловко обходят их стороной.
Статья называется на картинке "по деньгам" и ещё "по популярности", но нигде (ну, кроме отсылки на оутсорс) не указан 1С.
С учётом творящейся дичи, там должно быть нажористо по деньгам. Или нет?
1С принципиально не упоминается ни в одном из ТОПов, это же отечественный язык программирования, а значит "зашквар". Уверен, если бы у нас не было 1С, а на западе разработали его точный аналог, то эти же самые "обзорщики" его бы расхваливали на все лады.
Как обстоят дела на текущий момент. Вакансий - море. По востребованности 1С сейчас ТОП-1 в России, весь крупняк переходит на него на фоне последних событий. Острая нехватка опытных специалистов, но и стажёром можно легко залететь в Москве/Питере. Первые полгода в рабстве за 30-50к во франчайзи, получаешь огромный буст опыта, уходишь в норм IT-контору. В итоге после первого года работы Джун 100-200к. Миддл до 300. Архитекторы-Синьоры до 400. Но, учитывая дефицит Синьоров, можно очень хорошо поторговаться и выбить себе условия получше, если ты реально толковый спец.
Так что ЗП средняя, востребованность - очень высокая. Корпоративная культура сильно изменилась и если ещё лет 10 назад стандартный 1С-ник сидел в бухгалтерии вместе с тётей Зиной, то сейчас для подобных задач есть аналитики и консультанты, а тебе дадут просторный офис со смузи, фитнесом, массажем простаты и т.п.
Читающий эти строки - если у тебя нет цели "свалить из поганой Рашки", как у большинства тутошних, но ты хочешь "войти в IT", то есть смысл попробовать 1С.
1С ругают не потому что он наш. А из-за крайней всратости подхода к нему именно как к ЯП. Как мне рассказывал один товарищ, который одинэску админствует, 1С был разработан для того, чтобы бухгалтера сами писали на нем программы (обработки всякие) , типа для гуманитариев. В итоге, что имеем: бухи так и не научились писать программы, для программистов этот недоязык сильно ущербен, вот его и ругают. Как по мне, заслуженно. А то, что он у нас по всей стране используется - это не его заслуга, просто кто первый встал (подмазал) - того и тапки. Тем более законодательно (на уровне всяких налоговых и тд).
Я подозреваю что он тьюринг-полный, мне тот товарищ показывал его небольшой пет-проект для автоматизации чего-то там, так вот он умудрился в 1ске и байты с com-порта получать, и пинами LPT рулить. Без всяких сторонних библиотек, как он уверял.
Но лучше он от этого не становится. Брейнфак вон тоже вроде т-полный)
«Как мне рассказывал один товарищ» и «вот его и ругают. Как по мне, заслуженно.» - вам не кажется, что фразы не сочетаются?) считаю, что критиковать могут только те, кто имел дело с продуктом и фреймворком и имеет представление о нем)
Его сложно использовать, где-то за пределами его узкой предметной области. Ну и учитывая какие там космические зарплаты порой - кажется имеем жёсткий дефицит программистов 1С, так что до топов оно едва ли доберётся, если категорию не сужать.
А зачем его использовать за пределами? И почему предметная область узкая, если это автоматизация любых финансов, очень многих бизнес-процессов и тд? (любой сектор, любая область, все что только поддается учету, все на 1С можно учитывать)
любой сектор, любая область, все что только поддается учету, все на 1С можно учитывать
Не утрируйте. Биллинг - тоже финансы. Но попробуйте на 1С поднять биллинг электроэнергии с АСКУЭ даже не для МосЭнергоСбыта, а хотя бы для Тульской или Ярословской областей.
Я не работала с биллингом, поэтому всех тонкостей могу не знать, почему вы считаете, что биллинг не может быть реализован на 1С?
Потому что архитектура 1С неспособна переваривать такие объемы данных. Например, в той же Тульской области порядка миллиона приборов учета. С каждого из них в среднем, считывается десяток-другой регистров каждые 15 минут. И не просто считываются, а анализируются, валидируются, агрегируются, сопоставляются с техническими приборами учета и т.п. А эти данные даже шардировать тяжело, из-за переключений и колец.
Мне приходилось общаться с 1С. Даже на таком небольшом предприятии, как ювелирный завод Ника, приходилось иметь десяток инсталляций со сложными схемами интеграции между ними и регулярными проблемами с консистентностью. Когда не только для готового изделия, но и для множества компонентов, заготовок и материалов надо учитывать содержание драгметаллов для каждой единицы отдельно, 1С очень сильно просаживается в производительности.
все что только поддается учету, все на 1С можно учитывать)
как говорится - можно, но не нужно и никто это делать не станет. Видели когда-нибудь HFT на 1С? Или может обменник какой под капотом 1С крутит? Или криптовалюты на 1С может видели? Бухгалтерия организаций с их доходами-приходами-расходами практически единственная ниша где 1С обитает. Его зарубежные коллеги типа ABAP чуйствуют себя примерно также. Из более традиционных языков можно сравнивать с какими-нибудь макросами экселя или vbscript, который даже вроде как BASIC, только заточенный под работу в пределах виндовой инфраструктуры. Ну и я слабо представляю, чтобы языку требовался жирнющий рантайм, кой есть у 1С - 1 гб диска для постоянного пользования звучит сомнительно. Хуже разве что node_modules
И почему предметная область узкая, если это автоматизация любых финансов, очень многих бизнес-процессов и тд?
Ну так сравните её с областями С, C#, Java или хотя бы Python, Ruby.
Уверен, если бы у нас не было 1С, а на западе разработали его точный аналог, то эти же самые "обзорщики" его бы расхваливали на все лады.
Но там есть SAP, который в какой-то мере похож на 1С по подходу. Но при этом в гайды он не попадает, хотя довольно популярен. Может дело все таки не в предвзятости?
Ну давайте рассудим так. Статья называется "топ 10 по ДЕНЬГАМ и ПОПУЛЯРНОСТИ". Здесь не должна оцениваться любовь сообщества или удобство языка. Только уровень з/п и количество вакансий. По вакансиям 1С впереди. По уровню з/п за последние два года подтянулся к другим языкам. Если бы статья называлась "расскажите, какие ЯП вам больше всего нравятся", то обвинений в необъективности не было бы.
Про предвзятость - если зайти на ютубе под обзорные ролики на тему 1С, самые популярные комментарии будут на тему "этот язык ни в одной нормальной стране не нужен" и т.п., что я уже упоминал выше. Это не мои фантазии.
Я бы, наверное, обратил внимание, что как минимум два спикера из трех довольно давно живут не в РФ.
Кирилл вроде как много лет в США, Кира в Сербии и ее агентство тоже сейчас про работу на международном рынке. Так что их уклон на универсальные технологии вполне понятен. Возможно это стоило отразить в статье.
На тему предвзятости - я бывший 1Сник, 6 лет опыта, несколько сертификатов и в целом считаю себя неплохим 1С разработчиком во времена, когда этим занимался. Последние 7 лет работаю с Ruby, ни разу не пожалел о переходе, хотя определенные плюсы 1С могу конечно же отметить. Но так же я прекрасно могу рассказать о минусах, о специфике, которая не всем по душе и прочем.
там есть SAP, который в какой-то мере похож на 1С
Как быстро производители зарубежного софта реагируют на изменения в российском законодательстве?
Почитал. Выглядит как "каждый кулик свое болото хвалит". Только в одном месте звучит простая мысль, что инструмент выбирается под задачу и "золотого молотка" не бывает.
Мое личное мнение, для приличной зарплаты нужно знать хотя бы один язык без GC, один с GC, один интерпретатор и SQL.
Я бы ещё добавил что полезно хотя бы пощупать функциональную парадигму (a.k.a. "написание кода вообще без операторов присваивания"). В большинстве GC-языков хоть какие-то её следы есть, желательно их не проигнорировать.
Без присвоений это что-то типа Forth?
Это берёте любой язык по вкусу, главное чтобы были замыкания (C#, Java, Python со стеком побольше, да хоть JavaScript) и решаете произвольные задачи без присваиваний: все переменные (включая коллекции) иммутабельны, счётчиков цикла не бывает. Непосредственная польза этой эквилибристики в том, что ряд проблем многопоточного программирования просто исчезает.
То есть на иммутабельных объектах и с присвоением по значению, а не без присвоений вовсе, получается. Даже в некотором Haskell data Maybe a = Just a | Nothing
уже будет присвоением, пусть и в рамках типа. Совсем без присвоений у меня из вариантов были brainfuck - сомнительный кандидат для изучения, forth - положили в стек, достали из стека - практическая ценность тоже несколько сомнительна; и какой-нибудь asm - тот же forth только у же с регистрами вместо стека - тут по крайней мер про оптимизации можно научиться всякому.
на иммутабельных объектах и с присвоением по значению, а не без присвоений вовсе, получается
Присваивание, которое на самом деле определение. Даём имя значению, как в математике ("пусть x =y + 1"). Это присваивание является "синтаксическим сахаром" для вызова функции.
int Func1(int x)
{
var y = x * x;
return y + 5;
}
int Func2(int x)
{
int f(int y) => y + 5;
return f(x * x);
}
int Func3(int x)
{
return (x * x).In(y => y + 5);
}
public static class MyExtensions
{
public static T2 In<T1, T2>(this T1 value, Func<T1, T2> func)
{
return func(value);
}
}
для приличной зарплаты
Для приличной зп, по крайней мере в доковидное время, нужно было иметь хорошие горизонтальные связи, общее представление о рынке вакансий, не сильно боятся джоб-хоппинга и в целом ловить момент. Одно время люди рвались из Беларуси в Москву за зп Java-синьора а какое-то время валютная зп в РБ перекрывала почти все предложения, потом опять зп в разноцветных банках пробивала все потолки.
Так про то и речь, что только с Java по горизонтальным связям выбор будет в несколько раз меньше, чем если к Java добавить хотя бы C/C++ или Rust, Python или Perl, ну и SQL.
Например, на последнем месте, меня взяли на 80% C#, T-SQL и PL/pgsql, но при этом обязательно требовалось знание R и Python. А по ходу дела выяснилось, что необходимо еще дорабатывать sink для Kafka на Java, несколько OpenSource на C и, в качестве вишенки на торт, некоторое количество legacy на Perl. И именно по горизонтальным связям меня сюда и заманили, зная, что я со всем этим справлюсь.
Так про то и речь, что только с Java по горизонтальным связям выбор будет в несколько раз меньше, чем если к Java добавить хотя бы C/C++ или Rust, Python или Perl, ну и SQL.
Конечно лучше знать несколько языков и/или стеков чем не знать. Но вас заманили потому что они знали о том что вы справитесь а не потому что вы знали эти стеки. Если просто сидеть изучать Rust в дополнение к Java и добавить его в резюме в Линкедине то это слабо поможет с выбором приличной зп. Первичны знакомства а не технологии.
"Его легко изучить, намного проще, чем Go" - ну да, на уровне школьной программы может и проще))))))
Самая выгодная позиция сейчас у тех, кто гибкий и быстро адаптируется к меняющимся условиям. При хорошых изначальных скиллах, знаниях и насмотренности, новые технологии всегда можно освоить.
Хорошее понимание предметной области также набрасывает существенно к зарплате.
При обсуждении языков программирования часто забывают о важности SQL. SQL, хотя бы в рамках SQLite — это такой lingua franca в мире IT. SQL и еще, может быть, Docker будут релевантны 90 % вакансий, так что их можно начать изучать даже до выбора языка программирования.
По названию ожидал увидеть графики, кривые. А тут простыни личных мнений нескольких человек.
Доброго дня.
Пожалуй задам свой вопрос тут.
Неужели изучение C++ с 0 настолько непосильная задача? Читая аналогичные статьи постоянно вижу, как все открещиваются от этого языка программирования и отговаривают от этого новичков.
А что собственно делать, если это базовый хард-скилл в гейм-деве, где Я хочу работать?
Поделитесь своими мыслями и опытом на этот счёт.
Спасибо.
Порог вхождения в С++ каким был много лет назад, таким и остался сегодня. Вся фишка в сравнении: появились языки, в которые порог вхождения намного ниже, чем у С++, отсюда стало получаться, что порог вхождения в С++ высокий.
Сам то язык изучить несложно, а вот код который на нем написан и с которым придется работать придя в какой-н относительно большой проект в большинстве случаев write-only
Посильная, но не очень эффективная.
Это как учиться водить автомобиль начиная сразу с заряженной раллийной машины настроенной под другого человека. Несомненно, успеха в этом деле добиться можно, но большую часть времени вместо того, чтобы учиться водить автомобиль вы будет бороться с совершенно другими вещами.
Без базы про устройство памяти, ОС и прочего ТСИ, а в какой-то момент ещё и компилятораостроения, к которому ещё и диалект какой-нибудь сборочной системы выучить - изучить С++ в таком виде крайне сложно. Это не считая того что многие новичковые гайды используют не нормальный С++, а приплюснутые Си.
А что собственно делать, если это базовый хард-скилл в гейм-деве, где Я хочу работать?
С геймдевом попроще. Берёте игровой движок - cocos2dx, defold - и пилите игру на C++ и скриптуете что-нибудь на Lua. Пробелы в знаниях оно не закроет, но относительно быстро даст фидбэк о разработке, а там уже сами грызёте монолит. Как вариант - собираете движок из фреймворков - raylib/sokol, SDL, SFML - и пишите игры на них. Первый вариант подойдёт если вы устроиться куда-то на работу - если хотите стать инди. Ну а в случае с ААА там надо будет грызть кучу подустаревших мануалов по UnrealEngine/CryEngine, но там собственные диалекты плюсов и много задач несколько параллельные непосредственно программированию.
А что собственно делать, если это базовый хард-скилл в гейм-деве, где Я хочу работать?
Изучать С++, что еще тут можно сделать. Просто сама идея идти в геймдев немного противоречит заголовку статьи. Там нет больших денег и есть очень много овертаймов.
У Адама Смита была замечательная мысль что в Англии его времен золотарь получает больше матроса во флоте, по той простой причине что все хотят плавать по морям и никто не хочет убирать чужое говно. Не могу сказать насколько это соответствовало реальности но идея гениальная в своей простоте. Геймдев всегда двигался на энтузиазме людей, которые не отпустили свои детские мечты о создании игры, которые посещали наверное каждого программиста. Это не касается разновидности геймдева которая делает донатные/рекламные/казино помойки под мобилки. Уверен что там платят будь здоров.
кстати если хочется податься таки в индюки, то можно учиться у неьезысвестного Кейси Муратори - он запилил серию по разработке игры с нуля.
1С лидер по запросам с указанной ЗП выше 400.000
как не язык? нужно знать бухучет и проч бизнес?
ну тогда питон тоже в корзинку - там платят явно не за язык, а за знания нейросетей и т.п. а программирование слегка сбоку
1С хорошо описали в комментах наверху.
Добавлю, что 1С похожа на SAP, COBOL или Progress. Это не язык, а целая инфраструктура. Тут и регистры планов видов характеристик, и Выгрузить.Выбрать.Получить.Забрать...
Много специфики, не связанной непосредственно с алгоритмами обработки данных или создания приложений для веб/ОС.
Но это не отменяет востребованности, высоких зарплат, а также совершенной ненужности за пределами СНГ.
Удивительно видеть swift на 3-4 позиции, а js на 6.
По моему фронта значительно больше+ js достаточно живой как на мобиле, так и в беке. И вакансий на нем значительно больше
Еще один коммент про 1с, сам недавно устроился, в апреле, в первы рабочий квартал в среднем в месяц вышло 90к (за 3 месяца) стажером.
Как так получилось? Проходишь технарь, идешь в армию, потом фрилансил на пайтоне за копейки, понимаешь как работаю парсеры, веб сервисы и http протоколы, а в 1С таких людей мало. (Конечно, кучу деталей упущено)
Плюсы 1с в том, что язык легко читается, работа с запросами просто сказка, особенно когда заново пишешь sql запросы после 5 месяцев работы с запросами в 1с. Есть минусы в том, что если захочешь работать с тем чего нет в 1с, аля tcp подключение, то уйдет не меньше 2 дней без посторонней помощи в поисках в интернете.
Вообще, языки нужно использовать там, где они требуются, а не вот это вот все, ну и всем добра
Я бы так сказал: если хочется стать программистом, начинай с ассемблера. Кроме шуток)
Лучше вообще изучить железо, как вообще работает комп, тогда будешь понимать на самом низком уровне саму суть программирования.
А язык - это инструмент. Тут всё просто - чем большим количеством владеешь, тем более универсальные задачи сможешь делать, а, главное, к любой задаче можешь найти несколько подходов.
Сам я начинал с QBasic, потом был паскаль, потом Си, плюсы, и т.д. дальше уже точно не помню (всего писал на 15-20 ЯП, в общей сложности, сейчас, в основном, python, C++, C#, kotlin, JS, php. Другие использую редко, только если проект специфический какой...)
На ассемблере писать стал уже гораздо позже, когда первых собственных роботов захотелось сделать, но, если б была возможность "вернуться" в прошлое, я бы начал именно с него.
Если не пугает - учить Асс, устройство ПК, если пугает - тебе нечего делать в АйТи по серьёзке 😏
Никто не мешает выучить один питон в связке с ML и/или DS - и жить безбедно до старости. Тру.
Но если в голове не бабло на первом месте, а именно интерес к области - читай выше ☝️😊
В контексте обсуждаемой темы, что лучше, Java или C# ?
Я вот начал учить go первым языком на свою голову. Просто он показался легче, чем питон, когда увидел код. На питон пишут очень по разному, иногда в одну строчку сложные конструкции, а на го мне кажется легче всё выглядит. Но вряд-ли найду работу, просто хобби, джуны на го не нужны никому, а дальше вообще всех джунов ИИ говорят заменит, поэтому без шансов
Топ 10 языков программирования в 2024 году по деньгам и популярности