с какого возраста можно работать программистом
Привет, Алиса!
Ребята заболели программированием еще в 6-7 классе: началось все, как обычно, с компьютерной игры.
Обучение для всех детей бесплатное. За два года ребята становятся настоящими программистами, «работают» на языке Python, фрилансят, создают собственные проекты и зарабатывают в 16-17 лет порой даже больше родителей.
Сегодня Леша учится в 11 классе, работает на фрилансе, получая до 20 тысяч рублей за проект. В основном это веб-разработка: сайты и интернет-страницы. Заработанные деньги не тратит.
На вопрос про отдых парень улыбается и спокойно отвечает: «Есть 3 часа в неделю на тренажерный зал и, конечно, бывают дни, когда просто разрешаю себе не работать. Не считая ЕГЭ, почти все как у взрослых».
«Мы стараемся брать мотивированных ребят. С ними классно работать»,- говорит опытный программист и преподаватель Яндекс.Лицея в Пензе Артем Рудаковский. Его стиль преподавания отличается от школьного кардинально: никто никого не заставляет, все только на интересе к «айти» и мотивации. У преподавателя и учеников есть даже общий чат во «ВКонтакте», где можно обсудить задачи и попросить помощи.
*Это расширенная версия текста, опубликованного в номере «РГ»
Какой лучший возраст для программиста?
В массовом сознании давно укоренилось, что программирование — это работа для молодых. Честно говоря, я сам так считал до совсем недавнего времени. Исходил я, при этом, из предположения, что молодые люди легче учатся, быстрее и лучше думают и, поэтому, в большей степени подходят для решения алгоритмических задач. Мне казалось, что с возрастом мозг работает хуже, память ухудшается, нейроны вроде не восстанавливаются, а способность к быстрому обучению падает. Правда, меня смущало то, что на своем собственном опыте я убеждался как раз в обратном: сейчас, в 42 года, я определенно думаю лучше, чем в 20 лет.
Недавно прочтенная статья заставила меня кардинально изменить взгляды.
Я имею ввиду вот эту статью. Самая краткая формулировка вывода из описанных в ней научных исследований состоит в очевидном факте: с годами мы становимся умнее. Если чуть длиннее, то оказалось, что количество нервных клеток в мозге с годами только увеличивается, также растет концентрация миелина, отвечающего за скорость передачи импульсов в мозгу. Поэтому с возрастом мы лучше решаем задачи, меньше ошибаемся и, в целом, лучше думаем. Пик эффективности работы мозга попадает на период между 50 и 60 годами.
На практике это означает, что программист в возрасте 50 лет и выше наиболее эффективен. Он, возможно, делает все чуть медленнее (потому что меньше выделяется допамина, приводящего к импульсивным поступкам), но принятые решения лучше обдуманы, в них меньше ошибок. К хорошей работе мозга добавляется еще и опыт.
Таким образом, лучше брать на работу программистами опытных людей в предпенсионном возрасте? Я думаю, что все же остается одна важная проблема: в этом возрасте работа уже не кажется столь увлекательной, меньше тянет учиться новому, и тяжелее переносить любые перегрузки на работе. Но если человек сохранил хорошую физическую форму, имеет активную жизненную позицию, и не позволял мозгу облениться, то он, как программист, имеет массу преимуществ перед молодым коллегой. К тому же структура труда программистов, по мере созревания этой профессии, меняется. Если в начале от программиста требовалось творческое решение уникальных задач, то сейчас требуется умение качественно применять уже известные методы и подходы. То есть работа программистов все больше похожа на работу инженеров (собственно, в ABBYY мы часто называем программистов инженерами), для которой важны именно опыт и знания.
Из сказанного следует еще один вывод. Дело в том, что профессия программиста предполагает гиподинамию. А она, в свою очередь, гарантирует проблемы к 40-50 годам, которые могут существенно повлиять на эффективность работы мозга и способность быть продуктивным. Да и вообще, какая активная жизненная позиция может быть у человека, который всю жизнь просидел за компьютером? Поэтому, похоже, людям этой профессии надо искать себе регулярное хобби (чтобы не два раза в год во время отпуска, а хотя бы раз в неделю), связанное с движением. Я вот, например, люблю бегать или приходить на работу пешком через весь город. Многие наши сотрудники ездят на работу на велосипеде (у нас для них есть даже специальная парковка). Многие ходят в фитнесс-клубы либо на занятия в спортзале прямо в компании. А как вы решаете эту проблему?
Старикам здесь не место? Программируем после тридцати пяти
Привет, меня зовут Дмитрий, мне 35 лет. Раньше я часто слышал, что программист — профессия для молодых. Тем не менее прошлым летом я получил приглашение в Яндекс и перебрался работать в Москву.
В этой статье я хотел бы затронуть вопрос, который не раз обсуждался на Хабре: насколько реально быть программистом после 35–40 лет? Не ведущим архитектором, не тимлидом, не менеджером проекта, а именно программистом? Я не согласен с мнением, что программирование — это удел молодых. Считаю его вредным и сейчас расскажу почему.
Существует несколько доводов, на которые опирается этот миф. Давайте-ка их подробно рассмотрим.
Объяснение 1. Требует нервов и реакции
Нам говорят: «Программирование требует энергии, которая присуща только молодым. В зрелом возрасте на это уже просто не хватает сил».
Программистам как бы делают комплимент, ставя их на одну доску с лётчиками-испытателями и космонавтами. Кстати, я не случайно завёл речь именно о лётчиках. Дамы и господа, посмотрите на этого человека:
Это — знаменитый Чесли Салленбергер, который в 58 лет стал героем США, посадив самолёт на Гудзон.
Справедливости ради скажу: в программировании действительно есть сферы, где после сорока сложно, но не потому, что всё слишком заумно и тяжело, а в силу специфики конкретно этих сфер. Например, игровая индустрия, где зачастую бывают кранчи: люди трудятся более 100 часов в неделю. Если в молодости такое ещё можно потянуть, то в 40 лет здоровье уже вряд ли позволит. Однако здесь вопрос скорее к компаниям, которые практикуют кранчи. Программист и в 40 лет может писать игры, просто не в таком изматывающем и вредном режиме.
Объяснение 2. Учиться, учиться и еще ещё раз учиться
Нам говорят: «Знания программиста постоянно устаревают, и к 30–35 годам то, что ты учил в вузе, уже может быть никому не нужно, а переучиваться поздно».
Опять же — вроде бы лестно звучит. Профессия такая интеллектуальная и элитарная, что ты постоянно должен быть на острие прогресса.
Но есть и другие профессии, где надо непрерывно учиться. А 40-летних оттуда никто не гонит.
Вспомним юристов. Законодательство постоянно устаревает. Это норма. Более того, у них ситуация даже более жёсткая, чем у программистов. С выходом стандарта C++20 никто не уволит тех, кто писал на предыдущем стандарте, не потребует от них немедленно переучиваться. А у юриста выбора нет: с выходом новой редакции Гражданского кодекса РФ он обязан её прочесть, запомнить и использовать.
То же самое можно сказать о врачах: они вынуждены постоянно обновлять знания. Чтобы было понятно, до какого возраста должен учиться, к примеру, хирург, прочитаем мнение главного кардиохирурга страны Лео Бокерии:
В отношении врачей так было во все времена: люди хотят лечиться у опытного врача. Кардиохирургов, скажем, в Америке к столу допускают только в 37 лет, а состоится он к 40 годам как самостоятельный хирург, это ещё большой вопрос. Это касается врачей, учёных, преподавателей, людей интеллектуального труда, а также рабочих высшей квалификации.
Обратите внимание на «людей интеллектуального труда» — программисты же к ним относятся, я надеюсь? А значит, опыт здесь так же важен, как и в любой другой интеллектуальной отрасли.
Насколько человек вообще может осваивать новое в зрелом возрасте? Я не педагог, не психолог и не нейробиолог, чтобы квалифицированно ответить на этот вопрос. Однако, как показывает практика, такое вполне возможно. Масса людей находится на острие прогресса и после сорока. Если отвлечься от IT-индустрии, можно вспомнить того же Сергея Павловича Королёва. Основные разработки он сделал после сорока пяти — вряд ли чисто на основе тех знаний, что получил до 30 лет.
Также существуют неявные знания. Их невозможно получить в вузе и почерпнуть из литературы. Потребуется проработать не один год (а порой даже не одно десятилетие) в конкретной отрасли. Программист в 40 лет знает, как надо программировать, а ещё (если он участвовал в так называемых безнадёжных проектах) — как не надо программировать и каких ошибок стоит избегать при выборе архитектуры ПО и написании кода.
Объяснение 3. Программист в 35 уже ничего стоящего не родит
Нам говорят: «Да, можно быть программистом в 35–40 лет, но ничего серьёзного такой программист уже не сделает».
Тут следует начать с основ — с самого компьютера. Его создали Эккерт и Мокли. Эккерту тогда было 25, а Мокли — как раз 35 лет.
Перейдём к тем, кто создал что-либо серьёзное после 35 лет. Начнём с известного и авторитетного для программистов Дональда Кнута. Первый вариант своей знаменитой системы TeX он разработал в 1978 году — когда ему было 40 лет. Чуть позже, в 1981-м, он создал концепцию грамотного программирования (literate programming).
Перенесёмся в более близкие времена. Мартин Одерски родился в 1958-м и начал создавать язык Scala в 2001-м — после более чем десяти лет работы над языками Pizza и Funnel (и над GJ compiler, который стал прообразом javac).
Вот ещё один пример программиста, который и в молодости был хорош, и в старости таким остался. Андерс Хейлсберг написал первую версию компилятора Pascal в 1981-м, в 21 год. C# он разрабатывал с 2000-го, когда ему было уже как раз под сорок. А в 2012-м (в 62 года) Хейлсберг начал создавать TypeScript. Я для интереса в своё время смотрел репозиторий этого языка — там от Андерса довольно много коммитов.
Более того, есть мнение, что возраст с 40 до 55 лет для специалистов инженерных профессий самый плодотворный, поскольку накопился опыт и ничто уже не отвлекает от работы: семьёй человек обзавёлся, дети успели вырасти…
Кроме того, не стоит забывать, что любой первооткрыватель стоит на плечах не только десятка гигантов, но и массы хороших работников. Они создали массив инфраструктуры, которая сделала возможной работу первооткрывателя. Кто-то пишет драйверы для видеокарт, а без драйверов разработчики игр ничего бы не могли. Кто-то налаживает протоколы сетевого взаимодействия, а без них разработчики мультиплееров опять же вряд ли чего-то бы добились. Всё это огромный труд, который по большей части не является новаторским и зачастую не воспринимается как нечто серьёзное, чем стоит гордиться. Однако без этого труда все гиганты ничего бы не добились.
Объяснение 4. Ты что, до сих пор не руководитель?
Нам говорят: «Программист — это всего лишь первая ступенька в карьере. К тридцати, самое позднее к тридцати пяти ты должен выбиться в руководители, если у тебя есть мозги и способности».
Это самое оскорбительное объяснение. Мол, программированием можно побаловаться по молодости, но после тридцати надо заниматься чем-то серьёзным.
Легко понять всю абсурдность этой точки зрения, если попробовать приложить её к другим профессиям. Попробуйте сказать 50-летнему юристу: «У тебя всё ещё нет собственной юридической конторы?» Попробуйте сказать 50-летнему хирургу: «Ты всё ещё не заведующий хирургическим отделением?» Попробуйте, наконец, сказать Салленбергеру: «Посадил самолёт на Гудзон в 58 лет? Нормальные люди в твоём возрасте давно уже собственными авиакомпаниями владеют».
Программист и менеджер IT-проекта — это разные профессии, хотя менеджеры зачастую и вырастают из программистов.
Я считаю позицию «Программист — профессия для молодых» весьма вредной, поскольку она существенно снижает мотивацию. Согласитесь, довольно сложно напряжённо учиться пять лет в вузе, если ты полагаешь, что потом пробудешь программистом тоже максимум лет пять. Представьте, что на врача заставляют учиться восемь лет, но при этом заявляют: «Врач — профессия для молодых, после тридцати надо переходить на руководящие должности». Какой смысл тогда учиться напряжённо все эти годы?
Откуда же взялся миф «Программист — профессия для молодых»?
В своё время я пытался это выяснить и выделил два источника:
Однако сейчас ситуация изменилась. Этому есть много причин, но самая важная, на мой взгляд, — демографический провал. До Москвы мне довелось и преподавать в провинциальном вузе, и работать в провинциальных IT-конторах. Могу засвидетельствовать лично: в регионах уже в 2010-м дефицит кадров был очень острый. Молодёжи стало гораздо меньше, и вузы банально не могли поставить нужное количество программистов. Может быть, в Москве и Петербурге это не ощущается, но в остальных городах всё обстоит именно так. Всех 30-летних программистов заменять некем. Очевидно, что они не могут уйти на другие должности — кто программировать-то будет?
Демографический провал привёл к тому, что предельный возраст программиста в регионах начал незаметно, но неуклонно увеличиваться. Происходит ли это в столице — вопрос открытый.
Советы студентам IT-специальностей
Как относиться к своей профессии? Чему учиться, чтобы в тридцать пять не оказаться за бортом и не жалеть о потерянном в вузе времени? Вот мои соображения.
Вместо заключения
После тридцати пяти вполне реально быть программистом и устроиться на работу — и не только на какой-нибудь завод на поддержку старой системы, но в современные IT-компании. Главное — развиваться, не бояться нового и любить своё дело.
А что думаете вы? Согласны или нет? Какой опыт у вас?
Когда уходят на покой программисты? 35 — это конец карьеры?
Почему мы не наблюдаем вокруг большого количества седоволосых разработчиков ПО? Куда деваются все программисты, когда становятся старше? Увольняют ли компании программистов в возрасте?
Если программист в свои пятьдесят собеседуется на вакансию вместе с людьми, которым 20-30 лет, сколько компаний наймёт его? Об этой проблеме существует множество мифов, как и несколько жестоких истин.
Да, иногда шокирует, что 40-летних, иногда даже 35-летних называют «старыми». Под «старыми» здесь подразумевается то, что программисты на этом этапе планируют уходить на покой или менять место работы.
Давайте поговорим о статистике.
Статистика: 40 лет — это новые 60 для программистов?
Данные опросов противоречивы. В 2019 году Stack Overflow опросил 66329 профессиональных разработчиков со всего мира. Вот результаты:
Из общего количества профессиональных разработчиков 71,7% младше 35 лет, а 85% — младше 40 лет. Это необычно по сравнению почти с любой профессией в мире.
Этот опрос также выявил по ответам 50705 респондентов, что наибольший средний возраст разработчиков по странам — в Австралии и США, он равен 32,8 года. Минимальный средний возраст — 25,9 года, в Индии.
Согласно исследовательской статье, количество разработчиков ПО в возрасте 55-64 года увеличилось в США с 87000 (8,3%) в 2011 году до 195000 (10,7%) в 2019 году. То есть концентрация разработчиков старшего возраста в США выше, чем в большинстве других стран.
Однако ситуация постепенно будет меняться.
Согласно данным корпорации Evans, в мире около 24 миллионов разработчиков, это количество к 2024 году увеличится на 20% и составит примерно 30 миллионов. США с их 4,4 миллиона разработчиков программного обеспечения пока держит рекорд, но ожидается, что к 2024 году лидерство перехватит Индия.
Ситуация такова, что Азия генерирует больше разработчиков ПО, и день за днём средний возраст разработчиков будет всё больше снижаться.
Почему их не так много в нашей отрасли
Повышенные ожидания к зарплате и спрос
Очевидно, что опытный и более старший разработчик ПО заслуживает и ожидает более высокую зарплату, чем более молодой (но не всегда).
Проблема заключается в спросе. Нужны ли компаниям-производителям ПО эти опытные разработчики, и стоят ли они затрат? По большей части — нет. Компании не нужно множество высокоопытных сеньор-разработчиков.
Каждой компании приходится рассчитывать финансовые возможности. Невозможно содержать много разработчиков в возрасте с высокой зарплатой.
Смена работы
Большинство разработчиков находит способ зарабатывать больше, не занимаясь при этом написанием кода.
Никогда не прекращающееся обучение
Технологии, языки программирования и фреймворки меняются так быстро, что многие возрастные (и даже молодые) разработчики не поспевают за ними.
С возрастом к старшему поколению приходит и множество других обязанностей. У него часто нет времени на изучение нового. Это ещё одна причина, по которой мы видим меньше программистов в возрасте.
Ни одна другая профессия в других отраслях не вынуждает обучаться так быстро. Программистам всегда нужно быть в курсе последних изменений.
Окружение
Время идёт, и они начинают замечать, что находятся в «старой» части команды/компании и окружены множеством молодых программистов.
Многие не могут найти общий язык с молодыми программистами из-за разрыва между поколениями и некоторых других факторов. Они ощущают одиночество на рабочем месте. Это ещё одна из причин.
Относительно молодая отрасль
Отрасль создания программного обеспечения относительно молода по сравнению с другими. Это одна из самых важных причин. Можно надеяться, что в процессе взросления отрасли мы будем встречать в ней больше возрастных программистов.
Ещё одна причина — культура стартапов
Предприниматели пытаются быстро разрабатывать прорывные продукты. Каждый предприниматель мечтает изменить мир в какую-то положительную сторону. Я, как предприниматель, могу понять эту психологию.
Идея хрупка. Главное — это её реализация. Но прежде чем её реализовать, предпринимателям нужны какие-то технологические продукты (если это технологический стартап). Они не могут долго ждать, пока будет создан продукт.
Потому что если идея проваливается, предприниматели должны извлечь уроки из своих ошибок и двинуться в другом направлении на основании результатов эксперимента. Все эти эксперименты требуют быстрой разработки технологических продуктов.
К тому же, получив первое финансирование или приличную сумму денег, мы часто не можем позволить себе тратить больше.
Поэтому для дешёвой и быстрой разработки технологических продуктов предприниматели всегда ищут молодых разработчиков. Но правда и то, что когда стартап взрослеет, ему нужны опытные сеньор-разработчики, способные построить крепкий фундамент и надёжную архитектуру для продуктов.
В своём интервью бывший сценарист сериала HBO «Кремниевая долина» Дэн Лайонс сказал об этом так: «Думаю, все они решили, что оптимальный доход обеспечивает молодёжь: используй их до выгорания, избавься от них, замени их».
Этот безудержный эйджизм в отрасли технологии вызвал множество проблем, в том числе и огромную психическую нагрузку и на молодых, и на возрастных.
Как программисту выжить в отрасли
Программирование — для многих не просто профессия. Недавно я читал посты по теме на Quora. Выяснилось, что многие разработчики 50-60 лет и старше продолжают заниматься программированием.
Некоторым из них предлагали другие должности, но они отказались, потому что любят программирование. И в самом деле, если ты делаешь то, что любишь, то тебе повезло!
Однако, вне зависимости от любви, если ты хочешь оставаться в профессии долгое время, нужно учитывать некоторые факторы. Будь вы молодой или возрастной программист, правило просто:
Если вы регулярно не обновляете свои знания, то устареете.
Следуй за молодым разумом
Кроме своей дешевизны, молодые разработчики обладают ещё двумя преимуществами, которые любят рекрутёры.
Не носите с собой багаж технологий
Я как предприниматель видел многих программистов, носящих с собой «багаж технологий».
Не делайте этого. Всегда будьте открыты к освоению новых технологий.
Некоторые рекрутёры считают «красным флагом» то, что у программиста слишком много лет опыта работы с определённым языком программирования, а в портфолио нет рабочего опыта.
Каков эндшпиль?
Вы можете задаться вопросом: «неужели программистов после определённого возраста вынуждают увольняться?» Чаще всего это не так.
Давайте разберёмся, что с ними происходит.
Руководство
Так как компании легко могут нанимать молодых и энергичных разработчиков за меньшие деньги, они используют опытных разработчиков в другой важной роли — как руководителей первого и второго эшелона.
Консультант
Молодые имеют множество преимуществ, но они не могут работать консультантами. Опытные разработчики становятся независимыми или наёмными консультантами компаний. А если ты хороший консультант, то можешь зарабатывать по-настоящему серьёзные суммы.
Я знаю консультанта из Великобритании, зарабатывающего миллионы в год.
Фрилансер
Некоторые из них хотят работать по своим правилам и становятся фрилансерами.
Специалист в узкой области
Многие становятся специалистами в узкой сфере. Я видел людей, специализирующихся в очень конкретных областях, где на них есть спрос, например, big data в здравоохранении или облачная архитектура Azure.
В некоторых специфических секторах всегда есть высокий спрос на опыт.
Ранний уход на покой
Многие разработчики рано уходят на покой и становятся тренерами молодых разработчиков.
Создание стартапа
Многие опытные разработчики используют свои связи и навыки, а также часть своих накоплений для создания новой технологической компании или стартапа.
Остаться программистом
Да! Это тоже вариант, и многие разработчики остаются программистами в 50-60 лет. Они удерживаются в отрасли благодаря своим навыкам.
Послесловие
У разработчиков старшего возраста возникают сомнения в стабильности их должностей. Это может привести к повышению стресса или даже к синдрому самозванца. Я считаю, что этого можно избежать, готовясь заранее.
Новые языки программирования, фреймворки и библиотеки появляются постоянно. Будьте всегда современны. Я не устаю повторять это, потому что сталкивался с подобным. Опытные люди часто игнорируют этот совет. Но в реальности навыки в этом секторе могут быстро устаревать.
CEO индийской корпорации Шридхар Вембу экспериментировал с наймом 17-летних сотрудников сразу после старшей школы. Он выяснил, что спустя два года их результаты работы почти сравнялись с результатами обучавшихся в колледжах.
День за днём количество молодых программистов быстро растёт. Становится ли программирование игрой для молодых программистов?
Лично я считаю, что возраст — это просто число, если программист не живёт прошлым и готов всегда изучать новое. А как думаете вы?
На правах рекламы
Наша компания предлагает современные VDS в аренду для любых проектов. Очень широкий выбор тарифных планов, максимальная конфигурация бьёт рекорды — 128 ядер CPU, 512 ГБ RAM, 4000 ГБ NVMe!
Есть ли в IT работа для несовершеннолетних?
Простой 2 комментария
Букавльно сегодня видел вопрос о том почему не стоит начинать с фриланса
С 16 лет в этом говне, по началу брал мелкие заказы с фриланса по типу написать код для курсовых, доработать, найти баг итд. Сейчас уже 19 лет и все так же на фрилансе, но уже полностью с головой в мобильной разработке(Android/iOS) включая бд, серверную часть и прочее и немного гейм дева.
Так что если есть больше желание и время, то вполне можешь идти на фриланс, но готовься к бессонным начам и забиванием на учебу.
— Сам в 16 начал тестить игры в одном из главных российских издателей. Деньги и опыт были. Запись через форумы/сайты/пойту.
— Многие знакомые начали с того, что в 10-11 классе помогали админить (за денюшку малую) школьные сети, компы, оргтехнику, комп. классы, технику для концертов и прочую мелочевку в своей радной школе. Сейчас этого добра стало ещё больше.
— Стажировкиво многих ИТ-контор требуют, чтобы ты просто был адвекватен и дружил в компом (ЗП будет минимальной, это да)