Вот пришла пора и мне рассказать о своей истории успеха.
Могу откровенно признаться, что я никогда не мечтал стать разработчиком. Яникогда не считал себя глупым, но всегда думал, что разработка — невероятно сложное и неподвластное моему разуму дело.
Я честно отучился в ВУЗе 5 лет, получил диплом и работал в ритейле. Был продавцом, дорос до директора, дальше развивался как менеджер, объемы ответственности росли. Знакомство с Java я начал в 2018 году, но не хватило сил и мотивации, так как родился сын и я принял решение уйти на более оплачиваемую должность. К 26 годам я стал региональным менеджером с неплохой для моего региона зарплатой. Я много путешествовал до пандемии, объездил Европу, но при рождении ребенка купил дом и уже не мог никуда выбираться из-за засосавшей рутины, ипотеки и прочих радостей взрослой жизни.
Во время пандемии, я год работал из дома, и масса сэкономленного времени позволила мне вернуться к изучению Java. Где то полгода я ради интереса прокачивался на JavaRush, почитывал Шилдта, Эккеля, в качестве хобби, но целостной картины не было. Когда я докачался до 22 уровня, я подумал, что я уже достаточно хорош, чтобы ходить по собеседованиям и начал откликаться на джуновские вакансии.
Я никогда так не заблуждался. Очень хорошо, что меня не позвали на тех.собеседование, а просто скинули тестовое задание. Ребята, тут я понял, какое же я дно) В тестовом нужно было запилить REST-сервис, прикрутить фронтенд и БД. Я честно пытался в сжатые сроки до дедлайна вкурить про Spring, БД и Vue, но почему-то за неделю я этого не смог.
После такой пощечины я закрыл свое резюме и понял, что так дело не пойдет. Надо не просто уделять 10 часов в неделю и по фану делать змейки, а реально впахивать. Купил курсы по Java на Udemy, вдалбливал Core, потратил уйму часов на многопоточку и стримы и только после того, как смог уверенно отвечать на блок вопросов по Core, перешел к фреймворкам и БД.
Если кто то думает, что чистая Java кому то на рынке интересна, вы очень заблуждаетесь. Будьте готовы к тому, что нужно будет освоить Spring, Hibernate, PostgreSQL/MySQL и прочие Git, Maven/Gradle. Желательно понимать, что же такое SOAP и REST, их отличия.
Только после того, как я это все более-менее понял, я начал скромно откликаться. Тут обнаружилась еще одна ошибка: не стесняйтесь откликаться вообще на все. Меня в итоге взяли туда, где в описании вакансии требовался спец с 3-6 годами опыта и собеседование там было гораздо комфортнее, чем на места, где ищут джуна.
Я прошел три технических и сделал одно тестовое, которое запилил себе в гитхаб. Меня туда не взяли, но откровенно сказать, не особо интересное было место работы. Тестовое было — написать простейший соап-сервис и протестировать его.
На первом собеседовании я жестко перенервничал, мне было дико стыдно за свою некомпетентность, но это нормально и нужно пережить. Мне давали писать код удаленно, сделать ревью участка кода и прочее. Это было очень интересно.
Второе собеседование — это крайне отвратительный опыт. Собеседовавший был с огромным ЧСВ и пытался уязвить меня в каждом вопросе, докапывался до формулировок и прочее. Вопросы были вроде: опишите, что означает метод main и как нужно вводить аргументы командной строки. Я сказал, что на ввод метод принимает массив строк, интервьюер хотел услышать, что они вводятся через пробел. После собеседования, проанализировав, я понял, что я вполне достойно отвечал и не стоит загоняться.
На третьем собеседовании меня собеседовали тимлид и руководитель отдела, собеседование длилось полтора часа. Через полчаса мне позвонили с обратной связью и на следующий день выслали оффер. Сейчас я тут работаю на испытательном сроке: дико сложно, чувство, что мозг может разорваться, но это Java Enterpise, куда уж тут без этого.
Что хочу посоветовать: если вы думаете, что ООП — это 4 определения, вы очень глубоко заблуждаетесь. Нужно очень хорошо понимать полиморфизм, чтобы врубиться в Spring.
Знайте себе цену, не идите работать за еду, не идите к таким людям, как со второго собеседования. Если вы свитчеры как я — не решайтесь на такой шаг, если нет хорошей подушки, хотя бы на полгода. Мне повезло, я работал и параллельно учился. Я упал в зарплате, но моя семья не будет нуждаться в деньгах первое время, психологически комфортно и мне тоже.
Попробуйте собрать хотя бы один REST-сервис и запушьте себе в репозиторий. Я уверяю, что на двух из трех тех.собеседований смотрели мой гитхаб-репозиторий, а еще на одном, наверное, тоже смотрели, но просто не сказали. Уделяйте ему время: потом, когда придете работать, знание гита существенно облегчит вашу и так сильную головную боль. Знайте не просто 2-3 команды, а работайте с ветвлением, переключайтесь, добавляйте фичи, тестируйте — такой проект уже поднимет вас в глазах разработчиков на 90% других соискателей. Пусть этот проект будет косячным, но главное, чтобы в нем был какой-то прогресс.
Ну и если есть вопросы, постараюсь ответить в комментах)
Alexandr Markelov
Java Developer
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ