Почему я устал от профессии программиста
Этот пост не совсем относится к теме блога, но тема важная, так как, скорее всего, моя профессиональная деятельность скоро изменится. И будет связана с Испанией.
Для начала контекст обо мне, чтобы было понятно, откуда я вообще рассуждаю. Мой опыт в разработке - больше 15 лет, работал и в стартапах, и в крупных компаниях. Для меня это никогда не было просто работой, скорее хобби, которое параллельно ещё и кормит. Периодически, когда появлялось время, пилил свои проекты. Поэтому продукт я вижу не только через код: понимаю, как устроены продажи, продвижение, общение с клиентами и подрядчиками. Могу и сам писать код руками, и держать в голове архитектуру целиком, и собирать команду, нанимать людей, разгребать сложные проблемы. В общем, из тех, кому можно сказать “хочу вот такую кнопку” - и кнопка появится. Да, и был уволен здесь, в Испании 2 раза.
Собеседования как отдельный вид спорта
При каждой смене работы приходится заново доказывать, что ты умеешь делать своё дело, причём способами, которые к самой работе имеют довольно косвенное отношение. Показать реальные коммерческие проекты почти невозможно: код принадлежит компании и никто его не имеет права показывать. Но выход-то есть - можно показать личные проекты, разобрать архитектурные решения, объяснить, что получилось, а что нет.
Я недавно сделал портфолио-сайт с подробным разбором опыта и даже прикрутил туда ИИ-агента, который отвечает на вопросы по моему опыту, это на тот случай, если лень всё читать. И что думаете? Ссылка есть в резюме, я ей регулярно делюсь, но никому это неинтересно, посещений практически нет.
Вместо разговора о реальном опыте - лайвкодинг, т.е. пиши код в реальном времени, пока кто-то наблюдает за экраном. Или задачки на время на условном LeetCode (это онлайн-платформа для задачек на кодинг), где потом ещё смотрят за движениями курсора мышки, только попробуй не туда залезть.
И это ещё нужно заслужить, т.е. попасть на этот самый лайвкодинг. Сначала отклики на вакансии, в ответ на которые в большинстве случаев тишина или отписка “вы нам не подходите”, хотя по описанию вакансии совпадение чуть ли не один в один. Потом, если добрался до разговора с рекрутером, изволь-ка ты “правильно” отвечать на вопросы вроде “почему именно наша компания”, подсвечивая нужные ключевые слова, которые от тебя хотят услышать.
По сути, чтобы пройти хотя бы первый этап, приходится постоянно врать и надевать разные маски. А этапов бывает пять-шесть, а то и семь, и это каждый раз при смене работы. Даже если сейчас получится найти что-то, через условные 2-3 года всё повторится заново. Какой к тому моменту будет ситуация на рынке, лучше или хуже - предсказать невозможно. Да и мне самому будет уже далеко за 45.
Некомпетентность на всех уровнях
Проявляется она и у рядовых разработчиков, и у разных менеджеров.
Помню, в начале карьеры, в самом начале 2010-х (когда я начинал свою карьеру), приятель как-то сказал: “ты чего, в ботаники подался”. В то время в профессию шли в основном те, кому реально было интересно копаться в коде. А потом случился бум: массово пошли люди из совершенно других сфер, в основном за деньгами. Появилось невероятное количество курсов, особенно в ковид - люди теряли работу и переучивались в разработчиков, а компании в тот момент нанимали очень активно, потому что онлайн-бизнес всё рос и рос.
Многим из тех, кто пришёл, сама разработка совершенно не интересна - только деньги. Отсюда и отношение: открыл ноутбук в девять, провёл полдня в митингах, сделал задачи (не всегда понимая зачем), захлопнул крышку в шесть и пошёл пить пиво. При таком подходе профессионально расти особо неоткуда: сказали - сделал, не сказали - занялся своими делами, например, на гитаре пошёл играть.
Для меня разработка - это скорее образ жизни. У меня редко так бывает, что в шесть вечера я выключал компьютер и переставал думать о незакрытых задачах: они преследуют и на прогулке, и за ужином, и порой даже во сне.
А потом такие же люди становятся менеджерами и начинают нанимать себе подобных - круг замыкается.
Плюс есть менеджеры, которые вообще никогда не имели отношения к разработке, но отвечают за неё: принимают решения, исходя из текущего хайпа. Сейчас все помешаны на определённой технологии, и нам она обязательно нужна. Или полагаясь на ответы ChatGPT. Меня искренне удивляет, почему на позицию CTO или Head of Engineering попадает бывший администратор (да, реально видел такой случай), а не разработчик.
Заметил ещё тенденцию: менеджеры любят повторять, что важнее всего развивать софт-скиллы, а харды (то есть собственно способность программировать) якобы дело второе. Хочется спросить: а как тогда строились продукты лет двадцать назад, теми самыми ребятами в растянутых свитерах, которые разговаривали в основном на php, java и c#?
ИИ - это не враг, но и не средство от всех болезней
Сразу оговорюсь: я не против ИИ, скорее наоборот, я считаю его мощным инструментом. Но, как и с любым мощным инструментом, с ним легко навредить, если не умеешь им пользоваться.
Бывает, что руководитель, гонясь за хайпом, требует от всех отделов срочно “внедрить ИИ” - неважно, нужен он там реально или нет. Мы же инновационная компания, значит внедряем. Знакомая история?
В разработке то же самое. Как-то попалась статья в LinkedIn, где человек хвастался, что в одиночку сжёг токенов на генерацию кода больше чем на 2000 долларов. Что именно он там писал, я не понимаю. Но похоже, это превращается в новую метрику успеха: раньше считали строчки кода, часы, закрытые задачи, сообщения в чатах, теперь ещё и считают токены.
Сам наблюдал похожую картину: компания подключила ИИ и корпоративную подписку, разработчики толком не разобрались, как этим пользоваться, и упёрлись в лимит (токены кончились). Задумался ли после этого менеджмент, всё ли делается правильно и, может, стоит проанализировать использование? Не, зачем, лимит просто подняли, и его снова превысили.
Последние полтора года я довольно плотно разбирался с ИИ с разных сторон: от базовых принципов работы моделей и их тюнинга до практики. Навайбкодил полноценный продукт, который ещё использовал Gemini для анализа профилей в соцсетях. Экспериментировал, как эффективно писать код вместе с этой “шайтан-машиной”, даже отдельный блог на эту тему завёл, куда подробно описывал свои эксперименты и мысли. Главный вывод, что я из этого вынес: задачи должны быть маленькими и сфокусированными, а начальник — всё ещё человек.
По ходу этих экспериментов познакомился с людьми, которые тоже пытаются приручить ИИ. Но, как я понял, в процентном отношении таких немного. Большинство просто полагается на сгенерированный код, порой даже не заглядывая в него - заработало, и ладно. Сам слышал своими ушами, как после падения функционала разработчики оправдывались: “это не мы, это ИИ”. Или истории коллег про то, как люди, штампующие “спагетти-код”, с помощью ИИ стали производить его в разы быстрее - только вот кто потом будет разбираться в этом коде и чинить его, фиг его знает.
Сейчас многие радуются, что с ИИ стали работать быстрее и выпускать больше фич. Но кому, простите, нужны эти фичи, если они нормально не работают? Попробуйте зайти на любой испанский госпортал и заполнить какую-нибудь форму... Можно заодно потренировать нецензурные испанские выражения.
А что будет с будущим поколением
Какова сейчас вероятность для человека, только начинающего карьеру, найти работу в отрасли? Мне кажется, она с каждым годом стремится к нулю.
Компании практически перестали нанимать джунов. А зачем, если есть ИИ, который прекрасно пишет код и вроде как заменяет начинающих специалистов.
А что будет, когда нынешние сеньоры один за другим начнут уходить из профессии? По разным причинам, например, пенсия, смена профессии. Даже представить сложно. Возможно, вырастет давление на оставшихся, им ещё придётся чинить навайбкоженные приложения. Возможно, в какой-то момент индустрия спохватится и начнёт срочно искать и обучать новых людей. Но захотят ли люди идти туда, где заведомо сложно найти первую работу?
Когда я сам начинал прогать, то сначала фрилансил - делал несложные сайты. И первую реальную работу получил через стажировку в крупной компании. Формат мне тогда очень понравился: отбирали людей с базовым знанием в программировании, а дальше в процессе стажировки учили разным вещам и применяли знания на реальном проекте. К концу стажировки на руках был пусть и примитивный, но полноценный рабочий продукт.
Так компания ещё до найма видит, подходит ли человек, как он растёт, какие результаты выдаёт - и на выходе может получить хорошего джуна. А стажёр точно знает: будешь стараться, то получишь работу.
Я убеждён, что уже сейчас компаниям стоило бы активно возрождать подобные форматы - это было бы понятным решением проблемы для всей отрасли. Но сколько я ни пытался внедрить что-то похожее в компаниях, где работал, поддержки не находил нигде. И не верю, что кто-то станет делать это массово - по крайней мере, в ближайшее время.
В общем, если индустрия продолжит двигаться в том же направлении, светлого будущего я в ней не вижу. Некомпетентность, помноженная на хаос вокруг ИИ, куда это в итоге приведёт, большой вопрос. Так что надо что-то менять, оставаться здесь у меня нет никакой мотивации.
Кстати, мы с Олесей записали видео про мой путь в ИТ - от самого начала и до сегодняшнего дня. Лайки и аргументированная критика обязательны 😀


