Недавно для читателей Habr я провела небольшое исследование языков программирования, таких как Rust, Dart, Erlang, чтобы выяснить, насколько они являются редкими на российском рынке IT.

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

В исследование вошли языки: Forth, Ceylon, Scala, Perl, Cobol, а также некоторые другие языки. В общем и целом я проанализировала 10 языков программирования.

Чтобы вам было удобно воспринимать информацию, я условно разделила языки на две группы: редкие (нет спроса и невысокое предложение) и популярные (язык востребован на российском IT рынке).

В основу моего анализа, как и в прошлый раз, вошли данные, взятые с портала Headhunter, из социальной сети LinkedIn, а также личная статистика моего агентства. Для более точного анализа редких языков я использовала сервис Amazing Hiring.

Для тех, кто не знает, что такое Amazing Hiring — рассказываю. Это специальный сервис, который “парсит” всю информацию о специалистах со всего интернета. С его помощью можно узнать, сколько специалистов указывают в навыках тот или иной язык.

Итак, начнем с популярных языков программирования.

Востребованные языки


Verilog, VHDL


Эти основные языки описания аппаратуры являются достаточно популярными на российском IT рынке. 1870 специалистов указали на Headhunter, что знают Verilog. На запрос VHDL выпадет 1159 резюме. Пишут на обоих языках 613 специалистов. В название резюме знание VHDL/Verilog вынесли два разработчика. Отдельно знают Verilog в качестве основного — 19 разработчиков, VHDL — 23.

Предлагают работу разработчикам, знающим VHDL, 68 компаний, а Verilog — 85. Из них общие вакансии — 56. На LinkedIn опубликовано 74 вакансии.

Интересно, что языки популярны среди молодых специалистов в возрасте от 18 до 30 лет.

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

image

Изображение показывает соотношение количества вакансий к количеству опубликованных резюме. Красным обозначены непосредственно разработчики описания аппаратуры VHDL.

Scala


Пожалуй, один из самых популярных и востребованных языков из списка. Язык попал во всевозможные рейтинги Stackoverflow. Он занимает 18-ю строчку в списке самых популярных языков. Он также является одним из любимых среди разработчиков языков, заняв в рейтинге 12-ю строчку и, более того, Stackoverflow отнес язык Scala к самым дорогим языкам программирования. Язык расположился сразу за языком программирования Erlang, заняв 8-ую позицию. Средняя мировая зарплата для Scala разработчика составляет 67000 $. Больше всего Scala разработчикам платят в США.

На Headhunter 166 специалистов вынесли знание Scala в название резюме. Всего опубликовано на Headhunter 1392 резюме. Этот язык пользуется высокой популярностью среди молодых специалистов. Обычно Scala идет рядом с Java. На Linkedin висит 2593 резюме, из которых 199 непосредственно Scala разработчики.

Если говорить про спрос, тот тут все более чем хорошо. Активных вакансий на Headhunter — 515, из которых у 80 Scala указано в названии вакансии. На LinkedIn ищут 36 компаний непосредственно Scala разработчиков. Всего предлагают работу 283 компании для ребят, знающих Scala.

image

Изображение показывает соотношение количества вакансий к количеству опубликованных резюме. Красным обозначены непосредственно Scala разработчики.

Помимо того, что Scala разработчики востребованы на российском рынке, они получают высокую зарплату. Как показывает статистика моего агентства, разработчики Scala стоят дороже, чем Java разработчики. Сейчас мы как раз занимаемся поиском Scala разработчика для одной московской компании. Средняя зарплата, которую предлагают работодатели специалистам middle + уровня, начинается от 250 тыс. рублей.

Perl


Самым “нередким” в моем списке редких языков оказался Perl. Более 11000 IT специалистов указали знание Perl в списке ключевых навыков, 319 из них вынесли знание языка в название резюме. На LinkedIn я нашла 6585 специалистов, знающих Perl. Активных вакансий на Headhunter — 569, на LinkedIn — 356.

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

image

Статистика Stackoverflow показывает, что Perl является одним из самых дорогих языков программирования (среднее мировое значение — 69 000$) и одним из самых популярных в мире. Более 4% разработчиков владеют Perl.

Несмотря на высокую распространенность языка, предлагают работу Perl разработчикам уже давно существующие на рынке IT проекты. За последние три года в моё агентство ни разу не поступал запрос на поиск Perl разработчика в новый IT проект или стартап.

Статистика:


Если сопоставить спрос на все популярные языки программирования, получится примерно такая картина: самый популярный язык среди изпользуемых — Perl. Всего на HeadHunter и LinkedIn 925 предложений о работе для знающих Perl. Scala не сильно отстает от Perl. На порталах висит 798 предложений.

image

image

Представленные диаграммы показывают количество опубликованных вакансий для языков программирования: VHDL, Scala, Perl.

Редкие языки программирования


Forth


Язык программирования Forth появился в 70-х годах. Сейчас на российском рынке не востребован. Вакансий нет ни на Headhunter, ни на LinkedIn. В резюме указали знание языка 166 специалистов на Headhunter и 25 на LinkedIn.

Абсолютное большинство соискателей имеют опыт работы более 6 лет. Зарплату специалисты со знанием Forth запрашивают самую разнообразную от 20 тыс. рублей и вплоть до 500 тыс. рублей.

Cobol


Один из старейших языков программирования. Большинство разработчиков — представители старшей возрастной группы (старше 50 лет) с внушительным опытом работы. Это также подтверждает свежий рейтинг Stackoverflow, в котором упоминается, что самые опытные программисты пишут на Cobol и Perl.

Всего я нашла 362 резюме на Headhunter и 108 резюме на LinkedIn. Вынесли в название резюме знание Cobol 13 специалистов. Как и в случае с Forth, работу для знающим Cobol на данный момент не предлагают. На LinkedIn нашлась всего одна вакансия для непосредственно Cobol разработчиков.

Rexx


Разработанный компанией IBM и достигший пика своей популярности в далекие 90-е, язык Rexx сегодня оказался одним из редчайших языков в моем списке.
186 разработчиков указали в своих резюме на Headhunter знание Rexx и 114 на LinkedIn. Однако ни на одном из порталов мне не удалось найти вакансии для знающих Rexx.

Tcl


Спрос на язык есть, но я бы не стала относить язык к востребованным. На Headhunter висит 33 вакансии и 11 — на LinkedIn. Зарплату ребятам со знанием “Тикля” предлагают не очень высокую: от 65 тыс. рублей до 150 тыс. Указали, что знают язык, 379 разработчиков на Headhunter и 465 на Linkedin. В название резюме владение Tcl вынес всего один разработчик.

Вот так выглядит соотношение количества вакансий к количеству резюме, в которых встречается навык владения Tcl:

image

Clarion


Я не встретила ни одной активной вакансии, в которой требуется знание Clarion. Однако предложение есть. 162 человека указали на LinkedIn, что знают этот язык, а на Headhunter — 502 специалиста, из которых трое вынесли навык в заглавие резюме. Amazing Hiring нашел 158 специалистов, которые так или иначе знакомы с языком Clarion.

Ceylon


Разработан компанией Red Hat в 2011 году. Основан на Java. Отсюда и название языка: остров Ява известен как поставщик кофе, а остров Шри-Ланка, в прошлом известный как Цейлон, является всемирным поставщиком чая.

Язык действительно редчайший. Нет вакансий и практически нет резюме. На Headhunter удалось найти буквально одно резюме. Сервис Amazing Hiring выдает всего 37 специалистов по всей России.

Статистика:


Если сравнивать все редкие языки по количеству резюме, получится интересная статистика: на LinkedIn больше всего специалистов указали знание Tcl, а на Headhunter самым популярным языком из списка оказался Clarion. Наименее популярным языком среди разработчиков оказался Cobol.
image

image

Мой небольшой анализ показал, что действительно редчайшим языком оказался Ceylon, нет ни спроса, ни предложений на российском IT рынке. Также к редким языкам можно отнести Forth, Cobol, Clarion, Rexx. Очень востребованными и популярными языками оказались Perl и Scala. Их можно смело убирать из списка редких языков программирования.

Комментарии (93)


  1. Mogwaika
    13.06.2019 15:09

    Среднюю российскую зарплату бы ещё по ним, чтобы была видна разница, в редких))


    1. RNigmatullin
      14.06.2019 19:10
      +1

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


      1. Mogwaika
        14.06.2019 23:28

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


  1. red_perez
    13.06.2019 15:10
    +2

    Протестую, это шовинизм,
    в списке нет редких языков графического программирования.
    Например язык «G» aka часть среды разработки Labview.
    ХХ показывает 26 активных вакансий в РФ


    1. saipr
      13.06.2019 22:33

      А еще Tk, который встроен и в Tcl, и в Perl, и в Python и т.д.


      1. Pasha13666
        14.06.2019 14:27

        А еще Tk

        Это не совсем то. Tk — графическая библиотека, как GTK или Qt. А G — графический язык программирования, где вместо кода блоки, соединяемые стрелочками, и писать программы можно мышкой


    1. tani_mel Автор
      14.06.2019 19:12

      Мы делали анализ на основе комментариев к первой статье, если бы пользователи хабра запросили сделать анализ о языке «G», мы с удовольствием бы это сделали =)


  1. NeverIn
    13.06.2019 15:28
    -2

    Правильнее было бы назвать не редкие, а устаревшие языки.


    1. Brak0del
      13.06.2019 16:18
      +1

      VHDL с Verilog пока ещё особо нечем заменить, новые ещё не подросли. А tcl — составная часть стека разработки под железо, так что тоже пригодится.


      1. ser-mk
        14.06.2019 02:43

        А tcl — составная часть стека разработки под железо, так что тоже пригодится.

        Какое вы железо имеете ввиду?


        1. Brak0del
          14.06.2019 06:36

          FPGA. У Xilinx вся среда Vivado внутри использует tcl и многие вещи, недоступные из GUI можно сделать только скриптами. А многие вещи удобно загонять в скрипты и выполнять потом пачками, вместо ручного режима в GUI. Наконец свежие фичи также обкатываются пользователями сначала в tcl, а потом уже выносятся в GUI (например так было с частичной реконфигурацией, её сначала можно было пощупать только скриптами, а в более поздней версии среды она появилась в GUI). А если проект из Vivado надо загнать под git, то тут тоже придется ковырять tcl…


          1. Mirn
            14.06.2019 07:48

            Аналогично в квартусе от интела широко используется tcl.


          1. Barbaresk
            15.06.2019 15:00

            А есть какой-то способ связи с ПЛИС (в моём случае Spartan 6), минуя консоль tcl? Ну, например, С-шные либы. А то общение через консоль tcl происходит достаточно медленно, и не позволяет передавать реально большие объёмы данных.


            1. Brak0del
              16.06.2019 08:25

              Мы похоже уходим в оффтоп, так что заранее прошу меня извинить). Прошить Spartan без tcl можно Impact-ом — GUI тулза от Xilinx. В целом прошивка происходит через jtag и потолок там где-то в районе 10 Мбайт/с, это аппаратное ограничение. Насчет сишных либ для прошивки, я не проверял, знаю, что формат и протокол битстрима держится в секрете, и также что его не так давно разреверсили, так что либы наверно можно поискать. Что касается взаимодействия с ПЛИС после прошивки и передачи в неё больших объемов данных, то тут большой простор для творчества: данные можно передавать например через интерфейсы Fast Ethernet/Gigabit Ethernet, PCI-express и прочие. Для них наверняка можно найти и сишные либы, ну и фишка акселераторов на ПЛИС как раз в использовании таких стандартных и быстрых интерфейсов. Spartan 6 уже староваты, в 7 семействе гораздо веселее всё с интерфейсами. Далее, если вам всё же надо быстрее сконфигурировать ПЛИС, чем обычным jtag, то тут можно попробовать частичную динамическую реконфигурацию в паре с одним из быстрых интерфейсов (Gig Ethernet, PCI-express): прошивку загружаете через быстрый интерфейс, а зашивается она через внутренний конфигурационный интерфейс.


              1. Mogwaika
                16.06.2019 13:24

                А у jtag программатора обычного не 3 МГц, частота максимальная, т.е. 3Мбод/с?
                Там вроде какие-то сторонние решения до 30 Мбит/с, но никак не десяток МБайт/с…


                1. Brak0del
                  16.06.2019 13:36

                  Да, вы правы. Порядки помнил очень приблизительно.


              1. Barbaresk
                16.06.2019 20:51

                Спасибо за ответ. Опишу вкратце, что я делаю. Для университетской лаборатории разрабатываю систему для удалённой работы с ПЛИС (Spartan 6). Архитектура примерно такая:
                — клиент-браузер (студент) с лампочками и кнопками на js, html и css
                — сервер на ASP .NET Core
                — клиент-приложение для связи ПЛИС с сервером на .NET Core.
                — ПЛИС.
                Т.е. несколько клиентов подключается к серверу, к которому также подключается несколько компов, к которым подключены ПЛИС. Вся эта фигня нужна для того, чтобы студенты могли подключится удалённо к ПЛИСинам в лаборатории. И, работая на реальном ПЛИС, использовать виртуальный интерфейс. Всё это работает нормально, пока мы передаём немного (пару килобайт) данных за цикл опроса. Проблема возникает тогда, когда я пытаюсь получить или передать много данных с ПЛИС и обратно. Для общения с ПЛИСисной в основном используется тот самый tcl с соответствующими командами, которые работают с ChipScope. И вот этот tcl оказался узким горлышком системы. Для передачи большого объёма данных приходится вызывать по многу раз команды на запись и всё это безбожно тормозит. Ни о какой интерактивности речи в таком случае не идёт. При этом прошивка происходит быстро, поскольку вызывается одна команда на прошивку (она же вызывается и из Impact'a — откуда я её и взял) с аргументом — файлом прошивки.
                На официальном форуме Xilinx примерно такой же ответ, какой и вы написали. Но вот эта информация: «протокол битстрима держится в секрете, и также что его не так давно разреверсили» — даёт некоторые надежды, попробую найти что-то.
                Про Ethernet я знаю, но не хотелось бы забивать такой полезный интерфейс или какие-либо другие интерфейсы, который планируется использовать для лабораторных.


                1. Mogwaika
                  16.06.2019 21:07

                  Я может не понял, а виртуальный рабочий стол не поможет?
                  Затык прям в чипскопе и даже без клиент-серверов прямо на машине чипскоп тоже будет тормозить?


                  1. Barbaresk
                    16.06.2019 22:39

                    Не, не в сетевой части дело. Если оставить только локальный ПК и ПЛИС к нему поключенный, то для того, чтобы получить какую-либо информацию с ПЛИС с помощью ChipScope через tcl — нужно несколько раз вызвать команду чтения со входов ChipScope с помощью консоли. И вот проблема в том, что работает всё это неприлично медленно. Т.е. за секунду я могу сделать 10-20 таких вызовов. (Мне же нужно не только считать, но и выдать соответствующую информацию на ПЛИС о том, что я успешно считал). Ну и получаем в итоге, что за раз передаётся меньше килобайта информации, а таких вызовов за секунду около десятка. Пропускная способность просто ужасна…


                    1. Mogwaika
                      16.06.2019 22:42

                      Uart какой-нибудь может попробовать? Если это sp601 или 605 отладочные платы, там вроде бы есть uart-usb.


                1. Brak0del
                  16.06.2019 22:59

                  Прикольные вещи вы там вытворяете).
                  Мы наверно не поняли друг друга, я имел ввиду, что сам файлик битстрима (.bit или .bin), соответствие его содержимого элементам в ПЛИС, порядку их инициализации и т.д. держится в секрете. Битстрим чем-то напоминает ДНК, тоже набор инструкций и содержимого для инициализации, рецепт, поэтому употребил слово «протокол».
                  Про chipscope я не особо в теме, но вроде как это средство отладки, местами графической, с совсем малым количеством ресурсов, т.е. им бы глядеть пару самых подозрительных сигналов, не работающих в железе, на тысяче-другой сэмплов. Вам точно надо именно через него грузить данные в ПЛИС? Обычный uart не сойдет? Хотя скорости, конечно, на нем тоже не ахти.


                  1. Barbaresk
                    16.06.2019 23:21

                    «Обычный uart не сойдет?» Посмотрю в эту сторону на неделе, может получится что-то приделать. Я несколько плаваю в теме по внутренностям ПЛИС и окружения, поэтому был выбран ChipScope. С прошивкой .bit всё нормально, там скорость устраивает в целом. Беспокоит именно передача данных. Для большинства лабораторных годится и килобайта в секунду, но вот в одной из лабораторных, студенты должны написать прокрамму на А51 или С51 под контроллер семейства 8051, который в свою очередь эмулируется на ПЛИС (проект Oregano на VHDL). И потом они могут отлаживаться на живом усройстве с помощью дебаггера в браузере. Но на данный момент, после пересоздания программы под микроконтроллер, приходится заново синтезировать всё устройство, что затратно по времени. Вместо этого хотели перезаписывать память уже в синтезированном контроллере на ПЛИС и тут вот упёрлись в необходимость как-то загнать большой объём данных с ПК на ПЛИС (особенно много для прог на С).


    1. DuMMeR
      13.06.2019 17:38

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


      1. DrPass
        14.06.2019 00:41

        он продолжает работать и обрабатывать существенно больше половины банковских транзаций

        Я думаю, сейчас это преувеличение. Где-то ещё работает, конечно, но в целом банки при всей своей инертности регулярно обновляют железо, и постепенно избавляются от самого древнего легаси-софта.


        1. vladkorotnev
          14.06.2019 03:24

          Ну, например, в Японии банк Mizuho по сей день плотно на коболе сидит. С тех пор как в 2011 случился коллапс системы, начали шевелиться, вроде к 2020-2022 планируют полностью закончить переход на что-то поновее.


          1. DrPass
            14.06.2019 03:34

            И много ли таких ещё осталось среди всех банков?


            1. vladkorotnev
              14.06.2019 04:42

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


          1. NetBUG
            16.06.2019 13:02

            На Java 1.3? :)


      1. Mox
        14.06.2019 01:49

        Я что-то сомневаюсь. Я слышал этот тезис в 1990-х, но подозреваю что все таки заметное количество банковского софта переписано на Java, Go или чем-то еще — появились новые стандарты, протоколы.

        Можно произвести опрос программистов из Альфы, Тинкькофф, Рокетбанка — сколько у них там работает Cobol специалистов на сопровождении. Я думаю 0.


        1. JC_IIB
          14.06.2019 10:17

          Можно произвести опрос программистов из Альфы, Тинкькофф, Рокетбанка

          Я думаю, надо спрашивать программистов из Bank of America и JP Morgan.


          1. Mox
            14.06.2019 13:45

            Статья вроде на основе анализа hh.ru и написана в контексте России.


            1. JC_IIB
              14.06.2019 14:07

              Да, но исходный тезис о Коболе таких условий не содержал. То, что у «новых» банков, типа Рокета, возможно нет Кобола — это неудивительно. Вопрос в том, переписывали ли свои системы те, кто с Коболом начинал. И если переписывали — то в каком объеме и насколько глубоко.


              1. braineater
                15.06.2019 23:38
                +1

                Фактически Рокет — не банк, это некий прокси-сервис который изначально был сам по себе и имел договор с банком в котором держал счета клиентов а потом его выкупил банк и уже снова успел продать другому… Ну де юре тоже банку. Сервис, впрочем, шикарный, но сам по себе он банком никогда не был.


        1. unclejocker
          14.06.2019 13:51

          Когда Cobol был популярен, этих банков еще не было, так что не удивительно.


        1. tani_mel Автор
          14.06.2019 19:13

          Мы согласны с Вами, по нашим данным, большинство банков используют Java.


    1. Mox
      14.06.2019 01:45

      Про Verilog — просто в России почти не проектируют микросхемы, вот и все. Он не устарел, все процессоры и видокарты на нем написаны, да и наш Elbrus на нем же.


  1. amarao
    13.06.2019 16:21

    Скажите, а вы компаниям ищите программистов на заданном языке?


    Как вы думаете, что займёт больше времени для хорошего программиста — выучить средней руки язык программирования (php/perl) вместе с его lore и staple libs, или настроить себе рабочую машину, завести аккаунт, почту, vpn, выучить расположение кофе-машины, туалета, метод выезда с парковки, адреса местного багтрекера, ci-сервера, git-сервера, вики, стейджинга, имена тестовых серверов и процедуру получения доступа к ним?


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


    1. AllexIn
      13.06.2019 21:24

      Что такое «выучить язык»?
      Знаю программистов на С++, которые имеют опыт +15 лет и при этом до сих пор умудряются стрелять себе в ноги.


      1. amarao
        13.06.2019 21:40
        -1

        Программистов на С и С++ не существует.


        Доказательство:


        • программа с undefined behavior не является программой на C и/или С++
        • все более-менее крупные программы, которые начинали писать на С/С++ содержат баги с UB, т.е. они не являются больше программами на С/С++
        • Люди пишут на чём-то, что не является С/С++, т.е. не являются программистами на С/С++.

        PS Как вы думаете, за какое время человек, который писал на Rust/Haskell начнёт терпимо пытаться писать на С?


        1. defuz
          14.06.2019 00:32

          Как раз после некоторого опыта с Rust уровень кода выдаваемого на C резко повышается, поскольку компилятор Rust тренирует программиста как собачку павлова писать программы без UB.


        1. MooNDeaR
          14.06.2019 03:35

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


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


    1. arkamax
      13.06.2019 22:00

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

      Не соглашусь. К примеру:

      адреса местного багтрекера, ci-сервера, git-сервера, вики, стейджинга, имена тестовых серверов и процедуру получения доступа к ним?

      Закладки / скрипты — и все дела (я не представляю как и зачем держать в памяти все такие вещи). Получение доступа должно быть частью onboarding (как это по-русски?) в нормальной компании, равно как и почта, VPN и прочие подобные вещи. Настроить рабочую машину для работы в хорошо известном тебе языке — несколько часов. Меня 3 года назад в процессе трудоустройства еще и посадили на Mac (который я до того видел раз в неделю) — через два часа там бегал LAMP стек с отладчиком, остаток дня настраивал аккаунты, на следующий день пошла более-менее адекватная работа. Заставь меня сейчас учить SCALA — подобного я гарантировать не смогу. Другими словами, я не готов признавать свою профессиональную несостоятельность, если я не способен за те же сутки-двое выйти на адекватную производительность на новом языке.

      P.S. Местоположение кофе-машины вообще-то надо выяснять еще на собеседовании :) Полу-шутка.


  1. Space_Cowboy
    13.06.2019 18:40
    +1

    Очень странно соотносить Verilog / HDL с языками программирования. Человек с таким основным пунктом в резюме — это скорее инженер с более глубокой базой нежели обычный программист, к сожалению уровень зп в России не отражает данную действительность.


  1. vagon333
    13.06.2019 18:51

    Средняя з/п в $70k для самого дорогого языка — это смех.
    Средний DBA у нас получает $80k.

    Что касается Clarion — отмирающий язык.
    Писал на нем 12 лет, живу рядом с головным офисом SoftVelocity. Там все плохо.


    1. Rhombus
      13.06.2019 19:40

      Средняя з/п в $70k для самого дорогого языка — это смех.

      Это среднемировая зарплата, она вообще ничего не показывает.


    1. tani_mel Автор
      14.06.2019 19:23

      Добрый день, если в Вашей компании средняя з.п. $80k, еще не означает, что она средняя з.п. по рынку.
      Нам кажется, что у вас не репрезентативная выборка.


      1. vagon333
        14.06.2019 19:26

        Я не упоминал нашу компанию.
        Под «нас» я подразумевал регион.


        1. tani_mel Автор
          14.06.2019 19:31

          По 1 региону не совсем верно судить о средней з.п.


          1. igorp1024
            16.06.2019 14:07

            Если быть точным в терминологии, то он в штате, а не в регионе.


        1. igorp1024
          16.06.2019 14:07

          Речь о среднемировой ЗП, а не о среднештатовской. Ну и это ж не 50-я процентиль, а среднее арифметическое.


      1. NetBUG
        16.06.2019 13:05

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


  1. beeruser
    13.06.2019 20:29
    +1

    самые опытные программисты пишут на Cobol и Perl.
    Самые опытные программисты крестятся двумя перстами.


    1. Yuuri
      13.06.2019 20:47
      +3

      Прочитал «крестятся двумя крестами» и подумал про C++.


  1. YuryB
    13.06.2019 21:23
    +1

    откровенно глупая статья, видно что у hr агентств понимание индустрии на уровне grep по резюме и примитивной математики


  1. saipr
    13.06.2019 22:40

    Tcl. Спрос на язык есть, но я бы не стала относить язык к востребованным.

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


    1. Morgan_iv
      14.06.2019 01:27

      Судя по постам на хабре, Tcl/Tk активно не используется никем кроме Вас, по крайней мере, с 2016 года.


      1. Rigidus
        14.06.2019 03:46

        Это не так


      1. saipr
        14.06.2019 10:45

        А как вам это:


        November 04 — 08, 2019
        Crowne Plaza Houston River Oaks
        Houston, Texas, USA


        17th European Tcl/Tk User Meeting
        Date
        June, 29th and 30th 2019
        Location
        SUSE headquarters in Nuremberg, Germany


  1. Assimilator
    14.06.2019 01:10

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


    1. tani_mel Автор
      14.06.2019 19:29

      Мы анализировали спрос и количество резюме, у нас не было задачи оценить сколько из общей массы действительно хорошо знают Кларион, тем более что метрики «действительно хорошо» у всех свои.


  1. Papashkin
    14.06.2019 10:34

    APL видимо всегда будут обходить стороной.
    Никому не охота больше работать с этой монструозной клавиатурой.


  1. ness_fly
    14.06.2019 11:35

    Сразу захотелось стать программистом, как писали сверху за 80К$. Ибо кроссовки купить нет денег(


  1. third112
    14.06.2019 14:35

    Я решила собрать все ваши комментарии и провести еще один анализ.
    А вот на мой вопрос не ответили. Повторю — вдруг ответят:
    Интересно: кто как оценивает тенденцию (м.б. своя оценка или оценка из сетки):
    количество ЯП, пользующихся спросом в мире и РФ:
    1) растет;
    2) уменьшается;
    3) в среднем стабилизировалось: примерно сколько старых ЯП теряют спрос — столько новых получают.


    1. tani_mel Автор
      14.06.2019 19:54

      1)На первый вопрос очень просто ответить: js, python, с++, Kotlin
      2) c#, objective c
      3) Сложно с ходу ответить, нужно подумать.


      1. third112
        14.06.2019 20:03

        Спасибо. Буду ждать овета на 3й вопрос.


      1. crea7or
        15.06.2019 00:25

        Почему C++?


  1. HEKOT
    14.06.2019 14:36

    У меня в резюме REXX есть! Ясен пень, я уже НИЧЕГО не помню. Последний раз на «бобике» писал лет 17 назад.


    1. red_andr
      14.06.2019 18:59

      Довольно долго в своём резюме упоминал Scientific Vector Language, пока не понял, что это бессмысленно, так как про него никто не знает. Язык этот очень узкой спецификации, которым владеют ну пара сотен человек во всём мире.

      Пример
      // Two-center corrections to the core fock matrix
      function calc_F2[]
      
              F2 = rep [ rep[0,numbf], numbf ];
             	local dD = apt peek [D, x_id D];
      
              local ibf = 0, iat, jat, i, j;   // bf number of the first bfn on iat
              for iat=1, nat loop
                  local jbf = 0;
                  for jat=1, nat loop
                      if iat <> jat then
                          local gammaij = gamma [ iat, jat ];
                          for i=1, atoms.nbf(iat) loop
      
                             	local v = peek [ F2, ibf+i ];
                             	v[jbf+igen atoms.nbf(jat)] = get[ F2(ibf+i), jbf+igen atoms.nbf(jat) ] - 0.25 * gammaij * get[ D(ibf+i), jbf+igen atoms.nbf(jat) ];
                             	F2 = poke    [ F2, ibf+i, v ];
                             	F2 = apt put [ F2, ibf+i, v ];
                             	F2(ibf+i)(ibf+i) = F2(ibf+i)(ibf+i) + 0.5 * gammaij * add get [dD, jbf + igen atoms.nbf(jat)];
      			F2 = apt put [F2, x_id F2, put [ apt peek [F2, x_id F2], jbf+igen atoms.nbf(jat), 
      			                           get [ apt peek [F2, x_id F2], jbf+igen atoms.nbf(jat) ] + 0.5  * gammaij * D(ibf+i)(ibf+i) ] ];
                          endloop;
                      endif;
                      jbf = jbf + atoms.nbf(jat);
                  endloop;
                  ibf = ibf + atoms.nbf(iat);
              endloop;
      
      endfunction


      1. HEKOT
        14.06.2019 19:06

        Если бы просмотром моего резюме занимались люди, я бы выкинул. Но этим занимаются машины, агенты и HR-щики. Пусть будет. Кто знает, на что у них встанет? :)

        Мне как-то звонит агент:
        — Tell me about yourself (у самого на руках моё резюме)
        В течение получаса распинаюсь, какой я обалденный Software Engineer. Этот дебил предлагает мне позицию Hardware Engineer! А что, из 16 буковок 12 совпало — 75% релевантно!


  1. dmito
    14.06.2019 19:55

    про проприетарные языки еще можно бы подборку
    вот тоже два рейтинга
    www.tiobe.com/tiobe-index
    redmonk.com/sogrady/2019/03/20/language-rankings-1-19


  1. Rosenkraunz
    14.06.2019 19:55

    где Brainfuck?
    думаю есть указавшие в резюме, но врдя ли есть спрос=))


    1. tani_mel Автор
      14.06.2019 19:55

      Мы делали анализ на основе запроса от пользователей хабра, они не вспомнили этот язык.=)



  1. Stas911
    14.06.2019 21:51

    GPSS не увидел в списке. Если уж VHDL есть, то гулять — так гулять!


  1. asmolenskiy
    15.06.2019 09:27

    ИМХО сопоставлять HDL языки и языки написания ПО — это то же самое что сопоставлять таксиста и тракториста. В принципе 4 колеса и баранка есть в обоих случаях, на этом общее заканчивается.
    Владение HDL языком — это свойство разработчика РЭА или разработчика микроэлектроники. Само по себе оно не ценится. К нему обязательно должен прилагаться набор скиллов ничего общего с программированием не имеющий.


    1. Mogwaika
      15.06.2019 09:43

      А в чём разница в скиллах написания кода hdl и высокоуровневого?
      Ценится ли само по себе владение С?


      1. asmolenskiy
        15.06.2019 10:02

        В том что это составляющие части другой профессии.
        Я программирую на Verilog/VDHL, а помимо этого разрабатываю электрические схемы, трассирую печатные платы, моделирую Signal и Power Integrity и работаю с КИ-аппаратурой. То есть общего у меня с программистами всего да ничего.
        Другая корзинка.
        В нашем мире — «знать Verilog» — это просто плюс в карму, а не флагман умений.
        Хотя для HR мы все одинаковые чумазики ).
        То же самое относится к Tcl. Как тут верно было подмечено — он используется в тулах для разработки FPGA, а также он используется в ECAD системах и в системах моделирования SI. То есть знание Tcl — это просто кусок владения САПРом а не самостоятельное умение.
        PS: HDL — это высокоуровневые языки. Низкий уровень в нашем случае — это нетлист.


        1. Mogwaika
          15.06.2019 10:09

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


          1. asmolenskiy
            15.06.2019 10:20

            Ну где такой отлаженный алгоритм — там и зарплата 40 тыщ у «Verilog-программиста». Это достаточно простой язык — на такие позиции можно смело брать студентов и через полгода они уже будут нормально кодить Verilog без детских ошибок. А просто написать что-то там внятное — недели через две наверное смогут.
            Если полноценные профессии подвергнуть декомпозиции на скиллы, а потом скиллы называть профессией — то да, разница не большая. Как в примере с таксистом и трактористом — скилл кручения баранки у них одинаковый, просто немножко разные баранки. То есть можно посравнивать — что популярнее — тракторная баранка или автомобильная. Какая там… легче крутится, удобнее в руке лежит.


            1. Mogwaika
              15.06.2019 10:29

              А аналогичный пример про Си не работает?
              И нет, там не 40 тыщ предлагали…


              1. asmolenskiy
                15.06.2019 10:36

                А аналогичный пример про Си не работает?

                Вы несколько подменили мой посыл. Идея моего поста была такая что автор по сути анализировал каким программистом быть лучше, но при этом засунул в виды программистов скилл от разработчиков электроники.
                Разработчиком электроники сейчас в нашей стране быть хуже чем разработчиком ПО. За это платят гораздо меньше.
                Разработчиком микроэлектроники быть лучше (чем разработчиком электроники) — за это платят больше. Я бы даже сказал — платят хорошо. Но мест где можно работать — мало.
                И нет, там не 40 тыщ предлагали…

                Видимо хороший работодатель. А сколько предлагали? А то может я все брошу и займусь — я люблю писать на HDL. Но никак не найду того, кто бы за это платил нормально.


                1. Mogwaika
                  15.06.2019 10:42

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


                  1. asmolenskiy
                    15.06.2019 10:46

                    А остальные языки это не скиллы, т.е. просто инструменты для реализации алгоритмов?

                    Безусловно, просто контекст статьи — ПО. Разработчики ПО могут там навыбирать себе портфолио языков руководствуясь их востребованностью и ценой.
                    Мы нет — у нас их два + System. Знать по хорошему надо все ).
                    Человек не выбирает между C и Verilog. Тут он выбирает между тем быть ему программистом или схемотом.


                    1. Mogwaika
                      15.06.2019 11:18

                      А эмбеддер, который пишет на Сях не должен знать всё, что вы перечисляли выше?
                      Или всякие попытки HLS И тому подобные попытки перехода с программирования?
                      Ну и чего плохого в выборе между программизмом и схемотехникой?


                      1. asmolenskiy
                        15.06.2019 12:25

                        Эмбеддер — это все таки программист, который немного погружен в железо. Немного. Обычно они владеют базовыми навыками: умеют читать схемы, работать с КИ-аппаратурой и паять. Этого как правило для их задач — достаточно.
                        Эдакий гибрид эльфов и гномов. Примерно 85% эльфа и 15% гнома.

                        Или всякие попытки HLS И тому подобные попытки перехода с программирования?

                        HLS годится во многих применениях, но процессорные ядра и другие СФ-блоки все таки пишутся на HDL разработчиками микроэлектроники, а не бывшими например Jawa программистами. Тут нет кросс-платформенности специалистов )
                        Ну и чего плохого в выборе между программизмом и схемотехникой?

                        А я разве говорил что это плохо?


                        1. juray
                          15.06.2019 20:31
                          +1

                          Да ладно, бывает и наоборот — электронщик, освоивший программирование.


                          1. asmolenskiy
                            15.06.2019 20:41

                            Бывает и врачи становятся программистами.
                            Частные случаи на то и частные.
                            Это две разных профессии. Да они идут рядом и связаны. Бывают даже специалисты в обоих сразу. Причем я не о схемотах, умеющих программировать микроконтроллеры — это добра полно. А а полноценных профи в обоих классах)
                            Но в общем и целом эти профессии — разные.


                            1. juray
                              15.06.2019 20:51

                              А у вас есть статистика?
                              Может, это у вас частный случай. Или оба варианта одинаково распространены. Утверждать ничего не могу.

                              Но ведь есть целая специальность 210202 (ранее — 220500) «Проектирование и технология электронно-вычислительных средств», выпускникам по которой, по идее, в эмбеддеры прямая дорога.


                              1. asmolenskiy
                                15.06.2019 20:54

                                Вот смотрите — запрограммировать STM32 чтобы он правильно дрыгал ногами и читал I2C — я смогу.
                                А написать ПО сопровождения цели в реальном времени для PPC440 — нет.
                                Этим и отличаются схемоты, умеющие программировать микроконтроллеры от разработчиков встраиваемого ПО (эмбеддеров).


                                1. juray
                                  15.06.2019 21:01
                                  +1

                                  А можете привести источник, где вы взяли такое определение слова «эмбеддер»?

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

                                  Ну и ваши личные нюансы — вообще не аргумент.


                                  1. asmolenskiy
                                    15.06.2019 21:12

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


  1. dominigato
    15.06.2019 13:58
    +1

    Статья неплохо иллюстрирует что думают HR об индустрии :) Давайте посчитаем сколько раз упоминается слово в вакансии и у нас готова статистика, ну ну.
    Боюсь расстроить насчет Perl, часто в вакансиях просто скидывают в кучу все что знают, типа «владение скриптовыми языками Bash, Perl, Python, Scala бла бла бла». При чем ничего на перле там не написано и написано не будет. Удивляюсь как Bash не стал самым «популярным» языком, он вообще в каждой вакансии.
    Для вас наверное будет шоком, но если в вакансии упоминается Perl, то это никак не значит что он требуется или на нем что-то делают. Также если в резюме упоминается Perl, это не значит что человек «программист Perl».
    Все вышесказанное также верно для любого другого языка, Perl просто хороший пример. К сожалению ваша «статистика» ничего нам не говорит.


    1. Brak0del
      15.06.2019 14:23

      Некоторая польза всё же может быть. Для меня из этих данных стало открытием, что в РФ так мало специалистов vhdl/verilog, интуитивно ожидал на несколько порядков больше. Понимаю, что цифры неточны, но имхо общий порядок прикинуть из них можно.