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

Большинство профессиональных разработчиков с более чем 15-летним опытом работы с некоторыми технологиями сейчас находятся в режиме funemployment. Они решают, над какими проектами они хотят работать, и обычно переходят на полууправленческую должность. Очевидно, есть исключения - настоящие технические лидеры. Я уверен, что вы знаете их в своей компании, и они жизненно важны для привлечения и удержания новых талантов. Они похожи на школьных учителей, которые так сильно вас вдохновили, что вы время от времени слышите их в своей голове на протяжении всей жизни. Другие похожи на скучных учителей, за исключением того, что они водят Tesla.

В моем предыдущем рассказе я упоминаю три типа коммуникации, когда кто-то кодирует: 1) вверх к более высоким спецификациям, 2) боком к будущим сопровождающим кода и 3) вниз, когда вы на самом деле пытаетесь разобраться с машина.

Старшие специалисты, продолжающие заниматься техническим делом, в какой-то момент начинают переход от мышления в коде к размышлению о коде. Когда вы можете позволить себе думать о коде, вы в основном занимаетесь первым типом общения, и жизнь идет хорошо - вы много общались с разработчиками и клиентами, чтобы понять спецификацию требований и сколько времени нужно на то, чтобы действительно выполнить задачи в какой-либо организации. . Возвращаясь к моей первоначальной аналогии, вы уже толстые и мало что измените в текущих процессах (даже если вы знаете, что они полностью нарушены).

Однако два других типа коммуникации на самом деле включают мышление в коде - это буквально двоичное мышление: либо ваш код работает так, как задумано, либо нет. Если это не так, вам нужно углубиться и понять, почему это исправить. Успешное выполнение этой задачи в начале карьеры является ключевым моментом, иначе вы замедляете стремление какой-либо компании к мировому господству и отстаете. Такое понимание кода требует больших умственных способностей и самоотверженности, но оно имеет фундаментальное значение для фактического выполнения продукта - вы находитесь в режиме измельчения! Обычно это делают разработчики с опытом работы менее 15 лет. Отраслевые бренды младше - те, у кого меньше 5 лет, и старший от 5 до 15 лет.

Если предположить, что кто-то заканчивает колледж в возрасте около 20 лет, старшему программисту от 26 до 40 лет. Я вижу в этих разработчиках, в том числе и моем поколении, сильную надежду на то, что жизнь скоро станет прекрасной. Для тех, кто относится к высокому спектру, вы освоили некоторые технологии, у вас есть хорошо оплачиваемая работа, и вы начинаете чувствовать, что давление исполнения уходит - вы начинаете чувствовать себя комфортно и толстеть. В этой ситуации много людей, и у них есть хорошая платформа в социальных сетях, чтобы хвастаться своими достижениями - престиж! Однако именно на этом этапе происходит что-то опасное: вы думаете, что знаете лучше всех, и начинаете думать о коде в коде. Как следствие, вы начинаете разрабатывать новую структуру, новый язык программирования, адаптировать цепочку инструментов к другому домену и т. д. Отчасти это необходимо - к сожалению, большая часть этого не только не нужна, но и не приветствуется.

Из разговоров с профессиональными разработчиками я обнаружил, что есть только одна вещь, которая больше раздражает / удручает, чем информация о том, что проект, над которым они работали последние два года, будет отменен: это когда они поймут, что совершенно разумный технологии, которые они использовали на протяжении большей части своей карьеры, теряют рыночную стоимость. Представьте себя в их ситуации - вы быстро начинаете искать, что в тренде, и понимаете, что на самом деле многие вещи в тренде по причинам, которые вы, эксперт, даже не можете понять. Конечно, вы слышали эти имена раньше, так что это не полная неожиданность - все же это действительно больно. Эти разработчики находятся в трудном положении - если они приняли разумные финансовые решения, у них есть второй шанс заново изобрести себя, если они этого не сделали, то они, вероятно, сократят свой образ жизни с непредвиденными последствиями.

А теперь представьте, что вы только что закончили колледж или находитесь на своей первой работе - вы думаете, что уже умеете программировать, но при этом знаете, что не умеете. Вы даже не знаете, на что надеяться - вы просто хотите испытать жизнь. Вы одинаково голодны, испытываете жажду, надеетесь и взволнованы этим приключением. А затем, например, вам дается 30+ потрясающих фреймворков node.js для решения этих задач. Вы разумный человек, но не можете принять рациональное решение - в глубине души вы чувствуете, что эта лотерея интеллектуально голодает вас. Если это ваша ситуация, то вы не одиноки и на собственном опыте переживаете парадокс буридановой задницы.

Согласно Опросу разработчиков Stackoverflow 2019 года из 79 854 ответов:

Более половины респондентов нашего опроса перешли на новую работу в течение последних двух лет; частая смена работы - норма для разработчиков программного обеспечения.

В основном это разработчики с опытом программирования менее 10 лет. Для этого есть много причин, но я хотел бы, чтобы вы подумали, что, возможно, одна из причин заключается в том, что эти разработчики просто потерялись в море возможностей. Должно ли это быть нормой?

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

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