Не так давно, мне птичка на хвостике принесла очередную историю про очень хорошего мальчика, "сына маминой подруги", который хочет работать джуниором, но у него никак не получается устроиться на работу. Потом эта "птичка" обратилась ко мне с вопросом, мол, а что делать-то? Вот и решил поделиться своим видением.
Всё дело в высокой конкуренции?
Не для кого не секрет, что на волне "стране не хватает айтишников" некоторые предприимчивые товарищи понаоткрывали всяких онлайн-школ, где, как они утверждают, за несколько месяцев можно обучиться ремеслу разработки программного обеспечения и начать зарабатывать по 150 тысяч в месяц.
Маловероятно, что обещание быстрых и лёгких денег оставило равнодушным большую часть населения страны и вчерашние юристы, курьеры и разнорабочие бросились получать хорошо оплачиваемую специальность. Как следствие: на 5 вакансий приходится до 1000 резюме. Казалось бы, вот она - кощеева игла, но нет, не всё так просто.
Работодатели не желают
Преимущественно, работодатели не хотят брать на работу джунов; за исключением, пожалуй, больших компаний. Причина простая: джуниор гарантировано запорет любую задачу, которую ему поручат, поэтому рядом надо посадить, хотя бы, синьора, который не просто укажет на ошибки, но ещё скажет, как исправить их. При этом, если синьор будет выполнять эту работу сам - у него уйдёт сильно меньше времени.
А джуниор, покрутившись несколько месяцев в среде, где всё непонятно, надо много чего знать (а он не знает), надо много чего уметь (а он не умеет), надо много с чем справляться (а он не справляется) - загрустит и подумает... нет, не о том, что его подготовка слаба - он подумает, что компания так себе и начнёт искать другую работу. И только компания, затратив значительные ресурсы, подготовила себе сотрудника, который начинает справляться с минимальными задачами - он увольняется, т.к. устал, а на новом месте работы обещают кикер и пиццу по пятницам.
Проблема обучения
Первое, что хочется заметить, так это то, что программированию, как и любой непростой профессии, за несколько месяцев обучиться нельзя.
И дело тут даже не в знании какого-то языка программирования и наличии некоторого опыта написания кода, нет. Проблема в образе мышления. Я понимаю, это звучит немного напыщенно, однако именно образ мышления, способ определения, осмысления задачи и важен (язык программирования может быть любым). Даже для начальной позиции.
Как же в себе развить такой волшебный образ мышления? Как ни грустно - только длительной практикой. Которую следует проходить сразу после обучения. Поэтому, если у после обучения получилось попасть на стажировку (даже если и не оплачиваемую) - это огромный плюс: там как раз и появится опыт, который так необходим.
Инструментарий
Очень желательно знать про инструментарий разработчика, а лучше уметь немного им пользоваться. Системы контроля версий, системы тестирования кода, системы автосборки и автоматизации, CI/CD.
Умение пользоваться всем этим - добавляет несколько очков привлекательности кандидату; отсутствие - иногда убавляет.
Владение инструментарием приходит, разумеется, с опытом, но наличие хотя бы начальных сведений о всём вышеперечисленном - уже хорошо.
Свой проект
Наличие своего проекта (и, желательно, осмысленного), опубликованного в каком-нибудь публичном репозитории (типа github), тоже добавляет очков привлекательности соискателю. По меньше мере человек, отсматривающий резюме, уже может открыть ссылку и поглядеть, чего там да как. Плохой код отпугнёт работодателя, хороший - привлечёт.
Так что, если нет распирающего ощущения гордости от своего юниорского кода, лучше не делиться ссылкой. Ибо тут как у врачей: не навреди.
Подготовка к собеседованию
Это самый простой момент. Тут прямо инструкция:
- Открываешь вакансии нескольких компания, которые нравятся (пусть даже не рассчитанные на уровень повыше);
- Выписываешь то, что там требуется;
- Тратишь несколько дней (или недель) на освоение функционала, хотя бы на минимальном уровне (прямо всерьёз так, с конспектом и тренировочными занятиями);
- Указываешь это в своём резюме и, когда тебя об этом спрашивают, не бледнеешь от своего вранья, а мямлишь в ответ что-то похожее на правду.
Хорошее резюме и активный поиск
По одёжке соискателя встречают в офисе (ну или на видеосозвоне). Однако, чтобы до этого этапа дойти - неплохо бы резюме вылизать. Не можете сами - обратитесь к специалисту по карьерному консультированию (пусть и не за даром); это всегда окупается.
Потому что можно быть семи пядей во лбу, но те, кто отбирают резюме, могут не понять скрытого величия соискателя, которое он спрятал за 2-3 лаконичными строчками текста.
И, разумеется, не стоит ждать, что работодатели устроят королевскую битву за право позвать вас к себе - лучше проявлять разумную активность и не забывать собирать обратную связь.
Не надо быть лучшим
Возможно, от прочитанного может появиться мысль, что надо быть прямо лучшим. Но нет, это не обязательно. На самом деле лучших тоже не любят. И причина в том, что с ними часто невозможно работать из-за гигантского эго: в команде начинаются трения и общая производительно падает, что неприемлемо.
Вместо выводов
Читая этот набор банальностей, в очередной раз, прихожу к мысли, что эпоха роста разработки софта заканчивается. И это логично: всё волшебство программирования давало сильный экономический эффект при переходе от ручного подсчёта к автоматическому, но так ли много осталось неавтоматизированным сегодня? И так ли много нужно людей, чтобы выполнить этот переход?
Большая часть софта, используемого сегодня, была задумана и создана 30-40 лет назад, а всё новое - почти всегда - лишь переосмысление старого. Надо ли ждать схлопывание отрасли или же нас ждёт очередной виток развития - покажет время. Но пока что техногиганты сокращают свои штаты, и увольняют не только барист, но и разработчиков. Думаю, до нас это докатится немного позже. Но хотелось бы ошибаться.