До 1990-х годов программистов и в целом специалистов IT-сферы было мало.
Персональные компьютеры и интернет создали огромное число рабочих мест, где работают "айтишниники". За последние годы, да пожалуй десятилетия уже, вузы почти перестали выпускать физиков и математиков, все выпускают программистов. Дело это считается денежное, перспективное и для молодых. Молодые имеют свойство стареть.
Посмотрим на анонимный опрос заработных плат среди европейских ИТ-специалистов с упором на Германию www.asdcode.de. По сравнению с прошлым годом количество респондентов увеличилось на четверть.
В этом анализе «Заработная плата» означает годовой оклад брутто в тысячах евро, включая все налоги. Медиана базовой заработной платы (т.е. без учета бонусов и акций) в 2020 году осталась почти такой же, как и в 2019 году - 70 тысяч. Мы видим количество респондентов вместе с их средней годовой базовой зарплатой по годам. Более 91% респондентов из 45 городов Германии.
Ниже диаграмма распределения по возрастам.
Возраст большинства респондентов (~ 59%) составляет от 28 до 35 лет - тот же возраст в 2020, что и в предыдущем опросе в 2019 году.
С женщинами в этой сфере не толерантно.
И хотя доля женщин среди респондентов выросла на 0,3% с 2019 года и на 0,8% с 2018 года, но остается удручающе малой. К тому же, согласно собранным данным, разница в средней заработной плате мужчин и женщин составляет около 18%.
Это все интересно, но меня интересует возраст или рабочий стаж. Любопытна также зависимость зарплаты от стажа.
Давайте сначала посмотрим на распределение опыта работы по годам. 81% респондентов имеют общий стаж работы от 5 лет; ~ 43% имеют опыт работы в Германии до 3 лет.
График показывает среднюю заработную плату респондентов с определенным опытом работы. Новички в сфере высоких технологий с опытом работы менее года могут рассчитывать на заработок 45,5 тыс. евро. С каждым следующим годом, проведенным в отрасли, годовая компенсация логарифмически растет (с некоторым замедлением около 10-летней отметки). Только 30% инженеров-программистов (145 респондентов) имеют общий стаж более десяти лет; этого недостаточно, чтобы строить предположения о твердой тенденции по заработной плате.
Ключевых вопросов два.
1) Распределения работающих в IT-сфере показывают, что работники в целом молодые. Правда и отрасль еще относительно молодая. Будут ли IT-шники стареть? Будут ли программисты выходить на пенсию в 65 лет, или в 70 (не знаю как там сложится с пенсионным возрастом) ? Я бы сказал так, а выходят ли сейчас на пенсию программисты? Не начальники-руководители, а "кодеры".
2) Можно ли программистом доработать до пенсии? Можно ли выдержать конкуренцию?
Последней еще одна любопытная картинка.
Комментарии
Что за дурацкая тенденция считать, что айтишники - это только программисты? Программист, по большому счёту, имеет к IT примерно такое же отношение, как пользователь экселя или 1С. И те и другие что-то там пишут, что потом приходится настраивать и запускать в работу тем самым айтишникам. Причём последние этих самых программистов мягко говоря недолюбливают.
Согласен, мы говорим шахтер, а у шахтеров десятки профессий и специализаций.
Будем считать, что речь идет о выпускниках с базовым образованием по УГС Информатика и вычислительная техника + УГС компьютерные науки + прикладная математика и информатика, если они работают по специальности.
"Б... кто все эти люди?"(c)
На самом деле, большинству программистов совершенно не обязательно знать, как устроен компьютер, как работает ОС и даже, что делает компилятор. От него требуется написать код, который будет на выходе выдавать нужный результат за приемлемое время. Точно также, как клерку надо написать документ в ворде или инженеру начертить чертёж, который что-то там изменит в производственной цепочке. Это по сути обычный пользователь. Так что я выделял бы программистов вообще в отдельную группу. Почему пользователь автокада - это не айтишник, а пользователь какой-либо среды разработки уже охренеть, какой айтишник?
Ну вот это и отличает программистов от пользователей автокада, екселя, 1С, MS SQL, Oracle итд итп - идите и сами запрограммируйте, а если не можете, то свалите и не жужжите,
Что "это"? Можно подумать, программист сможет создать проект в автокаде. Программист может что-то запрограммировать на компьютере, инженер - начертить деталь, 1сник - создать конфигурацию под бизнес-процессы... Все они всего-лишь пользователи того, что называют IT.
Угум. АвтоЛисп освоить - раз плюнуть. А истинный программист пишет только на ассемблере.
Что-то программирует - уже программист. Точнее, что-то программирует, и ему за это платят - уже программист.
если я написал макрос для ворда для форматирования таблиц, потому что лень вручную форматировать текст. я уже программист?
Или макрос в экселе, или круче - макрос, который перекидывает таблицы из экселя в ворд. ЭТО уже программист или просто пользователь микрософт офис?
Хихихи. До тех пор, пока Вы не оказываетесь в организации, где учёт поставлен аккурат на аксессе, ms sql, макросах, экселевских таблицах - и всё это скручено вместе вижуал бейсиком. "Ну оно же работало, чё там сложного", и хорошо, если начальник озаботится и выделит разбирающегося человека именно в качестве программиста - есть шанс переползти на какое-нибудь коробочное решение.
А начиналось всё с экселя, да. Потом аксес, потом к нему привесили скуль. Как я уже сказал, среда программирования неважна - важен факт работы программистом, т.е. оплата за работу.
учет в аксессе - это мазохизм. Лучше в рукописных журнал-ордерах вести.
Так всё обычно начинается с того, что "а можно написать программку, чтобы печатала счета для заказчиков?" Потом "ой, а можно, чтобы заказ был многострочным?" Следом "а вот давайте она будет печатать счёт-фактуры?". "А Торг-12?". "А можно добавить оплату?". "Ой, а как бы увидеть просрочку?"
// А начиналось всё с экселя, да. Потом аксес, потом к нему привесили скуль.
Классическая траектория. Я по ней тоже ездил лет 20 назад.
Программист - человек, который зарабатывает себе на жизнь написанием программного кода.
это как посмотреть.
Я написал макросы, которые ускоряют мою работу в экселе и в ворде. Могу больше сделать и больше заработать или, как раз мой вариант, денег получать столько же, не работать по времени раза в 3 меньше.
Это получение денег от написания программного кода или нет еще?
Нет. Потому что вам платят не за сам программный код, а за другую работу.
Не вполне соглашусь. Во времена оны, когда из всего софта зачастую был один Бейсик, народ вполне себе кодил приложения для собственных нужд. Не заработок, но средство облегчить себе жизнь. Полагаю, что они могли считаться программистами, особенно если программа требовала развития и поддержки.
Я бы сказал, что как только дело доходит до оператора if, можно с уверенностью говорить о том, что продвинутый пользователь начинает превращаться в программиста. С этого момента он работает с алгоритмом. Программист - человек, реализующий алгоритм в виде кода для той или иной среды выполнения.
вспомнилось Алгоритм заведения друзей
О.... Я реализую работу с опертором if при програмировании станков с ЧПУ. Параметрическое програмировние станков бодро входит в моду.
Могу ли я считать себя "програмистом"?
да
embedded programing
если вам за это платят
если не платят - значит хобби
ну, типа как "охотник" сегодня отличается от охотника, который пару тысяч лет назад кормил этим семью
Да. Поскольку речь уже не идёт о простой (скорее, непростой) последовательности инструкций, и Вам требуется рассматривать варианты поведения станка. Вполне себе программирование. Я бы даже сказал, что и без if речь всё равно шла о программировании. Поскольку ЧПУ расшифровывается как Числовое Программное Управление. А программы пишут программисты. Хотя бы они и работали в основном по другой специальности.
По сути последовательносте две - сдвиг системы координат для изотовления серии одинаковых деталей из заготовки и проверка адекватности изначально заданных параметров (внутренний диаметр при обработке не длолжен быть больше внешнего). Хотя ещё и цанговый перехват заготовки, тоже реализовывал (первый на заводе, кстати).
Не всё програмное управление - Числовое...
Вспоминая утренние занятия первого семестра второго курса, я бы сказал, что если управление с перфоленты ещё можно было не называть программным (хотя - почему?), то язык управления для микропроцессорного блока станка определённо был языком программирования.
Управление настройками концевиков и передаточным числом шестерёнок - разве оно числовое?
Программа
Програ́мма (от греч. προ — пред, греч. γράμμα — запись) — термин, в переводе означающий «предписание», то есть заданную последовательность действий. Данное понятие непосредственно связано с понятием алгоритм.
еще вопросик, когда 1С только начиналась и была глючная и считала с большими ошибками, я сам себе написал бух.программу в среде Clarion где-то за месяц потом пара месяцев на улучшение.
Но это хоть на программиста потянет?
На программиста-любителя потянет.
Это в теории (он что то пишет, что потом просто работает)...а на практике это прикладной программист....который порой приносит больше вреда, чем пользы.
Поясню. Подмечено - как только программист касается своими натруженными руками какой-нибудь задачи, он моментально превращается в специалиста смежной специальности...с большим апломбом и "интересными" идеями. И по пальцам могу пересчитать знакомых мне программистов, которые умеют себя удержать от этой душевной напасти))
Наезд на пенсионеров не поддерживаю...они то как правило еще с советским кругозором ребята...с крепким знанием основ. А вот недавно взяли на работу двоих молодых. У одного из них два диплома по разным средам программирования, но что с ним делать, если он вольты с амперами постоянно путает.
Сейчас всё развивается в сторону как можно большего разделения труда. Поэтому работа почти любого программиста очень скоро будет состоять из написания куска кода, в котором есть начальные условия и то, что нужно получить на выходе. Он даже не будет знать, зачем это делает.
Без шансов.
Эти люди, псевдо-программисты, работающие по четким начальным условиям с четким ожидаемым результатом по четкому ТЗ - это фактически балласт. Усилия и затраты времени на написание ТЗ по новым задачам для них превышают усилия на решение задачи самостоятельно без них. Но они одновременно являются мобилизационным потенциалом на случай, если от них действительно понадобится какая-то работа, когда придется думать быстро на основе неполных данных. Кто мобилизуется - в деле, остальные делятся на балласт, остающийся на борту, и балласт, сброшенный в свободное плавание.
Поэтому такие люди существуют, до поры до времени ходят на работу и получают зарплату. Еще от них есть польза, что иногда задают уточняющие (умные и глупые) вопросы, которые постановщику сразу не пришли в голову. В остальном их роль - клонировать уже написанные решения с минимальными изменениями, если эта задача еще не автоматизирована, т.е. не сведена к конфигурированию. И не мешать работать тем, кто делает основную работу (а ее делают специалисты с глубоким погружением в предметную область).
Соглашусь. Но все равно имеют право на жизнь оба подхода. Только первых нужно единицы и они обычно на лидерских позициях. А вторых можно иметь много, но для их эффективного применения нужны первые.
Вы ошибаетесь. Если ничего не поменяется, то всё к тому идёт. Разделение труда выгоднее экономически. Я вас возможно удивлю, но это докатилось уже даже до системного администрирования. В крупных компаниях на должности IT-специалистов по обслуживанию серверов уже давно нанимают дилетантов и обучают их работать строго по инструкции, не понимая, что они делают. Да, кто-то для них эти инструкции пишет, но основную массу работы выполняют именно эти дилетанты.
Сразу вспомнился рассказ Азимова, профессия.
Именно про этих людей я и говорю. При разработке они дополнительно тратят время, а не экономят, чистый минус. Потом несколько людей героическими усилиями все исправляют и создаётся иллюзия, будто работала команда.
Годятся в основном для повторения типовых вещей, которые в принципе поддаются автоматизации. Это не разработка.
жизненно )))
Это вы ошибаетесь. Один суперадмин не масштабируется во времени и пространстве на все те сервера, узлы, агрегаты и прочие рабочие станции за которые он отвечает. По этому его решения упаковываются в инструкции, которые уже можно масштабировать с помощью делитантов на местах.
Результат работы программиста - программа, которая масштабируема сама по себе. Т.З. на прграмму - это уже готовый алгоритм и решение задачи. Секретарш для набора кода программисту не нужно. Они не ускорят его работу, т.к. в подавляющем большинстве набирают код сильно медленнее исходного спеца и допускают множество "детских" ошибок увеличивая время тестирования и отладки. Гораздо выгоднее направить спеца на разработку архитектуры и интерфейсов и обучение молодёжи, чтобы спецов в команде было больше, но при этом сама команда меньше.
У разделения труда есть не очевидные издержки на поддержание связности, это как минимум увеличение количества передаваемой информации между "разделёнными". Например выше описанное ТЗ будет подрастать. По этому существует ОПТИМАЛЬНЫЙ уровень разделения труда в системе, выше которого издержки дальнейшего разделения труда превышают выгоды.
И это тоже. Причём, для такого рода программистов редко возникают задачи, заставляющие выйти из очерченного круга. А вот кто на саппорте - тот часто и швец, и жнец, и на дуде игрец. и по определению должен уметь понимать, что люди хотят.
Ну, тут ведь как. Это работает в обе стороны. Причём скорее прикладник станет программистом, чем наоборот. По крайней мере, таких случаев среди моих знакомых - море, а вот чтобы человек закончил ВУЗ с дипломом программиста и стал работать кем-то ещё - таких не встречал.
Если разово для себя - нет не программист, если ваша основная работа - написание макросов по заданиям - то да вы программист.
Только это не сделает вас конструктором. Равно как и освоение ворда не сделает, например, писателем.
Но если я буду зарабатывать себе на жизнь написанием макросов на автолиспе, я таки буду программистом ;)
А вот прикинь, как правило напрягшись кодер сможет и в автокаде зафигачить и заменить экономиста/буха/финансиста/... а вот обратное не верно, но кодеры часто интроверты поэтому не часто идут на это.... хотя мой бывший нач стал диром, например.
"Зафигачить" что-то он конечно сможет. А вот спроектировать грамотно - сомнительно. Сейчас любят подменять умение работать в программе и профессионализм. А это далеко не одно и тоже. В обратную сторону, кстати, также верно. Грамотный инженер тоже может что-нибудь накодить простое и даже работоспособное, но на сложный проект нужен человек с соответствующим обучением и опытом.
Совершенно верно. Современные программисты очень часто мнят себя всезнайками. А это не так. Знания у них по большинству направлений, если и есть, то поверхностные, и "зафигачить" они смогут разве что какую-нибудь никому не нужную хрень.
этого с них требует работодатель на интервью
вот и делают вид
капитализм-с
а сколько можно научится за два-три года, пока их делают "ведущими" )))
Если вы имеете отношение к ИТ то должны знать что первый раз именно или зафигачить или профукать. Второй раз ВСЕГДА лучше, не так напряжно, быстрее. По другому не бывает.
>Грамотный инженер тоже может что-нибудь накодить простое и даже работоспособное
Ни разу не видел таких примеров, хотя перетоков с разных должностей на другие видел многократно (и безопасник->экономист и нач.ИТ->директор и т.п.)
Я тоже не видел переходов из ит в инженеры-проектировщики, например. Просто что-то вычертить, наверное смогут, у нас даже юристы с исполнительными схемами, например, справляются, после некоторых объяснений. А вот жить в доме, спроектированном итшником я бы не хотел. Сохранений и бэкапов в жизни, к сожалению, нет.
давно дома не строят без софта
и машины не проектируют
и самолёты (про последний Боинг слыхали?)
более того - мы в шаге от массовых самодвищущихся повозок без шофёра
как вам теперь жыть-то?
назад, в деревянный сруб и телеге?
Я разве отрицал важность софта? Он нужен, безусловно. Но вам известно выражение - "мусор на входе дает мусор на выходе"? Чтобы грамотно применять софт и делать правильные выводы из полученного результата нужно быть инженером и понимать как результат расчета будет выглядеть "в бетоне", как экономически оправданно реализовать его и возможно ли это вообще при доступных технологиях. Иначе получим "сфероконя в вакууме" - математически красиво, а на деле - абсурд.
Боинг - хороший пример, плохого проектирования, когда программным костылем пытаются закрыть фундаментальные недостатки проекта. Можно ещё уродца ф 35 вспомнить, который переворачивался при пересечении линии перемены дат. Хорошие примеры применения програмерского подхода в инженерном проектировании.
Дом? А что сразу не космолёт? Расчёт перекрытий, к примеру, не такая тривиальная задача... Но если этому может научиться любой студент - сможет и многие итшники, но время. А в реале никто этого времени давать не будет. Зачем ждать от 1-2 лет что-бы получить "молодого специалиста" если готовых спецов здесь и сейчас - вагон!
Страницы