Вы просто устали слушать, как 20-летним программистам нужно начинать готовиться к пенсии в 40 лет? "О, нет! кто хочет изучать новые фреймворки каждый месяц?» или «Кто наймет 40-летнего разработчика?». Нам также говорят, что старые программисты едва проходят первое телефонное собеседование при приеме на работу, независимо от их опыта. Нам говорят, что старые программисты менее ценны, чем их более молодые коллеги в возрасте 20 лет, у которых есть энергия, чтобы не отставать от новейших фреймворков. В чем на самом деле проблема? Другие специалисты, такие как врачи, инженеры, юристы, бухгалтеры, архитекторы и т. д., все возраста любят хорошее вино. Эти профессионалы становятся более ценными с возрастом. На самом деле профессионалы в этих областях все еще находятся на уровне учеников в течение большей части своих 20-летних. Так почему же программирование и разработка программного обеспечения отличаются друг от друга? Почему программисты якобы стареют, как молоко Tesco (ежедневное значение)?

Что, если я скажу вам…

Что, если я скажу вам, что это безумие заканчивается в сфере веб-разработки

Веб-разработка - основная часть работы по разработке программного обеспечения. Он настолько велик, что многие веб-разработчики не обращают внимания на то, что есть много программистов в других областях, которые ничего не знают о реакции, начальной загрузке, css, стеке MERN и MEAN и т. д. На самом деле, когда вы ищете видео в Интернете о лучших инструментах разработки программного обеспечения или лучших советах по разработке программного обеспечения, в большинстве видеороликов предполагается, что каждый является веб-разработчиком. Вы видите, как они говорят об «обязательных» инструментах и ​​упоминают «код Visual Studio» как обязательный для всех разработчиков. *Ну, просто скажите, что это для веб-разработчиков*

В области веб-разработки технологии постоянно меняются. У вас может быть около 9 различных технологий в вашем техническом стеке, даже если вы создаете базовое приложение, которое может быть разработано командой из одного человека за 6 месяцев. Да, многие из этих технологий могут иметь несколько общих черт, но по большей части ваши знания в основном зависят от технологий, а эти технологии быстро заменяются. Веб-разработка также является областью программирования (так же, как и мобильная разработка), где практически не используется наука и математика, поэтому много базовых знаний не требуется. Сравните это с другими нишевыми областями разработки, такими как вычислительная наука/моделирование, звуковое программирование, графическое программирование, разработка игр, разработка систем, языки и компиляторы и т. д. Используется много математики, информатики и некоторые знания физики (в некоторых случаях). и эти вещи никогда не меняются. В веб-разработке почти нет контроля, потому что бросивший школу может легко проскользнуть и ориентироваться в веб-разработке без необходимости прочного фундамента (поверьте мне, это случается часто). Итак, теперь вы понимаете, почему этот 22-летний разработчик, только что окончивший Стэнфордский университет, прошедший стажировку в Google, а также знающий reactJS 3.0 (когда reactJS 3.0 — новая модная технология) более ценен (по крайней мере, в глазах HR). ), чем 45-летний разработчик, который до сих пор использует reactJS 1.0 в своей компании среднего размера. Когда вводятся эти новые фреймворки, вы практически начинаете все сначала, и у вас остается мало знаний. Небольшой перенос также можно быстро изучить, поскольку основы совсем не сложны, когда дело доходит до веб-разработки.

Возьмем одну из нишевых областей, о которых я говорил, аудиопрограммирование. Вы должны понимать основы синусоидальных волн, которые являются основой для звуков. Вы узнаете много сложной математики о том, как эти синусоидальные волны математически преобразуются для получения определенных звуков. Базовой математики частоты, амплитуды, частоты дискретизации, кодирования звука и т. д. достаточно, чтобы напугать этих математикофобов (удержание ворот). Индустрия звукового программирования опирается на определенные инженерные и математические концепции, которые никогда не изменятся. Фреймворки не приходят и не уходят легко. На самом деле дело обстоит как раз наоборот. Есть несколько фреймворков, вы усердно изучаете теорию и понимаете, как реализовать некоторые алгоритмы генерации звука, а затем выбираете инструмент для выполнения своей работы. 20-летний парень, только что окончивший колледж с несколькими стажировками за плечами, не может даже зашнуровать обувь 45-летнего разработчика аудио, работающего в индустрии. У вас есть лестница, по которой вы можете подняться, и нет модной технологической подножки, на которую можно было бы запрыгнуть.

Это также касается разработки графики и других нишевых областей. Команда Epic Games, которая работала над технологией Nanite (виртуализированная геометрия) и технологией Lumen (глобальное освещение с трассировкой лучей в реальном времени), практически не использовала новичка с двухлетним стажем. Точно так же, как студия AAA, работающая над следующей GTA или Battlefield, будет практически бесполезна для многих новичков. Математика рендеринга, отражения, освещения не меняется и никакие новые рамки вас не спасут. То же самое и с такими аудиокомпаниями, как Image-line: новички не заменят ветеранов. Это то, что объединяет эти нишевые области программирования с другими традиционными областями, такими как бухгалтерский учет, медицина, инженерия и т. д. Чем старше и опытнее вы становитесь, тем более ценным вы становитесь.

Так что же тогда делает веб-разработчик? Поскольку фреймворки меняются быстрее скорости света, и большая часть знаний привязана к этим фреймворкам, каков выход? Вот почему многие умные веб- и мобильные разработчики переходят на роль консультантов и лидеров. Вы видели, как проекты приходят и уходят. Вы видели, как индустрия меняется со временем, поэтому с точки зрения бизнеса вы бесконечно более ценны, чем тот неопытный ребенок из школы. Так да! Это не конец, когда вы становитесь 45-летним веб-разработчиком, вам просто нужно изменить свое мышление с мышления программиста на мышление менеджера.