Комментарии 657
Мне 39 и я программист. В менеджеры не тянет (пробовал, спасибо). Архитекторам на фронтенде места, собственно, нет.
Когда жил в России, то заметил, что как исполнилось 35 — предложения как отрезало. 3.5 года назад эмигрировал, предложений хватает, чтобы не оставаться без работы.
Польша
Работать с мотивацией сложно,
поэтому работодателю намного проще организовать боулинг для пацанов.
48 если что.
Мне 39 и я программист.
Мне 45 и я программист.
У меня сосед по офису был контрактник-программист, ему за 60.
У нас это норма
А комменты напоминают приветствие в клубе АА: «Меня зовут <>. Мне <> и я ...» :)
Программист, это же не просто кодер. Он переносит в машинный код свое знание жизни, вообще, и предмета, в частности. Пишите, успехов вам всем.
Довольно типовая ситуация — мидл или джун пишут неудачный код. Ну берешь и программируешь вместо них. То есть рассказываешь, какой алгоритм должен быть. А кодируют — они сами.
Ещё интересней ситуация с математиками. Как правило, они хорошие программисты, но отвратительные кодеры. То есть их код нужно долго напильником подтачивать. Для математика, например, 2**N и 2<<N эквивалентны, разницу они не видят.
С другой стороны, наша математик, по распечатанным матрицам может указать, что неверно в коде. При этом — не читая кода.
Ещё больше видно разделение в специфичных предметных областях, вроде АСУТП или бухгалтерии, где кодеру нужно 20 лет учить предметную область, а технологу или бухгалтеру — 3 года учить написание кода. В итоге программирует технолог, а кодирует кодер.
В конце концов, откололись же от кодеров верстальшики? Вот и программисты отколятся в отдельную профессию.
В конце концов, откололись же от кодеров верстальшики? Вот и программисты отколятся в отдельную профессию.
Так они уже выделились. Называются «системные аналитики». Только код теперь уже не пишут.
Как пример. Аналитик пишет «найти пересечения двух списков». программер — «перевести списки в битовые маски и сделать умножение масок» или «отсортировать списки по такому-то критерию и пройтись по отсортированным спискам, создавая третий список общих».
Аналитики — это чуть иное. Они все-таки решают, что нужно делать, а не как делать.
Зависит от глубины анализа. Вон, ваш собственный пример чуть ниже про PPP — в таком случае программист не будет изучать диссертацию неизвестного мне Подкорытова, а потребует у аналитика детальное описание алгоритма расчета. А уже технологические детали реализации, как там данные хранить и обрабатывать, он придумает. Как, впрочем, придумывает их и практически любой кодер, который поработал в отрасли какое-то время.
Так что получаем связку из четырёх смежных профессий:
- Аналитик — решает, что нужно делать.
- Алгоритмист — выбирает алгоритм
- Архитектор — структуры данных и архитектура процедур
- Кодер — записывает алгоритм на языке программирования
А программист — это нечто среднее между четырьмя ипостасями, но больше — алгоритмист и архитектор.
Как, впрочем, придумывает их и практически любой кодер, который поработал в отрасли какое-то время.Если кодер в курсе всех задач, которые в ближайшие 5 лет будут делаться на этой кодовой базе — то да. Но обычно кодеры не в курсе всех дальних планов, поэтому промахиваются с уровнем универсальности. Или слишком широко (переменное количество часов в сутках) или слишком узко. Когда кодовая база за 100 тысяч строк кодер вполне может и не знать её всю. А это — написание велосипедов, которые уже есть в кодовой базе.
Для них всегда был другой термин — «алгоритмисты».
В советском НИИ было много должностей и видов деятельности, которые их не пережили. Если вы заглянете в штатное расписание современной инжиниринговой компании, вы там не найдёте алгоритмистов, равно как и кодеров. Там будут именно аналитики, программисты, ПМы, ПрMы, архитекторы, тимлиды.
Но обычно кодеры не в курсе всех дальних планов, поэтому промахиваются с уровнем универсальности.
Я не имею в виду стратегию развития продукта в руках кодера. А с технической стороны, там ничего неожиданного не произойдёт. Мы до сих пор для составления цепочек программного кода пользуемся теми же «аминокислотами», что были и 30 лет назад.
Просто «инжиниринговой компании» алгоритмист не нужен, он нужен в сильно наукоемких отраслях.
Я не имею в виду стратегию развития продукта в руках кодера. А с технической стороны, там ничего неожиданного не произойдёт.Я про архитектуру, вообще-то. Какая-то функция может иметь дальнейшее применение и её надо выделить в удобный модуль. А какая-то — наоборот, применяться будет только в одном куске. Это все на уровне кодера не очень очевидно.
Я про архитектуру, вообще-то. Какая-то функция может иметь дальнейшее применение и её надо выделить в удобный модуль. Это все на уровне кодера не очень очевидно.
А чем уровень кодера тут отличается от уровня программиста? Если кодер видит, что это функция переиспользуется в разных местах, он её выносит в отдельный модуль. Если она имеет локальное применение, то не выносит. Не кодер делает тоже самое.
Это просто означает, что области наукоемких профессий не пользуются hh.ru, а или выращивают нужных специалистов сами или переманивают.
А чем уровень кодера тут отличается от уровня программиста? Если кодер видит, что это функция переиспользуется в разных местах, он её выносит в отдельный модульА кодер и не видит всю кодовую базу целиком. Он знает свои 10-20 тысяч строк, а не всю кодовую базу и все продукты на её основе.
Тот кто видит — архитектор или программист с функциями архитектора.
Архитектор, программист, кодер — это альтернативное деление к сеньор, мидл, джун. Альтернативное потому, что сеньор может быть кодером на чужом проекте.
Это просто означает, что области наукоемких профессий не пользуются hh.ru
Может быть. А может быть, просто не пользуются вашей терминологией :) Мои наблюдения как-то больше со вторым предположением коррелируют.
А кодер и не видит всю кодовую базу целиком. Он знает свои 10-20 тысяч строк, а не всю кодовую базу и все продукты на её основе.
Так не бывает. Бывают крупные проекты, где вообще никто не видит всю кодовую базу целиком. Там нет программистов? Бывают мелкие проекты, где вообще все видят всю кодовую базу. Там нет кодеров? Бывают средние проекты, где как повезет, в зависимости от стажа работы на проекте и собственных мозгов.
Поэтому ваше деление несколько надумано, и не соответствует реальности. Все они программисты, просто некоторые ещё недостаточно опытны. И для этого есть слово «джун», не нужно плодить новые определения.
Тестерирование и аналитика — хорошо выделились в отдельные профессии. Остальные — тоже выделяться.
Например, у меня высокий скилл в отладке, поэтому я частенько отлаживаю чужой код. Мог бы — вообще бы ушел сопровождающим программистом — править чужие баги.
Кодер — это тоже не джун, в части математики я настолько не разбираюсь, что могу ёе только кодить.
С другой стороны — я работал с отличным архитектором, не умеющим кодить. Человек придумывал архитектуру и алгоритмы. Первые месяц — думаешь, что бред. Ну не взлетит это. А через 2-3 года — оппа, а оно работает. И в параметры вписывается. И хорошо работает.
Причем сколько раз я подходил к нему с разными проблемами — он каждый раз выдавал хорошее решение. Но ни строчки его собственного кода я не помню. Уровень, разумеется, директор фирмы.
Так что по мне — это деление ортогонально обычному сеньор-мидл-джун.
Во всём сказанно вами, сквозит какая-то обида за профессию. Вы, по сути, выделяете в «кодеров» плохих программистов, хотя это буквально синонимы.
Не будьте обиженным, не придирайтесь к словам. Кодер и программист это одно и то же. А человек, не способный написать хороший код он не кодер — он бездарь.
Есть такая веселая задачка — с помощью одного приемника GNSS и интернета определить координаты с точностью в пару см. Причем в движении. Называется это PPP.
Вот вам диссертация Подкорытова, где основной результат — это «Алгоритм высокоточного абсолютного местоопределения с разрешением целочисленной неоднозначности псевдофазовых измерений» (глава 3). Остальное в этой диссертации — это обзор сделанного другими.
Ну что, сумеете придумать свой алгоритм? Или вы «стажер никчемный»? Если сумеете и он будет работать — мы его даже у вас купим.
Ну хорошо, а закодировать алгоритм
Осуществляется поиск k целочисленных векторов Mi,i 1,k, доставляющих последовательно нарастающие целочисленные минимумы преобразованному эллипсоиду M
"?Мы свой алгоритм сделать можем. Но с использованием в качестве программиста — математика, кандидата наук по GNSS с 25летним стажем, а в качестве кодеров — меня и моего сотрудника.
Вы, по сути, выделяете в «кодеров» плохих программистов, хотя это буквально синонимы.Почему же плохих? Бывают отличные кодеры. Просто они не учились 10-20 лет предметной области.
Есть такая библиотека — RTKLib. Сравнивали результаты работы RTKLib и наших алгоритмов на одном и том же приемнике. В статике у RTKLib радиус пятна — 3см, у нас 5мм. В 6 раз точнее. И я знаю, за счет каких моих алгоритмов наш результат лучше. Вот поэтому я — не только кодер, но и программист. А RTKLib — это результат 30 лет работы одного японского профессора.
А человек, не способный написать хороший код он не кодер — он бездарь.Бездарью себя вы называли сами. :-)
Таких наукоемких областей — очень много. Как говорил мой знакомый "
Основной результат моей диссертации - я сумел за два машинного времени просчитать то, на что стандартной американской программе требовалось полгода
". Это ФизТех, физика полупроводников.Сумеете настолько улучшить код, не учась 10-20 лет предметной области? Ась?
У меня такое впечатление, что вы никогда в жизни не писали код, достойный научных статей. Поэтому и не понимаете отличия программистов от кодеров.
Вы из двух синонимов делаете настоящий цирк абсурда. Очень жаль, что ваше самолюбие так уязвлено всего одним словом, тяжело наверно жить с такой душной натурой. До свиданья.
А вы просто никогда не работали в наукоемких областях. А они — немного другие, чем ваши сайтики. Для сайтика — действительно, любой дурак алгоритм придумает. Но, к счастью, мир не ограничивается сайтиками и примитивными алгоритмами.
Собсна, вам и аргументировать-то собственную позицию нечем, кроме «я так думаю». Вы, по сути, всю дорогу своими домыслами как-то коряво пытаетесь аргументировать существование синонима, который придумали даже не вы.
К слову, можете заглянуть в англо-русский словарь (тот же гугл.транслэйт, например) и посмотреть синонимы к слову programmer.
Ваши потуги просто смешны, а сама беседа утомительна. Как с книжным червём разговаривать.
КМК, стать менеджером — это интеллектуальное самоубийство. Всё что знаешь в плане разработки, без практики начнёшь забывать (а новое не наработаешь). И нужно иметь хорошие организаторские способности, чтобы быть востребованным. Иначе твоя кандидатура будет первым "на выход" при ближайшей серьёзной оптимизации компании. (42, если что)
Здорово. Но у меня реально упало количество от 3 в неделю до 3 в месяц.
Я не знаю, как это — "прокачанный":) Но у меня все заполнено.
Сейчас пишу крайне интересные комплексные системы и умею продумывать нетривиальные архитектуры. И пишу очень качественно (в плане кода). Но всё это — по большей части именно опыт, а он приходит с годами. Так что да, за 30 — это только начало карьеры.
Хочу что-то уметь. Хочу работать мозгом и руками.
1,5 года учу — пока не получается работать, но надежды не теряю.
- Страшновато. Но как говорится пилите Шура, пилите. Единственное жалею, что просидел на одном месте 17 лет. В 39 решил хватит и пошёл за счастьем. Работаю в основном в молодом коллективе, достают постоянные шуточки, ответная шуточка — от тебя ещё учебниками пахнет))
Может и не получится, но гештальт однозначно закрою.
Кстати да. У меня, скорее всего, то же самое.
потому, что с пониманием всего этого дела куда-то улетучивается желание зарабатывать этим.
Просто хотелось знать.
Зря вы так про архитекторов. Без человека на роли, которая определяет общую структуру и правила проекта, любой проект, где работает больше одного человека, превращается в солянку из разных подходов, стилей, незаконченных рефакторингов и костылей, через довольно короткое время делающий сознательную разработку если не невозможной, то очень медленной. Это и для фронта, и для бэка, и для баз, и для чего-то ещё справедлливо
Хотя возраст, это, конечно не слишком приятно, я бы предпочел 30-к вместо 40+, но тут уж ничего не поделаешь. Маемо шо маемо, как говорят у соседей.
А в плане обучаемости, лично я у себя особых проблем пока не вижу, на новой работе потребовался Котлин — за неделю от уровня «что это за хрень», до уровня «просто пишу код, практически без Гугла» проскочил без особых проблем (с Явы)
Когда уходил с предыдущей работы сильно боялся — по причине которая описана выше, мол после сорока работу найти почти невозможно. Не знаю, для меня реальность оказалась намного приятнее — нашел без проблем и даже еще и повыбирал между хорошими предложениями.
Требуется консультация специалиста.
Возраст помимо минусов дает и плюсы, и ими можно и нужно правильно распоряжаться.
Но есть капля дегтя.
Легко понять всю абсурдность этой точки зрения, если попробовать приложить её к другим профессиям. Попробуйте сказать 50-летнему юристу: «У тебя всё ещё нет собственной юридической конторы?»
Легко понять, что это демагогия, приложив ее к другим профессиям. Попробуйте сказать 50-летнему курьеру: «Ты все еще работаешь курьером?».
Как видим, даже работа в «современных IT-компаниях» иногда не спасает от ложных обобщений: если в юристом престижно работать и в 50, это не значит, что все остальные профессии будут так же сохранять свою престижность.
Школьное образование бесплатно, за школьные обеды просят довольно скромные деньги. При этом, по нашим меркам, их начальная школа недалеко ушла от детского сада — играют там намного больше, чем учатся.
Вот с детсадами сложнее — бесплатных мало и большинству приходится идти в частные, примерно за 300 евро в месяц.
Детей тут местных мало (с позиции туриста), по крайней мере если судить из длительных поездок, недавно на одном из мусорных баков увидел надпись, примерно означающую — "кризис стал перманентным", лет 5-6 назад, обратил внимание что совсем нет маленьких детей, сейчас не видно ни мелких ни постарше.
«любая работа хороша».
С учетом реальной безработицы в странах PIGS процентов этак в 60 — вполне себе оправданный подход.
Легко понять, что это демагогия, приложив ее к другим профессиям. Попробуйте сказать 50-летнему курьеру: «Ты все еще работаешь курьером?».
Не совсем понятно, как из этого следует, что цитата выше демагогия? Думаете курьеру будет приятно от такого вопроса? Представителю любой профессии будет неприятно, если его при большом стаже спросят: «А почему ты не начальник?» Даже курьеру может нравиться своя профессия, ходить по какому-то красивому городу или водить автомобиль, например, или ему может нравиться то, что у него большое количество свободного времени, в которое он может слушать аудиокниги, например. Стаж человека не должен говорить о его профнепригодности, это унизительно, задавать такие вопросы на собеседовании.
если в юристом престижно работать и в 50, это не значит, что все остальные профессии будут так же сохранять свою престижность.
Если принять во внимание то, что профессия программиста ни разу не легче профессии юриста, так как требует серьезных профессиональных знаний, то еще как следует для профессии программиста.
ИМХО, я бы разделял квалифицированный (и высокооплачиваемый) труд и неквалифицированный.
Да и аппетиты по зарплате у молодых не такие, как у синьоров-помидоров.
Посмотрим, конечно, как рыночек порешает. Но пока мне кажется, что 40-летним в линкедине хрюши уже не пишут.
Не спорю, что юникорны, которые работают за десятерых существуют. У них даже какое-то специальное название есть. В любом случае, их не так много.
Лично моя производительность выросла за 10 лет только для узкого класса сложных задач, коих на самом деле, не так много.
Во что я могу поверить, так это что Аналитики, архитекторы и специалисты по машинному обучению с годами, становятся только лучше. Там опыт имеет большее значение. Так что там можно еще побороться за рынок в 40 лет.
Это уже уровень архитектора, а не frontend-разработчика.
Я думаю, не ошибусь, если скажу, что в подавляющем большинстве проектов роли архитектора и ведущего разработчика совмещаются в одних и тех же людях. На одну крупную компанию с разделением ролей приходятся сотни, где они успешно совмещены.
успешно совмещены.
Это да, но там очень выгорабильная работа. Я за 2.5 года работы лидом внешне постарел лет на 7. Теперь стараюсь больше под джуна/мидла косить. Денег меньше, зато для здоровья не так вредно.
Только тут существует проблема не договориться. Как знаете, а басне про лебедя, рака и щуку. Вдобавок, ещё и ответственность размазывается, никто не отвечает за конечный выбор. Все же должен быть человек:
- Который укажет на проблемы, если всем месье программистам не хватает опыта
- За которым будет последнее слово в принятии решения и ответственность за это решение.
Поделитесь, какой надо ценный опыт получить, чтобы делать SPA на React в 5 раз быстрее, чем пятеро молодых спецов, которые сделали на реакте по нескольку проектов большому проекту в течении, скажем трёх лет?Если они пишут write-only код, то можно нанять хоть десять таких ребят, но потом год их работы будет проще закопать, чем переписать.
И да, все зависит от сложности SPA и реальной системы на беке: «написать, чтобы оно как-то работало и показывало до 10 записей» — это не то же самое, как «написать, чтобы оно не тупило на 1000+ записях».
Если они пишут write-only код, то можно нанять хоть десять таких ребят...
Есть еще такой феномен, когда разработчик, узнавший про какую-то фичу, считает своим долгом где-то ее обязательно применить.
Фильтр у такого разработчика еще не не откалиброван, и нет адекватного понимания последствий своих действий.
И да это это означает, что мир реакта дофига большой, можно там всю жизнь проработать. Ваше высокомерие неуместно. Жависту вы тоже скажете, про его маленький мир, ограниченный жавой?
И да это это означает, что мир реакта дофига большой, можно там всю жизнь проработать
Всю жизнь вряд ли, реакт — это всё-таки фреймворк, а не язык, и поэтому проживет он лишь до появления нового более модного и яркого фреймворка. И как только это произойдет, те вакансии исчезнут так же быстро, как и появились.
Само существование WebAssembly говорит о желании использовать что-то другое даже для сайтов (ну и о хреновой скорости браузерного JS).
В офисном центре, в котором я работаю из большинства устоявшихся компаний и стартапов никто из тех, о ком я знаю не использует Java и тем более C++ для бекенда. Для сервера в основном все используют NodeJS и Python. Всем гораздо важнее скорость разработки и возможность быстро найти кадры.
Я вообще считаю, что нужна очень веская причина, чтобы не использовать React/React Native/NodeJS стек для написания приложения. С точки зрения бизнеса это сейчас лучший стек в соотношении цена/качество. Берешь одного разработчика, а он может и веб, и мобилку, и сервер писать. Качество кадров часто никакущее, но тут уж извините, c'est la vie.
У меня есть ощущение, что всё проще: вместо «берешь одного разработчика» может оказаться ещё дешевле «берёшь нуль разработчиков» — а приложение и веб заказываешь на стороне… и в этом случае «универсализм» — нафиг не нужен.
Один разработчик пишет 100 приложений для веб для 100 компаний, развозящих еду, другой — 100 приложений для мобилки и так далее.
Производительность штука условная, в крупных финансовых сервисах, как пример, часто многое упирается в СУБД/процессинг, ну и приоритеты могут быть разные (как пример, основное время уходит на отрисовку/загрузку… модной молодёжной странички с картинками а не отработку данных в бэкенде).
«PHP React» — 177
«Java React» — 235
«C# React» — 114
«Go React» — 48
«Kotlin React» — 35 //этих исключим из подсчёта
Итого: для 574 из 1150 вакансий react нужен постольку-поскольку.
Личное наблюдение, не претендующие на истину, в крупных компаниях (в том самом кровавом) принято смотреть на опыт конкурентов(что помогает в том числе в случае провала смягчить последствия для принимающих решения), REACT зашёл во многие не так давно(что породило перекос в соотношении спрос/предложение), если вдруг "крупный игрок" уйдёт со словами "наигрались невзлетело", то на рынке одной страны всё может сильно изменится.
Ценный жизненный опыт может подсказать, что SPA это не то, на что стоит тратить своё драгоценное время, даже если за это готовы заплатить. Благо, в IT помимо фронтенда есть куча всего разного.
Я не знаю что вы понимаете по поводу скорости, качества и цены, но вот приходится "виртуально" наблюдать за страданиями одной из крупнейших компаний страны с "быстрописателями", вплоть до падения online сервисов, и неудобными вопросами большому руководству от СМИ… Ну молодёжь, главное быстро модно...
Как тут семья мешает? Люди наоборот ответственне могут становииться (ну клинические случаи не берем).
Если про поработать на износ — так даже в юные годы это мог делать очень ограниченное время и потом падение производительности в ноль… это очень кратковременное решение (как сжечь мотор на форсаже).
И чего это во фронте опыт не нужен? Может тогда бы и делали со старта нормальные решения (по опыту индустрии за цать то лет), а не завозить нужные вещи к 16 — 17 версии и думать как бы потратить меньше времени и почистить старый код.
Но пока мне кажется, что 40-летним в линкедине хрюши уже не пишут.
Пишут даже если в профиле практически ничего нет, только ФИО, возраст и место работы.
Дык к 40 годам можно из себя представлять что-то покруче, чем просто react разработчик.
Конечно если у вас в resume ничего, кроме react'а нету — то вам ничего другого и предлагать не будут. Но говорить, что это — вот всё, что может предложить «рынок»… ну как-то даже не смешно…
Спокойно могу задержаться и после работы (иногда это делаю по собственному желанию, если хочется именно в этот день закончить задачу). Могу выйти и в выходные, если надо, и уж тем более, если база упала и надо срочно разобраться в причинах.
Усталости от переработки не чувствую.
Со мной что-то не так? :))
А если серьёзно, вон тут же пишут что в некоторых западных корпорациях 40 лет опыта — обычное дело. У нас просто в целом индустрия молодовата в силу объективных причин, плюс в целом в России привычка такая — «старородящие», «старопрограммирующие» ;)
Не то чтобы в «развитых» странах такого нет, но там то ли за счет культурных особенностей, то ли за счет более давнего достижения демографического плато такие заморочки несколько менее актуальны.
Так что понятно что с Вами не так — просто чуть более продвинуты по отношению к основной массе населения. :)
В 90е же IT-индустрия в России испытала жутчайший шок: переход от ЕС-ЭВМ («цельнотянутые» системы IBM с отставанием так на 10-15 лет) к современным IBM PC (те же самые IBM — но уже без отставания).
При переходе многие «потерялись»… и многие же решили, что это — из-за возраста… ну да, конечно же дело в возрасте, а не в том, что вы пытались перейти из места «где мерилом работы считают усталость» куда-то, где требовался результат…
И переход от ЕС ЭВМ не было каким-то шоком. Когда на работе в 88-м появились первые ПК ЕС-1840 и 1841, то перешли на них просто в лет.
Другое дело, что спецов по ИТ страна тогда выпускала гораздо меньше, чем сейчас. Это нынче информационные специальности в каждом заборо-строительном, а тогда, например, Прикладную математику надо было еще поискать. Отсюда и огромный разрыв в количестве возрастных программистов и молодых.
И вот только не надо в меня начинать кидаться тапками! Ну, да, принял в свое время такое решение. :))
Второй и более неприятный вариант — вам некуда идти… и работа — это единственная радость в жизни, а это реально грустно в таком возрасте.
Не переживайте так :)) — все нормально у меня и с семьей, и с детьми, и с досугом.
И в первую очередь в своем посте я имел в виду, что переработка в 55 — вполне реальна. Работа по 9 часов в день (если надо) — проблем не составляет.
Да, кстати, я вернулся в программирование в 42, после 15-летнего перерыва.
И да, после того как я перешел работать программистом пхп с работы в ИТ банка на всех работах мне тупо напрямую запрещали работать больше 8 часов в день, кроме как по отдельной и очень рпедкой просьбе. В отличие от ИТ банка — где в порядке веще когда какаято девка, решит за 5 минут до конца рабочего дня прийти к тебе с какойто своей проблемой которую ну вот прямо счаз решать надо, при этом проблема возникла еще с утра и она не нашла за целый день времени ее решить в рабочеее время… ну или вдруг решат что обновление на По надо прямо сегодня неожиданно поставить, потому что регулятору в голову ударило, а руководство решение приняло к концу рабочего дня дало указание что делать и свалило домой…
Не вижу смысла Вас переубеждать.
По мне, так без разницы сколько лет опыта у React-разработчика 5 или 15.
Ваша проблема в непонимании того, что «Х лет опыта разработки» != «Х лет опыта работы с фреймворком Х». Поэтому на рынке дофига «программистов на реакте» и мало «программистов».
Фреймворк и даже язык не принципиален. Нормальный синьор легко переключится.
А за синьорские позиции ещё надо будет попихаться на рынке условному 45 летнему с условным 35 летним. И тут не думаю, что у 45 летнего будет преимущество.
И тут не думаю, что у 45 летнего будет преимущество.А тут преимущество будет не у того, кто старше, а у того, что лучше умеет работать.
А это, как бы, от возрастом напрямую не зависит. Но если и 35-летний и 45-летний баклуши не били, то у 45-летнего будет преимущество.
Только на проекте обычно нужен программист на реакте
Нет, нормальным компаниям, прежде всего, нужен квалифицированный программист. Именно поэтому они в вакансиях не пишут обязательное требование знания конкретного фреймворка, либо пишут что-то вроде «требуется опыт с любым современным MVC фреймворком».
который сразу же начнёт задачи закрывать.
Смешно.
А за синьорские позиции ещё надо будет попихаться на рынке условному 45 летнему с условным 35 летним. И тут не думаю, что у 45 летнего будет преимущество.
Если речь о возрасте, то преимущества не будет. Как и недостатка. Нормальные люди на собеседовании навыки и квалификацию оценивают.
Нет, нормальным компаниям, прежде всего, нужен квалифицированный программист.
Вдолгую — да. Однако при прочих равных возьмут того, кто уже программировал на Реакте, а не того, у кого есть опыт только на первом Ангуляре или каком-нибудь ExtJS. Первый вольётся в работу быстро, второму ещё какое-то время предстоит вникать в тонкости фреймворка. Это не для всех технологий справедливо, не думаю что можно найти много программистов с опытом работы на Flutter например, тут в любом случае нужно проходить период обучения.
прочих равных возьмут того, кто уже программировал на РеактеПрочих равных не бывает. Сейчас у разработчиков настолько различные опыт и навыки, что найти двух разработчиков, которые бы различались только знанием 1-2 фреймворков, практически нереально.
Первый вольётся в работу быстро, второму ещё какое-то время предстоит вникать в тонкости фреймворкаЭто так работает только в ну очень маленьких и стандартных проектах, либо проектах в нулевой фазе. Во всех остальных случаях время вникания в фреймворк — это о-малое от времени вникания в сам проект.
А не синьор без опыта в конкретном фреймворке, который хочет 300кк в секунд, а потом ещё неделю будет тупить.
Уже два раза менял работу с приличным повышением в деньгах и уровне ответственности, один раз без опыта даже не в конкретном фреймворке, а в конкретном языке программирования.
Программистам как бы делают комплимент, ставя их на одну доску с лётчиками-испытателями и космонавтами. Комплимент сомнительный.
Программистам комплиментов не надо. А то, что для многих они на одной доске и с лётчиками-испытателями и космонавтами, это справедливо. Если говорить про возраст, то посмотрите на возраст тех же космонавтов в США, например.
Главное — развиваться, не бояться нового и любить своё дело.
Здесь не поспоришь. И это не зависит от возраста. Порой молодых хрен заставишь открыть глаза и посмотреть пошире. Вообще когда тебе нужен Специалист смотреть на его возраст это бред. Сам я программирую с 1971 года.
Начинал с М-220, а сейчас что бог на душу пошлет
По паспорту, мне 38. Ощущаю себя на 25.
По паспорту мне 66. Ощущаю себя на 18
Совершенно никаких проблем с тем чтобы продолжать дальше. Здоровье? Ну да, если за ним не следить, или подрывать — то и к 40 конечно могут быть проблемы.
Все что нужно — это стимул. Во многом он лежит как раз в области обучения, потому что узнавать что-то новое — это тривиально интересно. А нового в нашей области хватит на сто лет.
А правильно составленное резюме — это вовсе не собеседование.
А на собеседование вообще всем пофиг на возраст. Там смотрят на тех знания и опыт работы.
Казалось, что в большинстве именитых IT-компаний именно такой подход. И главное через HR проскочить тем или иным образом, т.к. decision-makers всегда другие люди, не HR.
Удивило, что сотрудники Яндекс в принципе уделяют внимание вопросам возраста и даже пишут статьи об этом на Хабре.
1. «Технических» проблем с освоением нового пока ещё нет. Наоборот, опыт и профессиональная интуиция позволяют зачастую осваивать новые вещи быстрее молодежи. Потому что сразу понимаешь, как оно внутри устроено, понимаешь, что и зачем ты делаешь, а не просто заучиваешь последовательность действий.
2. Есть обратная сторона медали у всего этого. Многое стало тупо не интересно. Встречаясь с новым фреймворком, ощущаешь, что это стопятидесятое повторение уже пройденного, те же яйца, только в профиль. И соответственно, возникает не интерес к нему, а всякие мысли вроде «горшочек, не вари», «астанавитесь» и т.д.
3. Очень часто ловишь себя на мысли, что трава в молодости была зеленее, инструменты качественнее и продуктивнее. Если пытаешься глубже анализировать, чтобы эту мысль прогнать, становится только хуже, т.к. анализ показывает, что так оно и есть.
Но, повторюсь, это мой индивидуальный случай. У вас, господа стариканы, возможно, будет иначе.
Тот же возраст, с первыми двумя пунктами согласен, с третьим не очень (по крайней мере, в моем уютненьком фронтенде).
Как-то раз мне понадобилось открыть свой же старый консольный C++ проект, не тронутый последние лет 5. VS 2017 крякнула и сказала, что в целом она так можент, но надо пару минут докачать мелкие утилиты и ринулась тянуть гигабайты SDK из инета.
Тем временем внезапно нахлынула ностальгия и я озорства ради скачал на ~250 мегабайт VS 6.0. После 20 минут адаптаций и привыкания заново к интерфейсу VS98, утилита скомпилилась и запустилась. Кое-что пришлось отключить дефайнами ради совместимости с C++98, STL из коробки откровенно сомнительный, статическая линковка ругалась непонятным словами, хотя с /MD все было ок. OpenMP в принципе не заработала. Зато, ведомый тем же озорным бесом, я нашел и подключил libctiny вместо CRT и откомпилированная утилита стала занимать менее 10кб.
Ощущения от IDE в целом смешанные — оно работает, но все весьма убогое, рефакторинга нет никакого, только доисторический Code Completion. Консольный проект или что-то «из 2000х» так делать в целом можно, но что-то серьезнее я бы не взялся так разрабатывать.
В итоге так да: трава была зеленее, все было меньше, быстрее и проще; но я в то время не хотел бы вернуться.
P.S. А тем временем VS 2017 все еще продолжала «настраивать важные компоненты» и исправно отъедала 100% одного из ядер процессора. Хорошо хоть не ругалась на нерадивого пользователя, который осмелился параллельно что-то еще запускать.
И я не уверен, что лучше. Вот VS 2017 ощутимо подлагивает, когда ворочает проект с тремя сотнями файлов, это на современной машине с SSD и 16 гб ОЗУ. Delphi 7, например, на машине раз в двадцать слабее никогда не лагала с подобными проектами. Фичами VS 2017, которых нет в Delphi, я пользуюсь эпизодически, и почти все они заменяемы, только с меньшей эффективностью. «Подправить код в рантайме» компенсируется мгновенной перекомпиляцией в Delphi, рефакторинг можно и вручную «найти/заменить» прошлёпать, когда надо. А вот быстродействие IDE — это вещь, которая влияет на вашу продуктивность непрерывно, каждую минуту.
VS 202X предупреждает — Вы ввели строку кода, которую встроенный AI менеджер оценил как потенциально неоптимальную. Ваш код отправлен на аудит, сходите попейте чайку.
С одной стороны это логично и правильно. С точки зрения продуктивности, как Вы правильно подметили, будет не столь однозначно…
А если серьёзно, тут скорее был стёб на тему того что чрезмерно умный компьютер с ещё большими тормозами как следствие чьих-то благих намерений будет очень уж сильно работе мешать, прерывая процесс своими (зачастую неуместными) замечаниями.
Современные инструменты, в частности упомянутый Вами, очень хороши и полезны — когда применяются вовремя и по делу, а не выносят мозг постоянным тормозом (см. последнюю фразу у DrPass, двумя комментами выше). :)
Попробуйте сами сравнить в ежедневной работе BCB и VS 2017. Попробуйте снова окунуться в волшебный мир Borland VCL.
А вот быстродействие IDE — это вещь, которая влияет на вашу продуктивность непрерывно, каждую минуту.
Имхо, скорость набора текста и скорость создания программы не очень коррелируют. Да, современные IDE жрут ресурсов поболее, чем 3D игры. Да, под них надо собирать топовые компьютеры с i7. Но пути назад уже нет — мы слишком подсели на иглу новых технологий. Вернуться в мир без рефакторинга, массовых замен, Code Lookup — это как сейчас пересесть на дисковый телефон со смартфона. В целом можно, но зачем?
BCB на ней простейшее приложение уровня хелловорлда билдил чуть больше минуты. VS 5.0 работала неплохо, но MFC по сравнению с VCL тогда казались чем-то ископаемым и безнадежно отсталым.
Как-то ради интереса попробовал свежевышедшую Delphi 3. И бац! Работает без тормозов, запускается быстро, собирает быстро. И куча плюшек, которых нет в BCB — навигация по коду, темплейты, автодополнение, масса фич отладчика и т.д. Ну только язык Паскаль вместо С++. Я тогда подумал, да ну и фиг с ним, язык как язык :)
И это, минуточку, 1997-й год. Так вот, 20 лет назад на десктопе был отнюдь не каменный век. Практически все плюшки современных инструментов уже были доступны. Да даже рефакторинг можно, только с помощью сторонних тулзов.
Я так на C# с VS + Resharper одним махом пересел на чистый MonoDevelop. Поначалу казалось, что работаю в перчатках сварщика, потом понемногу привык. Но все же воспоминания о былых инструментах и реальность не всегда коррелируют. Попробуйте, ради эксперимента, освежите опыт, примерьте на теперешние задачи.
Попробуйте, ради эксперимента, освежите опыт, примерьте на теперешние задачи.Я вот периодически премеряю современные тулы к современным же задачам… и не понимаю — какие они дают преимущества. Ну вот беру я наш проект, 35 миллионов строк в 200 тысячах файлов (я про C++ часть), засовываю в Visual Studio или Code Lion… что? Не лезет? А как же я рефакторинг буду делать, если оно требует базу для всего проекта создать — но не может?
Все эти чудные «средства» работают чудно на маленьких проектах, где они, по большому счёту и не нужны (можно продумать и всё заранее «правильно» сделать). На больших — разницы особой нету.
У нас есть люди, которые используют и CLion и Eclipse (есть специальные инструкции и тулзы, чтобы загрузить туда не весь проект, а маленький кусочек) и вот не видно, чтобы они были как-то заметно производительнее людей использующих Sublime или Vim.
и вот не видно, чтобы они были как-то заметно производительнее людей использующих Sublime или Vim.Они не должны быть прям производительней. Хотя современный рефакторинг будет быстрее и надёжнее в IDE. Они должны делать меньше ошибок, в том числе по невнимательности. И современные IDE обеспечивают это всеми силами. Они дают огромные возможности по быстрой навигации по проекту, подсказам, интегрируют все множество инструментов в «одно окно». Банальная маленькая фича — проверка корректности английского языка в словах вида ThirdToughThoroughbredFeature… или third_though_… ну вы поняли. В моей IDE это работает из коробки. А тот же статический анализ, который работает и сразу подмечает всё, что ему не нравится в открытом файле…
Если есть привычка к продвинутым текстовым редакторам с плагинами, то можно просто по первой незаметить, что же даёт IDE, кроме тормозов от индексации проекта.
Но стоит поработать в ней какое-то время, на большом проекте, да с горячими клавишами и детским любопытством и вопросом, а что она ещё умеет?.. То как потом может захотеть уйти с IDE мне относительно непонятно, хотя я и могу привести аргументы к этому.
Хотя современный рефакторинг будет быстрее и надёжнее в IDE.Вот не видно почему-то этого. Вернее можно сделать сколько угодно бессмысленных рефакторингов (типа перенести поле из одного класса в другой класс — если они оба видны во всех местах, где это нужно). Если же рефакторинг осмысленный (перенести поле из класса A в класс B, передать в нужное место «недостающий» класс B, убрать более не нужный A) — то там всё равно кнопок придётся порядком нажимать.
Банальная маленькая фича — проверка корректности английского языка в словах вида ThirdToughThoroughbredFeature… или third_though_… ну вы поняли. В моей IDE это работает из коробки.Да, исправоений названий переменных и английского в комментариях — от них поступает достаточно. Вот этого не отнять. Вот только… нужно ли для этого все эти гигабайты кода и тормоза? Надо будет посмотреть — я думаю и для Sublime должен быть плагин.
То как потом может захотеть уйти с IDE мне относительно непонятно, хотя я и могу привести аргументы к этому.Очень просто: поработав с IDEA несколько лет легко ушёл на Sublime при возврате с Java на C++. Так как в C++ не нужно порождать многометровые «портянки» кода на ровном месте — а больше, как оказалось, от IDEA я и не использовал активно ничего.
4. Уровень компьютерной грамотности большинства заказчиков ПО (руководителей или клиентов) ниже низкого. Из-за этого, их ТЗ выглядят как «нужно, чтобы программа делала это и то». Как именно, в каких случаях, как быстро — они не знают, список технических требований сформулировать не могут. По молодости такие проекты очень интересны — их делаешь по 2-3 раза, каждый раз уточняя и ликвидируя проблемы, возникающие при внедрении. Но к 35 годам после множества разработок уже на первых строках задачи клиента видишь, какие проблемы он огребёт в итоге. Разумеется, объясняешь, тогда либо проект сворачивают, либо тебя заворачивают. Проблема в том, что надоедает такая работа. Привлекает уже больше работать с профессионалами, которые знают, чего хотят и куда идут. А таких очень мало на пост-СССР территории.
А вот с работой — сложнее, т.к. HR во многом повторяют сценарии из того анекдота про поиск сварщика 6-го разряда, и работу приходится искать через друзей и знакомых.
насколько реально быть программистом в 35–40 лет?
Более того, есть мнение, что возраст с 40 до 55 лет для специалистов инженерных профессий самый плодотворный, поскольку накопился опыт и ничто уже не отвлекает от работы: семьёй человек обзавёлся, дети успели вырасти
И все-таки какой из двух возрастных интервалов рассматривается в статье?
И почему один возрастной интервал указывается короткий, а другой длинный?
И какое это имеет отношение к моему замечанию, что в статье нет четкого определения о каких возрастных рамках идет речь?
Отношение прямое — начальные возрастные рамки автор берёт приближённые к своему возрасту — 35-40, а возраст с 40 до 55 лет приводится как противопоставление. Т.е. автор адресует свою статью читателям (не только, а в первую очередь) 35-40 лет и обращает их внимание на то, что с 40 до 55 лет они будут ещё плодотворнее, чем сейчас и всё ещё впереди.
Это только моё понимание статьи. Есть также предположение, что автор использовал 35-40 только исходя из своего возраста и рамки в этой статье весьма условны (35+) и верхней границы нет — она будет одинаково полезна всем возрастам.
В 29 лет сменил основной язык на go с php, чтобы меньше времени тратить на изучение новых фич каждый год и больше времени посвятить поиску новых областей для работы.
Прошел пачку курсов по ML, затем потрясающий Open Data Science. Попробовал себя в ML и python. Добавил умений по обработке и визуализации данных. В ML решил не уходить, но research определенно зацепил.
В итоге 2 года назад ушел в распределенные системы и криптографию. Основной язык всё ещё go, что позволило много времени уделять непосредственно новым областям, где высокий порог вхождения.
В research, мне кажется, возраст вообще народ не замечает.
Вот прям реально ощущаю тиканье таймера. Очень напрягает. Причем понимаю, что это будет именно фильтр со стороны работодателя в первую очередь.
У меня главный вопрос был ML или что-то ещё. С ML облом вышел потому что долго расти придется с низких зарплат.
Но в вашем случае ML в медицинском стартапе выглядит вполне возможным. Пару лет назад в Сколково стартап Cobrain был готов брать с теоретическими знаниями в ML на 150-180тр. На собеседовании спрашивали про разные деревья и надо было написать код обучения модели и генерации текста, используя цепь Маркова.
У вас же должны уже быть отличные навыки обработки и визуализации данных.
Пройти курс ODS и начать кататься по собеседованиям? Или вообще открывать ИП и находить удаленную работу на зарубежного заказчика. У них ML вообще у всех горит.
Что нужно учить для ML?
Я б просто присоединился к сообществу ML ребят в России https://ods.ai/
Прошел два их курса https://mlcourse.ai/ и затем https://dlcourse.ai/. Параллельно с последним прочитал бы Goodfellow https://www.deeplearningbook.org/
На всё про всё ориентировался бы на полгода.
И параллельно ездил бы на встречи, тренировки, конференции ODS ребят. Донимал народ вопросом, есть ли у кого проект для участия.
Где-то тут точно должно стать ясно, что нравится, а что нет. А поучаствовал хоть в одном проекте, или клевом соревновании, можно и по вакансиям пойти.
Можно почитать дополнительно книги https://www.mlyearning.org/, I Heart Logs: Event Data, Stream Processing, and Data Integration и An Introduction to Statistical Learning
Если дальше захочется жести, то книга Mining of Massive Datasets и курс https://lagunita.stanford.edu/courses/course-v1:ComputerScience+MMDS+SelfPaced/about
Если будет не хватать знаний, то надо будет повторить линейную алгебру, статистику, теорию вероятностей. Что лучше для этого — это лучше профи из ODS подскажут. Я для этого прошел бесплатные курсы курсеры от МФТИ от Райгородского по комбинаторике и теории вероятностей. А затем добрал статистику https://lagunita.stanford.edu/courses/course-v1:OLI+ProbStat+Open_Jan2017/about и https://lagunita.stanford.edu/courses/OLI/StatReasoning/Open/about
И наверное главное, не бояться быстрее начать свой первый проект и не затягивать подготовку.
Насчёт недостатка знаний не переживайте. Вы же заранее не знаете требований вашей будущей работа. Достаточно совсем базовых знаний вроде курсов Райгородского, а дальше жизнь покажет, куда надо.
Если что получится или нет — напишите мне через полгодика-годик. Любопытно. Я ж в итоге с этой дороги сошел в пользу распределенных систем.
- Intro to Machine Learning — eu.udacity.com/course/intro-to-machine-learning--ud120
- Model Building and Validation — eu.udacity.com/course/model-building-and-validation--ud919
- Fundamentals of AI — eu.udacity.com/course/intro-to-artificial-intelligence--cs271
- Deep Learning by Google — eu.udacity.com/course/deep-learning--ud730
- Intro to TensorFlow — eu.udacity.com/course/intro-to-tensorflow-for-deep-learning--ud187
Все материалы интерактивные, с множеством полезных ссылок и практическими заданиями (мини-проектами)
А может всё же лучше к исходной профессии?
Всё же есть ощущение что она в ближайшие годы станет более востребованной. К тому же обратил внимание что сейчас в вакансиях на разработку стало проскакивать "профильное ВО".
Более того, учитывая низкое качество образования прграммисту всё приходится познавать на своём опыте, многие годы нужны чтобы узнать и переосмыслить, поэтому возраст это точно не минус, хотя и не обязательно плюс, хороший программист не возрастом определяется.
Разница колоссальная.
Мягко говоря, не совсем адекватно ставить в один ряд возраст 35 лет и 45 лет или людей пенсионного возраста.Это, похоже, точка зрения 25-летнего. Я думаю с точки зрения 70-летних разницы между 35 годами и 45 годами вообще почти что нет.
Разница колоссальная.
Просто подумайте — сильно для вас отличаются 4-летние и 5-ление дети? А между тем такая же огромная, как между 35 годами и 45 годами (объективно говоря).
это то что их легче припахать к дополнительной неоплачиваемой работе.
Старого волка провести гораздо сложнее.
Мне 33. Я руководитель, но в тоже время и программист — не хочу бросать это дело, т.к. оно реально — мое. Мое мнение относительно программистов старшего возраста — в них гораздо больше плюсов, чем минусов — опыт, фундаментальные знания, шкафы со скелетами, бесконечные списки найденных хитрых багов, и т.д. Есть только один нюанс, который я к сожалению вижу и часто наблюдаю — весь этот опыт и багаж знаний приводит к тому, что, простите, «мозг давит». Т.е. находясь в проекте с молодыми ребятами, опытный программист «десять раз подумает, а потом напишет», что конечно хорошо, но с виду кажется «тормознутостью», что и приводит к таким вот рассуждениям и статьям. Зачастую результат нужен «вчера», а это значит надо писать быстро без лишних раздумий, а раз быстро то неизбежны ошибки, а раз будут ошибки — значит «ах он старый негодяй»…
Идеальное место для опытных старше-возрастных программистов — стартап, где есть время, возможности и такие же как ты опытные товарищи, либо большой серьезные проект, где компетенция ценится больше, чем прочее.
Сейчас с "молодыми" товарищами пробую подход "круто! Вы так быстро написали! Давайте я пару тест кейсов подкину". И спокойно возвращаемся к правке критичных багов в задачке.
Вот мои наблюдения пока говорят, что опытная команда движется быстрее, как правило.
Со временем приходит осознание, что, при этом, у них находится время на всё необходимое — и ещё остаётся. А молодые всё делают «шустро», но нифига не успевают.
В IT — то же самое, на самом деле: в команде из опытных специалистов на порялок меньше «бурления», однако вся задача в целом решается быстрее.
работаю в разработке с 19 лет.
С 30 работаю архитектором разной степени ведущести :) Немного манагерил и как-то даже было что-то типа своего бизнеса. Но программировать люблю и стараюсь на работе иногда брать задачи по разработке. Плюс дополнительные проекты как pet так и коммерческие.
Тезис про «нервность» работы разработчика — могу сказать, что работа архитектора более нервная и требует изучения массы новых вещей, причем на верхнем уровне — так чтобы ухватить суть.
Например, в условиях недостаточности знаний, умений и неопределенности текущих и будущих требований процесс принятия решений очень сильно «сжигает» нервную энергию.
Честно говоря, бывают такие тяжелые митинги, где надо принять решения на несколько (а иногда и десятки) человеко-лет разработки, что после них рабочий день заканчивается — сил просто нет.
И когда нужно просто программировать я радуюсь и воспринимаю это как отдых :)
Хотя в разработке есть своя заморочка с тем что делаешь как в документации написано а оно не работает — тут и начинаются переработки и нервы.
По поводу когнитивных способностей и умению учится — за поледние 5лет (то есть после 35) я изучил следующие технологии как разработчик:
1. Мобильную разработку на Xamarin — приложение в проде и даже работает.
2. Node.JS и JavaScript + немного поковырялся с Linux и баш-скриптами. И совсем немного Angular. Все в проде.
3. перешел с .NET Framework на .NET Core. Теперь это основная платформа.
4. Много разрабатывал для облака, изучал и сдал экзамены Azure Developer + Azure Architect. Облака меняются очень стремительно — учится надо постоянно.
5. Искусственный интелект — теория (пришлось вспомнить матан и линейку) + небольшой PoC на нейронке на Python, который сейчас изучаю.
Но вот работать по 60-80 часов в неделю уже не готов — это реально дело молодых. Я на этом деле получил невролгию и сердечные приступы — больше не хочется.
Есть правда один момент — для сохранения когнитивных способностей пришлось бросить пить :)
Есть правда один момент — для сохранения когнитивных способностей пришлось бросить пить :)
Мне мой бух недавно сказал, что по ее наблюдениям многие программисты адски злоупотребляют алкоголем))) Интересно проводились ли на эту тему исследования?
Разработка ПО — это планомерное и последовательное выполнение определенного числа операций (например, при лечение зуба их 20-30), а при разработке софта их порядка 1000-10000 тысяч (зависит от сложности задачи). И этот весь процесс растягивается на недели-месяцы. И все это время мозг продолжает думать, как это лучше сделать и прочее. Это просто приводит к дикому стрессу и выгоранию.
Как отключить мозг? Выпить так, что ни о чем, кроме каких-то «простых» вещах он не думал.
Добавляем сюда, что программисты зарабатывают неплохо, поэтому они могут позволить себе не какой-то шлак, а вполне качественный алкоголь — получаем ситуацию, что пьют, забывают, и голова не особо болит (не мешает работать).
__
Это кстати очень сильно отличается от простых работяг, которые после работы пришли домой и перестали думать о работе.
Это кстати очень сильно отличается от простых работяг, которые после работы пришли домой и перестали думать о работе.
Я после школы пару месяцев работал разно-работягой на картонной фабрике. Я там прямо на работе о работе не думал. За пару дней мышечная память все действия запоминает и все, дальше можно о чем угодно мечтать весь день.
Я вырос в сибирской деревне в 90е годы и не могу назвать термином «злоупотребляют», то как пьют программисты :)
Жалкие 3-4 пива и особо смелые еще и пару шотов вискариков…
Внизу уже написали что накопленная мозговая усталость и невозможность перестать думать, отлично вытесняется спортом (можно экстремальным) и я бы еще добавил гамушки — погонял фрагов полчаса и все ок. так что пить необязательно.
Хотя скалка иногда бывает в опасной близости :)
Раньше позволял себе раз в год пройти чего-нибудь короткое типа думака.
Так игры с детьми один из лучших способов...
За последние 5 лет перешел с .NET Framework на .NET Core как основную платформу, освоил NoSQL, кое-что из BigData и ML. Многое разрабатываем в облаках, недавно сдал экзамены.
Не пил никогда :)
С другой стороны один из наших архитекторов — девушка лет 20ти, только-только после института. Во многом получше меня будет. Так что не только в годах богатство.
Нам говорят: «Знания программиста постоянно устаревают, и к 30–35 годам то, что ты учил в вузе, уже может быть никому не нужно, а переучиваться поздно»
Что за деза? Вы посмотрите на ВУЗ-овскую систему подготовки. Изучение на языке Паскаль ??? Это преподам уже переучиваться поздно, и программу образования менять
— либо вы наивный первокурсник
— либо вы циничный продавец курсов "Вайти в АйТи изучыв за адын месац Жава!"
— либо вы выпускник курсов "Вайти в АйТи изучыв за адын месац Жава!"
Потому, что есть вещи важнее знания новомодного языка с новомодным фреймом.
И для их изучения — язык принципиально не важен.
От того, что ЭТО:
изучали на Паксале, вместо новмодного языка — содержимое книги не станет устаревшим и не нужным.
И содержимое ЭТОГО:
— тоже не станет.
К вашему списку можно приплюсовать Библию, ветхий завет, почти никто не читал зато содержание каждый второй "знает" :)
Я вот не фанат интерпретируемых языков с динамической типизацией, но если надо быстро набросать утилитку, которую не надо будет веками поддерживать, то почему бы и не воспользоваться одним из этих товарищей?
Тут, конечно, можно это решить старательно подбирая место работы под любимый язык. Однако не всегда работа — это только про язык и набивание кода. А иногда и на работе всё может неожиданно поменяться, и проект, и язык.
P.S. Но как разработчик, я вас прекрасно понимаю. Наверное у большинства из нас есть любимый и избегаемый язык.
Я пишу на C# более 4 лет. И то периодически перечитываю справочник по языку и нахожу что-то новое для себя, не отмеченное мной раньше.
Менять язык может и не быть проблемой, но определенно это не говорит о том, что вы хорошо знаете тот или иной язык.
Специалистов освоивших javascript за 21 день на рынке дофига, только почему то почти все из них дальше базовых вещей ничего и не знают.
Но при этом первоначальное обучение можно проходить на железе 60х годов легко — там ещё нет «моторной памяти» и нужно основные принципы усвоить.
То же самое и с программированием: базовые навыки можно на чём угодно изучать. Я лично знаю человека, который, на момент интервьюирования в Google не знал ни Java, ни C++, ни Python — но тем, не менее, прошёл интервью, получил offer и успешно работает.
Например, я в основном пишу на Java лет 5, а Python я знаю на уровне «за 24 часа», но для всяких мелких скриптов для автоматизации рутины и генерации каких-нибудь файлов, отчетов, статистики я выбиру Python и решу задачу быстрее и проще. frontend я тоже на Java писать не буду.
После того, как я попробовал n-язков ещё в ВУЗе, начать писать на n+1 не видится большой проблемой. Вернуться к одному из n, углубиться в него и перейти в сферу с его использованием от уютной Java тоже. Как писал Макконнелл: «Программируйте с использованием языка, а не на языке.»
Тоже зацепила эта фраза и тоже пишу на шарпе. Пару раз думал поучить f# и go, но приходил к мнению, что лучше потратить время на более глубокое изучение родного c#, потому что он всё-таки очень и очень ёмкий и просто выучить синтаксис, как с каким-нибудь жс тут не прокатит.
Был разработан в 1964 году профессорами Дартмутского колледжа Томасом Курцем и Джоном Кемени.
BASIC — chernykh.net/content/view/181/191
Популярность получил после кражи. В принципе это первый массовый язык, на котором можно было писать программы в привычном теперь понимание.
PASCAL — Первая публикация Вирта о языке датирована 1970 годом.
Понравился преподавателям ЯВУ. Стал базой для объяснения структурного-программирования. Так как был современнее(совершение) бейсика и фортрана,
но гораздо проще для первоначального обучения чем Си.
Никаких классов, адских шаблонов, исключений, декораторов и т.д.
Это смотря насколько глубоко копать. В Паскале уже 30 лет есть классы, из них 25 лет есть два разных вида классов. Те же лет 25 как есть исключения. Ещё там есть четыре разных вида строк, не особо совместимых между собой, но поддерживаемых для того, чтобы тянуть легаси. Есть дженерики, есть класс-хелперы и т.д. В общем, всё для взрыва молодого неподготовленного мозга в наличии. Если, конечно, вывалить это сразу.
Почему Москва — город не для семьи?
Сколько возможностей для образования, времяпровождения и здравоохранения для детей нет в малых городах
(Вова, 33 года, двое детей, переехал в Мск 3 года назад)
Ну вбейте в гугл "робототехника москва". Музыкальные школы есть в каждом районе, а развивающих центров, где есть английский, еще больше.
Есть и такие мега центры http://meridiancentre.ru/studio/, можно заводить ребенка на целый день туда :)
Всегда считал, что наоборот — в маленьких городах сложней найти ребёнку занятие.
Лично сам с семьёй в Питере уже 10 лет. Снимали, потом в коммуналке пожили, сейчас в своей квартире. Возвращаться на родину нет никакого желания, и в основном как раз из-за детей, из-за того, что могу дать им тут.
С другой стороны, если в более-менее любом возрасте человек хочет и готов изучать новое — это уже хороший задел, т.к. если изучить и применить что-то новое и узкоспециализированное (где пока конкуренции не много), будут с руками и ногами отрывать — банально из-за отсутствия других вариантов)
В общем, тут скорее обычная экономика. Баланс спроса и предложения. Если предложения много, то (как тут выше правильно пишут) при прочих равных организации может быть выгоднее взять менее обремененного обязательствами и делами сотрудника (на которого не давит ипотека и не отвлекают дети и пр).
Обратная сторона медали — сложнее долго удержать на месте, поэтому специфика компании/проекта диктует не режим «бегом, бегом, всё надо вчера» а более долгосрочную и стабильную деятельность, то (опять же, чисто экономически) может быть выгоднее отдать приоритет сотруднику с ипотекой и пр, скорее всего дольше проработает.
А если предложения мало, а спрос есть — тут уже рынок разработчика. Проблема с этим больше такая что люди все в своей колее работают, и хорошо если изучают новинки в рамках используемых технологий. А на изучение чего-то принципиально нового нет времени/сил/желания — ну тогда сорри, если не можете чего-то уникального предложить, то и конкурировать придётся с более широким кругом коллег.
Пример из жизни: я давно хотел определённые аспекты блокчейна изучить, смарт контракты интриговали для некоторых околоюридических применений. Времени/сил не было. И вот однажды разозлился на себя и добрался-таки (несмотря на «ну некогда/не могу себе позволить») поизучать, параллельно написав об этом публично. И спустя буквально месяц-другой, когда я ещё погружался только в тему, мне прилетел запрос помочь проекту схожему… с дебагом.
С дебагом!? Я же только начал разбираться?! К счастью, не отказал людям, пошел посмотрел. В итоге смог разобраться и всё им наладить, и сам в реальном проекте сразу намного больше всего понял. Тут же следом ещё один проект принесли, а потом ещё один. Ну и хобби получилось. И всё это из-за того что поле там было довольно узкое и специфичное, не слишком много народу конкретно таким вопросом занималось, а людям было очень нужно.
Поэтому я по сути с опытом в данной теме в пару месяцев :) был нарасхват. Я это конечно прямо говорил, мол общий опыт большой, но данной темой только-только начал заниматься. И обязательно — если за стадию концепта пойдёт — потом и аудит нужен будет профессиональный и пр.
Но суть в том что всем было абсолютно плевать на мой возраст, я мог быть хоть трижды на пенсии и с любой группой инвалидности и неизвестного пола и моральных убеждений (насчет последнего — увы).
У людей/компаний проблема — им нужно решение. Если можете решение предложить, которое актуальнее альтернативных (за счёт цены/скорости/стабильности/гарантий/… — смотря что компании нужнее; и это если альтернативы вообще есть), отказаться от Вашего предложения будет сложно. :)
Надеюсь что такой небольшой «лайфхак» поможет коллегам, которые переживают что из-за возраста/пола/чего угодно ещё не могут найти себе новый проект/работу/… Удачи, друзья!
Если говорить про «линейных программистов общего назначения» уровня «копать отсюда и до обеда на том фреймворке что сейчас в ходу», то здесь преимущества молодых очевидны, а глубокий многолетний опыт и познания не требуются. Это достаточно механистическая работа, где ценится способность работать много и за небольшой прайс, а когда человек выгорает, его заменяют новым винтиком. Сравнения с хирургами тут неуместны, скорее сравнивать надо с разнорабочими. Надеяться, что удастся до старости эффективно проработать в таком режиме — так себе перспектива.
Однако, всегда можно развиваться в разных направлениях, совсем не обязательно в pure IT-менеджмент — хотя, так или иначе, мы все должны развиваться в коммуникации и организации межчеловеческих взаимодействий, если хотим эффективно работать в командах.
К примеру, можно получить глубокие знания в какой-то отдельной предметной области, и стать там востребованным экспертом в силу малой конкуренции. Кстати, вот тут сравнения с врачами или юристами более уместны — у них как раз ценятся глубокие познания в отдельных предметных областях, которые нарабатываются исключительно лишь большим опытом. На мой взгляд, перспективнее всего изучить какую-то предметную область не обязательно связанную с программированием как таковым. Потому что специалистов в какой-то отдельной дисциплине зачастую хватает, а вот междисциплинарных специалистов найти очень трудно.
Можно также развиваться «вширь и ввысь» и вырасти до уровня системного архитектора, обладающего в силу обширного опыта видением того, как нужно организовывать крупные системы, состоящие из разнородных движущихся частей.
К сожалению, далеко не каждая наёмная работа может дать вам возможности развиваться в вышеупомянутых направлениях. Нередко чтобы добиться того, чего вы хотите (если вы действительно этого хотите), нужно привнести в свою жизнь элемент предпринимательства и риска, пожертвовав стабильной зарплатой «здесь и сейчас» и корпоративной карьерной лестницей, ради будущих перспектив. То есть, вложить свое время в саморазвитие — по мере которого будут открываться новые, неочевидные ранее, возможности.
Спасибо, мама, что на 10 лет меня отодвинула от IT. *сарказм*
В итоге пришлось пройти путь через строительство и нефтянку, чтобы вернуться к тому, кем хотел быть — разработчиком. Стал им в 28 и ни капли не жалею.
Если специалист 40+ возраста (за спиной, скорее всего 12-20 лет опыта в IT) не смог себя продать как высококвалифицированного, то или:
1) Проблема soft-skills, что он не мог доказать это работодателю
2) Вопрос «оптимизации» или культуры у работодателя — значит надо было поискать другого работодателя.
3) Совсем уж закостенелый человек, который не желал двигаться вперед с технологиями и продолжал говорить, что за Фортраном будущее…
Сомневаюсь, что его финансовый запрос отличался от запроса 30-летнего сеньора.
Старикам здесь не место? Программируем после тридцати пяти