• ,

Моя история успеха

20.06.2015 — 09.01.2017

Думаю, пришло время и мне рассказать о своем пути в мир java.

Начну издалека.

Предупреждение, пост будет длинным.

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

Окончив бакалавриат до меня дошло, что работать мне негде, не на что снимать квартиру, а уезжать обратно домой, так ничего и не достигнув мне не позволяло что-то внутри. Так что магистратура показалась мне разумным выходом. Она давала мне время жить в общежитии, пока я ищу работу.

Работу я нашел. Устроился в компанию, которая внедряла ERP системы 1С и Microsoft Navision. Устроился консультантом. Это тот чувак, который является промежуточным звеном между клиентом и разработчиком. Однако руководство приняло решение переделать меня на программиста, тк я знал Pascal. Так и порешили. Стал младшим разработчиком Microsoft Navision. Язык разработки — C/AL. Это практически тот же паскаль, кастомизированный под систему Navision. Т.е. писать на нем нельзя ничего, кроме всяких приблудов для этой системы. Первое время мне нравилось работать. Однако скоро я понял, что как программисту, мне в этой среде очень тесно и как-то не комфортно. Но учеба в магистратуре не позволяла учить что-то другое, да и что лукавить, я был слишком ленив для чего-то другого. Получив от магистратуры все, что я от нее хотел (время пожить в общаге и работу), я с ней кое как покончил.

Начало пути в мир java было положено тогда. Когда я освободился от оков универа, и принял решение изучить какой-нибудь язык OOП. Стал выбирать. С++ слишком сложно — писали на форумах, С# — не помню, что писали про него, Java — востребовано, не так сложно, как C++, есть много литературы, в том числе русскоязычной. Ну java так java (стоит сказать, что в универе я проходил один семестр джаву. Кое как получил зачет и решил, что никогда в жизни не свяжу свою жизнь с этим языком). Когда язык был выбран, не найти javarush было уже невозможно.

Присоединился к этому ресурсу 20 июня 2015 года. Начал учиться. Не знаю, как описать свое обучение здесь. Я не был выдающимся учеником. Я не занимался так регулярно, как самому хотелось бы. Я не всегда решал задачи сам. Я не всегда понимал почему у меня зачлась очередная задача. Я не всегда читал все доп. материалы к лекциям. Я часто бесился, когда валидатор испытывал мои нервы на прочность. У меня бывали большие перерывы в обучении (более месяца), иногда из-за напряг по работе, иногда из-за лени, которую не всегда удавалось побороть. Однако, я бы не нашел работу, если бы изучение java не изменило что-то внутри меня. Впервые в жизни я твердо решил довести это дело до конца. Внутри я говорил себе, что несмотря ни на что, я не брошу это дело. Это была первая цель в моей жизни, достижение которой требовало от меня больших усилий. И первый раз в жизни я говорил себе, что плевать на все, я достигну её. Не знаю, смог бы я также, если бы не было javarush. Этот ресурс позволяет видеть тебе путь до твоей цели. Он тебе как бы говорит: «Вот он, этот путь, 40 уровней и работа». Это очень помогает не бросить.

Купил себе unlimited подписку. Знания паскаля очень помогали в решении задач. И мне действительно нравилось решать их. Сидеть в ИДЕЕ, чувствовать себя крутым разработчиком с классным окружением. Прошел 20 уровней, и решил, что пора по собеседованиям. Я конечно надеялся получить предложение, но больше хотел попасть на собеседование для того, чтобы оценить приобретенные знания, и получить пинок и мотивацию для дальнейшего развития. Все так и произошло. Собеседование я конечно же не прошел, но к моему большому удивлению, все оказалось не так плохо, как я боялся. Однако пинок и дозу мотивации я получил. Я понял важность теории, и с 21 уровня стал активно читать доп. литературу. Ну как активно, с 21 уровня стали появляться вопросы на собеседования по теме уровня. Я и решил, что если отвечу на них, то этого будет достаточно, т.к. я ужасно ленивый. Вот с 21 уровня и стал постить ответы на вопросы по темам уровня.

Люди стали комментировать мои ответы. Был такой коммент: «Спасибо большое за топик. Продолжай вести блог — он для меня как точка опоры: вижу твой ответ и открываю книги, гуглю, пытаясь найти недостающее.» Это очень меня удивило. Я писал только лишь для себя, а оказалось, что кому-то это тоже полезно. Это придало дополнительной мотивации. Я уже чувствовал обязанность отвечать на все вопросы, и постить свои ответы.

Однако время шло, а я развивался только лишь в рамках Java core. Учил только то, что давал мне javarush. А на рынке труда были такие страшные слова, как maven, gradle, jdbc, tomcat, hibernate, spring и т.д. А я был как из анекдота: «Я знаю кун-фу, карате, таэквондо и очень много других страшных слов». Поэтому я решил, что пришла пора расширять кругозор. Стал гуглить, искать уроки по разным темам, начал с jdbc и там пошло. Когда-то меня дико бесило, что я не могу найти нормальный виджет погоды на андроид, еще тогда подумал, что напишу его сам. Это толкнуло меня изучать андроид. По андроиду есть классный ресурс startandroid, там из большого количества безобразно простых уроков, можно сложить что-то не такое-уж и простое. Виджет погоды я так и не написал, однако написал калькулятор, как бы банально это ни было. Во время разработки калькулятора изучил основы регулярных выражений и алгоритм обратной польской записи. Мне нравилось это дело. Но на рынке труда по джаве преобладали вакансии, связанные с Java EE. Поэтому метался между яварашем, java ee и андроидом. Написал небольшое веб приложение, одну логическую игрушку на андроиде. Когда-то я написал морской бой. Решил и его переписать, т.к. более-менее освоил ООП. Можно сказать, что я написал его с нуля, т.к. там был такой шлак, что я не мог понять, как я заставил ЭТО работать, и как ЭТО вообще работает.

Стал снова искать вакансии. Откликался на все подряд. Но меня никто не звал. Целых три месяца. Я не мог понять почему. Я искал инфу о том, как устроиться джуниором. И везде писали о том, как нужно вести себя на собеседованиях. Это конечно полезная информация, но как туда вообще попасть?! Это была действительно проверка на прочность. На каком-то форуме человек жаловался, что уже столько занимается, а его все никак не берут. Кто-то ответил ему: «Такова Java. Слишком высок порог вхождения.» Эти слова вселили какую-то гордость в меня. Да, я испытывал гордость, от того, что порог вхождения действительно высок, и я все равно не брошу. Я говорил себе, что мое дело малое, просто продолжать заниматься, чтобы не произошло. Это, наверное, самое сложное. Просто продолжать заниматься. Изо дня в день. Своим постом я хочу дать всем один совет. Занимайтесь. Верьте в себя и в свою мечту. Не позволяйте никому, и в первую очередь самому себе, бить по вашей решительности. Вы должны не просто верить, что все получится. Вы должны быть уверены в том, что это произойдет, потому что вы не бросите это дело, и будете бить в одну точку, пока не пробьетесь к своей цели.

Почему меня никуда не звали, я так и не понял. Но спустя 3 месяца меня пригласили на 4 собеседования. На три вакансии я откликался. А одна компания позвала меня сама. Это был Яндекс. Я так и не понял, чего они меня позвали. Хотя, это было бы классным завершением моего поста. Но в Яндекс я так и не прошел. На собеседованиях в основном гоняли по теории. Мне очень помогли мои личные проекты, перечисленные выше, которые позволяли менять тему разговора от теории к практике. Так что это тоже как бы совет, это может вам помочь.

Из 4 собеседований, яндекс меня отшил. Другая фирма оказалась шарашкиной конторой. Третья и четвертая обещали перезвонить.

Перезвонили из четвертой, поздравили с успешным прохождением первого этапа собеседования. Выслали тестовое задание.
Описывать его подробно не буду. Но если коротко, необходимо было написать веб приложение, через которое мне нужно было взаимодействовать с интерфейсом мобильного приложения, через стороннюю программу, локально запущенную на компе. Т.е. веб приложение посылало команды стороннему приложению, сторонее приложение посылало команду телефону по wifi, и все это отражалось в веб интерфейсе. Когда я получил тестовое задание, я не знал львиную долю тех технологий, которые нужно было использовать. У меня была неделя. Это был кодерский марафон. Настолько интенсивного кодинга у меня не было никогда. На протяжении недели не существовало в мире ничего кроме меня, и этого проекта.

Закончил его и отправил. Мне перезвонили и предложили работу. Сказали, что им все настолько понравилось, что они приняли решение в пользу меня, еще не успев получить решения от других кандидатов.

С 9 января сего года я работаю автоматизатором тестирования мобильных приложений. Работой сейчас я очень доволен. Много плюшек, в числе которых бесплатное питание весь день, график с 12, гамак в кабинете и корпоративный английский. Иными словами, занимайтесь. Вы делаете это, потому что верите, что оно того стоит. И оно действительно того стоит.