Дополнительным бонусом немного нытья про рынок труда вообще и программистов в частности
По работе я постоянно имею дело с поиском программистов под разнообразные проекты. Последние четыре года я также отсматриваю стажеров для нашей компании, так как являюсь в ней автором и основным двигателем программы IT стажировки. Здесь не будем касаться вопроса, зачем это нужно в принципе, скажу только, что стажировка вещь полезная, плюс мне нравится передавать свои знания людям.
Все то время, что я подбираю стажеров, я имею дело в основном с выходцами из других профессий. Типичный стажер – человек, который окончил ВУЗ по любому другому профилю (медики, учителя, админы, маркетологи, кого только не было), получил опыт работы по специальности и решил, что ему надо что-то другое. Мотивация перемены области деятельности, как я понимаю, обычно деньги и комфорт. Есть поверье, что средний начинающий программист – это человек, который работает из дома три часа в день, а остальное время купается в деньгах как Скрудж МакДак.
Все эти чудесные люди практически в обязательном порядке проходят некие онлайн курсы и сразу по прохождении размещают резюме на вакансию junior-программист с ценником от 50 000 рублей.
Но мы сейчас, безусловно, говорим не о деньгах и трудностях выбора профессии. Я хочу поговорить о том, чему на этих курсах можно научиться с нуля, и почему просто курсы – это недостаточно для начала работы. В конце бонусом напишу, что думаю про массовое перетекание всех специалистов в область программирования.
Итак, что вам дает типичный онлайн курс
-
Базовые знания по теме курса.
-
Умение работать в некоем интерпретаторе кода, причем у каждого ресурса он свой.
-
Умение выполнять некие типовые задачи, часто по одной каждого типа.
-
Уверенность в своих профессиональных компетенциях (потому что курс часто называется как-нибудь типа Web-разработчик уровень 1).
Что онлайн курс не дает (судя по стажерам)
-
Понимание, как на самом деле все работает. 90% стажеров приходят в ужас, когда их заставляют компилировать код вне их привычного интерпретатора. Примерно половина стажеров первый раз видят ftp клиент у нас на рабочем месте.
-
Умение гуглить. Как ни смешно, на курсах знания ограничены фиксированным набором приемов, шаг влево, шаг вправо – и у человека ступор.
-
Понимание, что типовые задачи могут при сходной реализации отличаться деталями. Очень частое явление, когда человек умеет копипастить код из программы курса, но приходит в недоумение, например, при добавлении GET параметра или изменении имени GET параметра.
-
Понимание своего места в рабочем процессе. Человек учит программу курса PHP, скажем, но при этом не понимает, что для уровня junior разработчика неплохо бы, например, уметь встраивать код в html, или что данные к нему приходят из фронта и не всегда так, как ему нравится. То есть человек умеет выполнять узкую задачу, на которую его натаскали, но за ее рамки выйти не может вообще.
-
Умение задавать вопросы. Курсы часто не награждают людей за лишние вопросы, складывается менталитет “я задаю вопросы, значит я признаю, что чего-то не знаю, значит я не прошел задание”.
-
Реальную оценку своих навыков.
Про реальную оценку хочу поговорить подробнее. Когда человек закончил курс “Веб разработчик, уровень 2”, он автоматически думает, что он уже состоявшийся веб разработчик, в сертификате же так написано! По факту же человек еще далек от уровня, когда его можно выпускать в разработку, он не может самостоятельно реализовывать даже простейшие задачи без ментора. У большинства таких соискателей уровень знаний не подходит даже для нашей стажировки, так как мы все же рассчитываем на подтягивание готовых начинающих специалистов, а не на обучение почти с нуля.
Что я бы порекомендовал человеку, который хочет связать себя с web разработкой?
-
Научиться искать информацию в сети. В наше время гугл может дать ответ практически на любые вопросы, надо их просто правильно формулировать.
-
Помимо курсов (и любых других источников знаний) поискать в сети тестовые задания разных компаний, штук пять, и попробовать их выполнить.
-
Найти в сети макеты сайтов в JPG и попробовать их сверстать. Дополнительный уровень сложности – сверстать пару макетов на flex, grid и блочной версткой.
-
Очень многие курсы JS фокусируются на нативном языке. Попробуйте писать те же задания с использованием простых фреймворков, посмотрите разницу. Для начала я бы выбрал что то несложное, например jQuery.
С моей точки зрения, самый низкий входной порог в вебе у верстальщика. Если вы хотите работать с веб-технологиями, я бы предложил начать с этой профессии и позаниматься ею годик. Хороший верстальщик, на самом деле, это редкость, таким специалистам достойно платят, и они никогда не останутся без работы.
В процессе освоения профессии вы лучше поймете, где и как применяется JavaScript. Имея в активе знания по JS, верстке и опыт применения всего этого, вы легко из верстальщика станете FrontEnd разработчиком. А уже посмотрев, как все работает на фронте, вы сможете доучить необходимый вам по стеку технологий backend и дальше развиваться там.
Такой маршрут, безусловно, длиннее, чем просто пройти месячный курс и бежать на headhunter.ru, но намного надежнее, позволит вам набить меньше шишек, и главное – в итоге вы действительно будете понимать, как все работает и как взаимосвязаны фронт и бэк в современной веб-разработке.
Теперь обещанное про легкие деньги и миграцию из других профессий.
Мое мнение: если человек хороший специалист в своей профессии, он всегда будет востребован, а когда достигнет потолка по деньгам, сможет в крайнем случае открыть свое дело. Все профессии нужны, все профессии важны, как говорится.
Если вы не можете самореализоваться внутри своей профессии, вовсе не факт, что у вас получится реализоваться в другой. Поэтому надо взвесить все за и против перехода, не слушать умников, которые говорят, что программист – это легкие деньги, в отличие от врача или учителя. Вспомнить, почему, в конце концов, вы пошли учиться именно на вашу специальность.
Но может быть, программирование действительно ваша судьба. Тут надо подойти к вопросу без розовых очков и понять, что первые лет -надцать у вас не будет ни трехчасового рабочего дня, возможно, не будет удаленной работы. Вам придется много (и постоянно) учиться, совершенствовать свои знания, причем часто в нерабочее время. Оклад первое время может также демотивировать.
И попробуйтесь к нам на стажировку. Вдруг мы друг другу подойдем?
Автор:
Luciphur