Войти в IT с нарисованным опытом

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

Короткая выжимка для ЛЛ: я придумал себе 3 года коммерческого опыта, устроился middle Java разработчиком и неплохо себя чувствую, однако для этого пришлось пахать.

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

С моим образованием работу можно было найти, однако душа к этому совсем не лежала. Так что, увы, занимался я последующие лет 6-7 главным образом низкооплачиваемым физическим трудом, что приводило в полное уныние. Мне хотелось своё жильё и семью, но я понимал, что в таком положении я их просто не вытяну по финансам
Да, можно было упереться и получить рабочую специальность, набить стаж и устроиться относительно денежно, однако я знал свои сильные и слабые стороны: ну не рождён я стоять за станком! Пролетарием я буду в лучшем случае средненьким. Не будет мне счастья на этом пути.

Году эдак в 2018 я услышал о том, что если самостоятельно научиться программировать, то даже без корочек вполне можно устроиться на хорошую и денежную работу. Так я начал изучать Python и SQL.
Учился я с огромными перерывами и нерегулярно, как накатывали приступы мотивации. Это очень неэффективно, однако к 2021 году я мог написать калькулятор, "Сапёра" и тому подобную ерунду. Язык я понимал очень неглубоко, как и архитектурные паттерны, но на это моих знаний хватало.

Одна моя хорошая подруга работает в сфере IT (не программист), сказала, что в их фирме берут всех подряд и я мог бы попробовать. Осенью 21-го я собрал небогатое портфолио и выслал резюме на вакансию стажёра.
Первым неприятным сюрпризом оказалось то, что для работы в белорусском IT почти везде хотят разговорный английский, чего у меня не было и в помине. Да, я мог со словарём читать технические тексты, хорошо понимал обучающие ролики индусов, но этого было совершенно недостаточно.
Вторым сюрпризом стало тестовое задание. Когда я показал его в IT-шном чате в Тг, меня спросили: "Они там ничего не напутали, это точно задание на стажёра, а не на мидла?". От меня требовалось написать RESTful CRUD приложение на Django, используя солидный список библиотек и технологий, о которых я даже не слышал на тот момент.

У меня поубавилось оптимизма, но на этом задании я набил руку, кое-как за полтора месяца выполнив большую его часть. Далее много рассылал резюме, даже прошёл парочку собеседований, но всё без толку.

Мой перебравшийся в Россию младший брат на тот момент изучал Java на одном из относительно известных курсов по программированию. Название курсов называть не буду, дабы не сочли за рекламу; просто упомяну, что там учат, как грамотно приписать пару-тройку лет коммерческого опыта и изобразить из себя бывалого программиста. Многие наверное поймут, о ком я говорю.
Сперва прошёл те курсы друг брата, стал подтягивать и моего братишку. Брат советовал перестать душить питона и тоже пойти в Java. Мол и дорожка протоптана, и получают Java-разработчики в среднем больше.

Мне не хотелось менять коней на переправе, однако в апреле 2022-го я плюнул и сел за пару курсов на Степике, которые посоветовал брат. Неплохой бэкграунд в программировании позволил их довольно быстро пройти и взяться за вещи посерьёзнее. Методички и статьи с достаточно глубоким анализом языка, видео с Ютуба и спираченные с Рутрекера курсы...
С начала мая по конец августа я был на сезонной работе, во время которой часто выдавались ненапряжные периоды. Я купил планшет и учился с него, писал бумажные конспекты для лучшего запоминания. Даже простенькую среду разработки установил, правда она оказалась пригодна лишь для изучения алгоритмов, но и то хлеб.
То лето мой друг и по совместительству коллега играл на мобилке, а я рядом яростно грыз код)

До ноября я жил на свою скромные накопления и небольшие халтурки, продолжая самостоятельное обучение. Дальше я приехал в Россию к брату, пошёл учиться на онлайн-курсы программирования, расходы на моё содержание (в т.ч. оплату курсов) взял на себя младший брат. Название курсов не скажу, дабы не сочли рекламой. Самое важное в них то, что там учили врать про коммерческий опыт и проходить собеседования. Теоретическая и практическая подготовка в принципе неплохая, но практические проекты могли бы быть и посерьёзнее. Ближе к концу курса несколько студентов объединяют в команду и они делают какой-нибудь проект - в нашем случае это был бэк для приложения банка. На проект выделили месяц и мы не успели в полной мере его закончить, но нас выпнули готовиться к собесам. Курсы эти рассчитаны на обучение с нуля, так что со своим бэкграундом я их закончил довольно быстро, справился месяцев за 6-7 (мог бы уложиться на месяц-другой раньше, не будь я ленивой задницей).

Нам рекомендовали рисовать от 3 лет опыта. Что логично, т.к. в большинстве вакансий требовалось не менее 3, укажешь 2 года и 11 месяцев - количество приглашений на собеседования будет существенно меньше. HRы, что с них взять...
Я нарисовал опыт в IT отделе одного белорусского сетевого магазина. Я рассудил так: если спросят про запись в трудовой, то просто скажу, что трудовая книжка осталась где-то в Беларуси и найти её проблематично. Ну а если спросят контакты кого-то из моих руководителей, то просто дам Тг кого-нибудь из моих знакомых. У многих это прокатывало :) Забегая вперёд скажу, что никто трудовую не спросил, как и рекомендаций с прошлого места работы.
Белорусский IT-сегмент я не рассматривал из-за его крохотных размеров, который после СВО стал ещё меньше. К тому же везде нужен разговорный английский, который так у меня и не появился. Ну а братья-россияне отгрохали свой рынок, где английский нужен постольку-поскольку, за что им огромное уважение.

В качестве ухода со старого места работы выбрал устаревшие подходы на проекте. По моей легенде там использовался монолит без перспектив к переходу на микросервисную архитектуру. Я плохо ориентировался в микросервисах, поэтому не решился изображать коммерческий опыт с ними. "Ушёл с прошлого места, потому что хочу развиваться. Нет, у меня отсутствует коммерческий опыт работы с микросервисами от года, который все так страстно желают от соискателя, но я горю желанием учиться и могу с вами поговорить о теоретической базе этой архитектуры", - я придерживался такой схемы в собеседованиях. Кое-где я не смог пройти HRов из-за этого, но решил, что в случае приглашения на работу так будет проще оправдать своё незнание некоторых вещей.
Поначалу тревожился, что могут запрашивать GitHub с какими-то примерами моего кода, но меня успокоили, что при собеседованиях на мидла и выше никто этого не делает. А если и делает, то ответ элементарный: "Никаких пет-проектов особо не делал. Свой рабочий код показывать не буду - это коммерческая тайна. Есть вопросы к моей квалификации - собеседуйте, проводите лайв-кодинг при желании, там всё увидите".

Проходил я по два-три собеседования в неделю. До начала СВО, говорят, можно было за день назначить по два собеседования в день на неделю вперёд, рекрутёры писали сами. Однако теперь стало существенно хуже: чтобы получить одно предложение приходилось делать десятки откликов.
Я рассматривал только вакансии с полной удалёнкой и доходом от 220к в месяц на руки. В идеале надеялся на возможность работать из-за рубежа, но был готов остаться в России, ибо в большинстве случаев по Java-backend работодатель хочет, чтобы работник находился в РФ. Наверное из-за соображений безопасности. Если разработчик что-то напакостит, то попробуй его достать откуда-нибудь из Грузии или Польши.

В дальнейших своих приключениях считать и описывать буду только технические собеседования со специалистами, разговоры с HRюшами не являются чем-то особо сложным и интересным.
Первое моё собеседование прошло, как бы помягче сказать... Да я в жизни так не обсирался! Второе и третье прошло примерно в том же ключе. Стресс был такой, что подмывало сказать: "Ребята, я не настоящий сварщик, маску на стройке нашёл. Давайте мы закончим и я пойду?", однако меня держало понимание, что мне нужен опыт, даже такой.
Порою меня спрашивали вещи, касающиеся производственного процесса, которые я вообще не понимал, в этих случаях просто с серьёзным видом отвечал что-нибудь наобум.
Третье уже было сносным. Четвёртое неплохим, но я допустил грубую ошибку и скорее всего из-за неё меня уже не взяли. После пятого я получил оффер.

Собеседовал меня тимлид. Сразу мы потрепались на общие темы, вроде сфер деятельности кампании, организации работы, моего опыта. Технический собес договорились провести в другой день и получился он лишь с третьего раза: сперва я из-за паники ("ААААА, Я НИЧЕГО НЕ ЗНАЮ!!!") сказался больным и попросил перенести на пару дней, потом тимлид из-за занятости пропустил созвон. Он в целом человек занятой, техническое собеседование по итогу проводил в аэропорту, прислонившись к колонне, как потом сам сказал.
Вопросы были на удивление несложными. Посыпался разве что на многопоточке, но лид ответил: "Ну и ладно, оно нам не сильно важно".
Оффер мне прислали через 20 минут после собеседования. 220к, полная удалёнка с возможностью работать откуда угодно, как я и мечтал.
Недавно разговорились, вспомнили мой найм:
-У меня сложилось впечатление, что у тебя совсем не было времени перебирать большое количество кандидатов и ты в меня вцепился, как в первого более-менее подходящего.
-Ой, там выбирать-то и не приходилось. До тебя там такое дно было, а ты показал уровень крепкого мидла - надо было брать.
Итого я получил работу чуть больше чем за три недели поисков.

Какая же меня накрыла эйфория после оффера... Мне так била энергия в голову, что после того как похвастался друзьям-знакомым, пошёл бегать. Лишь кросс в 5 км помог как-то унять бушующие чувства. Вернулся домой, поел, отдохнул... И перед сном ещё примерно столько же навернул, ибо просто не сиделось на месте. За год до того я зарабатывал менее 20к в пересчёте на российские, а тут в 11 раз больше. Я столько шёл к этому, даже не верилось, что добрался до цели.

Понятно, что приём на испытательный срок был не финишем, а лишь началом ещё одного пути. Я боялся трёх вариантов развития событий:
1)меня спалят и с позором выгонят;
2)работа окажется для меня слишком сложной;
3)я выгорю и буду заниматься ненавистным делом чисто ради денег.
Так что первые рабочие дни я встречал в мандраже. Старался держать глаза открытыми и впитывать информацию по организации работы в команде, благо что ещё братишка подсказывал, какие вопросы надо задавать.
На практике же задачи оказались проще, чем я думал. Решающим фактором были софт-скилы, которые оказались у меня на высоком уровне (это явилось приятной новостью, т.к. всегда думал, что они у меня наоборот, низкие).
Алгоритм решения задач оказался таким:
1)внимательно изучи задание;
2)если не понял задание, то достань лида/автора задания/другого сведущего человека вопросами до тех пор, пока не поймёшь его полностью;
3)изучи код, найди проблемное место;
4)если вообще понятия не имеешь, где искать проблему, то сперва найти человека, который это понятие имеет. Достань этого человека вопросами до появления понимания;
5)если в процессе выполнения задания столкнулся с трудностями, которые не можешь решить сам, то обращайся к старшим товарищам. Описываешь в подробностях, что сделал, что не смог сделать, в каком методе/на какой строчке происходят трудности. Обращаться с запросом не "Я ничего не понимаю, помоги", а "Я не понимаю это место, я перепробовал такие варианты, исключил вот такие причины. Предполагаю, что проблема может быть вот в этом, помоги";
6)???
7)PROFIT!!!

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

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

Оказалось, что с выбором профессии я угадал, мне нравится и я справляюсь. После целых лет временных работ и случайных подработок очень классно ощущать себя востребованным специалистом.
Да, я порою устаю на задачах типа "*имя*, я не знаю, как это сделать. И никто не знает. Но я в тебя верю!", жопа от непонимания происходящего может гореть очень сильно. Выручают Гугл и ChatGPT. Да, GPT много врёт и достать из него верный ответ бывает трудно, но он оказался весомым подспорьем.
Работаю обычно часа по 3-4 в день, больше просто бесполезно. Я слышал, что некоторые сидят за кодом по 14 часов, но не представляю, как это возможно. Могу в случае крайней нужды писать код/активно думать часов 5-6, но на третий день я стану полностью бесполезен.
Тут как-то мелькали вырезки выступлений каких-то акул российского IT-бизнеса с конференции, где они сетовали на охреневших программистов, которые хотят пить кофе, стонать о выгорании, но не хотят работать больше 4 часов в сутки. У меня вопрос к таким начальникам: "А вы сами сколько сможете писать код в таком темпе? Сколь скоро потребуются услуги психиатров и антидепрессанты?". Пусть в жопу идут.
Я в течение рабочего дня могу готовить, выйти на пробежку, смотреть в окно и т.п., что будет выглядеть как безделье. Однако в этот момент происходит отдых и мыслительная деятельность. Часто я лежу на кровати, смотрю вверх, а мозг сам собой проецирует на потолок блоки кода, подсвечивая потенциально проблемные места и подсказывая решения.

Что я хочу сказать людям, которые хотят пройти по моему пути:
1)не так уж страшен чёрт, как нам его малюют. Я неоднократно слышал, что в IT попадают лишь особо прошареные чуваки с особыми мозгами, всех остальных ожидают провал и выгорание. Однако это оказалось не так, по крайней мере для меня, а я не отличаюсь некими выдающимися дарованиями;
2)это не так просто, как говорят многие школы программирования. Соискателей на вакансии джунов/стажёров как собак нерезаных, а самих вакансий мало. Это не значит, что обязательно надо врать про опыт, как сделал я - прекрасно понимаю, что не все люди отличаются достаточной наглостью, хитростью и уверенностью в своих силах, чтобы срезать углы. Большинство "вкатунов" из себя ничего не представляет, так что старайтесь, учитесь, пишите пет-проекты. Да, среди сотен анкет до вашей скорее всего доберутся нескоро, однако после множества попыток вас рано или поздно заметят. Наберитесь терпения;
3)нужна мотивация, много мотивации. Даже не знаю, что тут добавить. Моё недавнее положение стало для меня невыносимо, так что её у меня было предостаточно. Если сомневаетесь в своих силах и способностях, то начните хоть с курсов на Степике, попробуйте написать какие-то свои проекты. Если не получится даже это, то о чём говорить?
4)очень желательно заручиться поддержкой семьи, близких, ну или хоть иметь какие-то сбережения. Трудно учиться, если 9 часов в день тратишь на работу и дорогу (в лучшем случае), а на код остаётся час-полтора вечером. В таком случае либо мотивация должна зашкаливать, либо... Либо готовьтесь к очень долгому и малоэффективному пути;
5)вливайтесь в сообщество разработчиков. Русскоязычное коммьюнити не столь токсично, как принято думать. Например когда я изучал Python, то у меня возникла проблема со средой разработки, которую я никак не мог решить сам, о чём я сказал в одном чате. Незнакомый человек почти полчаса копался удалённо в моём компе, при этом у меня не было микрофона, чтобы общаться с ним голосом - я просто писал ему свои вопросы и догадки текстом в командной строке и в коде. Если появятся друзья-программисты, то дело всяко лучше пойдёт, особенно если учитесь сами, а не на каких-то курсах.
6)если ищете работу в Java-backend, то изучите коллекции в совершенстве. Как устроены, в каких случаях используются, чем отличаются ArrayList и LinkedList, что общего у Set и Map, как разрешаются коллизии, какова сложность основных операций в каждой коллекции и т.д. и т.п.. На собеседовании могут не спросить про многопоточку, сборщик мусора, жизненный цикл бина, но коллекции спросят всегда.

Текст надо бы как-то красиво завершить, но я не придумал концовку. Так что просто удачи.

Больше постов читайте по тегу «Онлайн-курсы». А если сами хотите изучить новую профессию, посмотрите актуальные курсы от проверенных школ на сайте Пикабу Курсы.

Лига программистов

1.5K постов11.4K подписчика

Добавить пост

Правила сообщества

- Будьте взаимовежливы, аргументируйте критику

- Приветствуются любые посты по тематике программирования

- Если ваш пост содержит ссылки на внешние ресурсы - он должен быть самодостаточным. Вариации на тему "далее читайте в моей телеге" будут удаляться из сообщества