Как стать Java разработчиком в 35+

Всем привет!  Хочу написать свою первую статью о моём пути из менеджера по продажам / руководителя департамента одного из крупных банков / индивидуального предпринимателя в разработчики, который длился без немногого 2 года. Я постараюсь предоставить некоторые советы и рекомендации тем, кто в начале или середине пути в освоении разработки. Искренне надеюсь, что эта статья будет полезна тем, кто сейчас изучает Java или только планирует заняться ее изучением.

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

Тут подходит время первого совета: у человека есть всё, чтобы осуществить свою мечту. Хочешь стать разработчиком, действуй, удали с телефона инстаграм, и прочие “пожиратели времени” и ты получишь минимум 1-2 часа свободного времени в течении дня. Хочешь стать разработчиком, учи программирование. Если не сейчас, то когда?

Основой моего обучения были 2 тома Хорстмана “Java. Библиотека профессионала 11 издание”, Шилдт “Java. Библиотека профессионала 10 издание”, а также оплаченные видеоуроки на Udemy, и, естественно, бесчисленное множество статей на просторах интернета. Так я начал свой путь. Как уже писал выше, это оказалось сложнее, чем я ожидал. Казалось бы, по каждому вопросу связанным с Java, я находил довольно много материала и описания, где каждая тема очень широко рассматривалась, и после обзора нужной темы сразу появилось ощущение, что я в этом разобрался и тут все понятно, но проходит буквально неделя, и все понимание куда-то пропадало, а к пройденной теме приходилось возвращаться опять и опять. Каждый новый раздел давался действительно сложно, и сроки, которые я сам себе устанавливал для его освоения, постоянно сдвигались. Стало понятно, что теоретические знания, особо не усваиваются без практических навыков. И даже если сейчас кажется, что всё и так понятно, поверь, через месяц ты уже и не вспомнишь, как работает та или иная языковая конструкция, без практики.

Совет второй: Пиши код. Новые знания закреплялись только после упорного набора кода руками, и не просто повторяя за автором видеурока, или переписывая какой-то код с первоисточника, а придумывая себе отдельные простенькие задачки и решая их.

Следующей проблемой, с которой я столкнулся, так это то, что стоило 20-30 минут почитать книгу или посмотреть обзор какой-то технологии на Youtube, сразу, резко начинало клонить в сон, мозг попросту отказывался воспринимать новую информацию. И не важно, сколько времени было на часах, спать хотелось всегда и везде, стоило только подумать о Java. Если ты столкнулся с этим - это нормально, сонливость исходит из того, что ты ровным счётом ничего не понимаешь в изучаемом материале. Мозг теряет причинно-следственные связи и устает от того, что его заставляют тупо освоить то, что кажется ему абракадаброй. Это насилие над организмом, он начинает сопротивляться. Тут всё так же, как с правильным питанием у спортсменов, следует принимать пищу много раз по чуть-чуть. Твой результат будет хуже, садясь за книгу один раз в день и хоть даже на несколько часов. Бывало, даже стоя в городских пробках, я открывал на телефоне книгу и читал по чуть-чуть. Было бы желание, а возможность всегда найдётся. Конечно, я понимаю, что большая часть изучения всё же приходилась на глубокий вечер, когда в доме воцаряется тишина, но уже без инстаграма на телефоне, дополнительные свободные 15-20 минут будет найти несложно.

Совет третий: Планируй время для обучения, и обязательно делай перерывы. Мне было намного проще освоить материал, разбивая учебу на маленькие промежутки времени, есть свободные хотя бы 10 минут, удели их обучению. Если всё же такой возможности нет, и приходиться сидеть за Java ночами по несколько часов, в перерывах желательно делать какую-то физическую нагрузку, например, бег, скакалка, да и обычные приседания подойдут. Поверь, это очень помогает взбодриться. Более того, как я узнал в дальнейшем, мозг усваивает новый материал не в момент изучения, а в периоды отдыха. Так что перерывы не только полезны, а просто необходимы. 

Конечно, в какой-то части пути к достижению твоей цели мотивация пропадет, этот режим выбьет из сил и захочется все бросить, это нормально. Смело делай перерыв на месяц, два, и всегда читай свою заветную записку РАДИ ЧЕГО ТЫ ЭТО ВСЁ НАЧАЛ?

Спустя где-то год, освоив все основные темы в Java Core, я начал задумываться о трудоустройстве, и тут оказалось все самое интересное. К моему большому удивлению, Java Core в чистом виде оказался абсолютно не нужен работодателям, стек технологий оказался куда шире и глубже даже на должность Java-intern, не то, что Junior. Куда не посмотри, везде необходимо МИНИМУМ знания SQL, Spring, Hibernate, Git. Выбора не было, я стал потихоньку изучать базу и основы необходимых фреймворков. В какой-то момент у меня напрочь пропало понимание собственного уровня знаний, и это проблема, я абсолютно не знал, насколько глубоко необходимо углубляться в каждый аспект в Java Core. Достаточно ли понимать, что при сортировке коллекции есть метод sort, и он как-то под капотом сортирует, или надо глубоко разобраться в алгоритмах, которые применяются в Бинарных и Красно-Черных деревьях. Стало очевидно, что мне срочно необходимы собеседования, хоть и неудачные, чтобы попросту узнать свой уровень, объективно увидеть, где есть пробелы в знаниях.

Совет четвертый: Ходи на все собеседования, которых сможешь добиться, сложно передать словами их пользу, но ты сразу увидишь свои пробелы в знаниях, и будешь более четко понимать, к какому уровню необходимо стремиться. Поверь, после каждого из них, ты ощутишь, что как будто на голову вырос в понимании тонкостей разработки.

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

-- ”Ты Фонбет?”- первое о чем спросила она меня. Да-да, именно «ФОНБЕТ» (название букмекерской конторы).

-- "Вероятно, она хотела спросить, фронтенд ли я?" - сразу понял я, но, чтобы не нагнетать обстановку, ответил ей так же, мол нет - нет я не “Фонбет”, я бекенд.

-- "Ааа, нет нам нужен только "Фонбет", давайте не будем задерживать друг друга" - ответила она. Попрощавшись, я ушел.

Печально, конечно, но я сделал выводы. Я понял, что до разработчиков, которые могли бы оценить мои знания, резюме попросту не доходит, оно отсекается сотрудниками HR, которые вообще не понимают в разработке, не знают, чем отличается String от Spring. Да, они выполняют задачи, которые перед ними ставят, но мне было от этого не легче. В конечном счете я решил, что выход только один, (знаю, что сейчас в меня полетят помидоры)- это врать в резюме. Так я и поступил, скинул себе 10 лет возраста, и добавил 1 год опыта. И вуаля, не прошло и одного дня,  звонок, мол так и так, заинтересовало ваше резюме. Чтобы не спалиться, я не стал сразу плакать в трубку и шептать "спасибо", начал расспрашивать о компании. Оказалось, что Московская компания «АмТех» создала школу кадрового резерва (далее ШКАР), суть которой пройти обучение на реальном проекте в их компании, под руководством опытных разработчиков по заранее разработанной ими программе обучения, с дальнейшим трудоустройством к ним. Причем со стипендией 30к, предоставлением техники, печеньками, и прочими бесплатными прелестями. "Какая-то замануха" подумал я. Но все же от собеседования не отказался. Прихожу, и с порога заявляю,

-- "Привет, я Игорь, и я наврал в резюме!"

А мне в ответ: "Красавчик, правильно сделал! Разве можно по-другому с этими HR-ми?" Сказать, что я офигел, ничего не сказать. Видимо, сказано это было для того чтобы снять напряжение и спокойно побеседовать, так оно и получилось.  Отмечу, что это оказался довольно современный подход к собеседованию, мой “мандраж” прошел, и мы смогли нормально пообщаться.  Опущу детали, главное, что в конечном итоге меня взяли, даже без знаний на тот момент Spring и Hibernate, обещали помочь освоить эти технологии за 2 месяца. Так и началась моя стажировка в ШКАРе на реальном проекте. Позже я осознал насколько “глубокий этот Java-колодец”, и начал ощущать так называемый “комплекс проходимца”, старшие разработчики казались “мега-умными”, а я понимал происходящее, как самому мне казалось, с трудом. Но это оказалось нормой, я сразу получил порцию поддержки от тимлида, который объяснил, что это нормально, и к этому надо относиться проще, т.к. всего знать всё равно никогда не будешь, и, вероятно, всегда будут рядом те, кто умнее тебя. 

Совет пятый: если в процессе обучения или начале своей работы, ты многое не понимаешь и чувствуешь себя "самым бестолковым человеком на свете", это нормально, ты на правильном пути. Больше задавай вопросов, спрашивай каждый непонятный момент, все разработчики проходили этот путь. Лучше 10 минут побыть “идиотом”, задавая вопросы и переспрашивая что-либо, чем остаться им на всю жизнь. И что удивительно, это все понимают и поощряют, так как каждый через это проходил и помнит насколько тяжело в начале.

В конечном итоге все закончилось лучшим образом, спустя 2 месяца я всё-таки более-менее разобрался в Spring и Hibernate, и получил свою первую работу в качестве Junior-разработчика. Чего и вам желаю.

P.S. Не совсем совет: знаю, что нехорошо, знаю, что меня сейчас раскритикуют, но боюсь, что у новичка просто нет другого выбора как “приукрашивать” свое резюме, первое трудоустройство - нелегкая “битва”, а на войне все методы хороши.

Средняя зарплата в IT

120 000 ₽/мес.
— средняя зарплата во всех IT-специализациях по данным из 9 851 анкеты, за 1-ое пол. 2021 года. Проверьте «в рынке» ли ваша зарплата или нет! Проверить свою зарплату
Реклама
AdBlock похитил этот баннер, но баннеры не зубы — отрастут

Подробнее

Комментарии 11

    0

    Спасибо за статью!

    Все-таки очень инересно было бы узнать, что двигает людьми и заствляет стать разработчиком в 35+ лет? Не только в этом конкретном случае, но и вообще.

    Разработчик = инженер,

    и чтобы стать [хорошим] разработчиком надо освоить инженерную деятельность, проектирование, дискретную математику, компьютер сайенс и пр.; и язык программирования в даном списке занимает лишь малую часть. Понятно, что когда это все интересно, то можно освоить и в 75+; но похоже, что все эти статьи успеха не для тех, кому просто "по кайфу".

    Зачем? Неужели только из-за зарплаты в долларах?

      +2

      Позволю себе выразить свое мнение относительно Вашего вопроса.

      Во-первых, видимо, дело в том, что то, что Вы называете "быть инженером" формируется не в инженерном ВУЗе, а в глубоком детстве. А жизнь, она складывается по-разному. Поэтому человек может, "будучи инженером", работать до 35 лет в совершенно других сферах.

      А во-вторых, просто есть люди, которые очень любят сам процесс обучения и развития как таковой. Таким в радость за пару лет освоить все то, что некоторые изучают десятилетиями в школе, ВУЗе, на работе (потому что у них и желания часто больше, и самого опыта обучения больше в разы)

      P.S. я, например, начал изучать программирование тоже плюс-минус в 33 (и тоже Java, кстати). А до этого вообще никак не был связан с этой сферой (приходилось бывать много кем и в совершенно далеких местах: и штурманом дальнего плавания, и альпинистом, и гидом-переводчиком, и банщиком, и строителем, и музыкантом, и бизнесменом, но никак не программистом, однако же я склонен считать, что являюсь вполне себе инженером).

        0

        и чтобы стать [хорошим] разработчиком надо освоить инженерную деятельность, проектирование, дискретную математику, компьютер сайенс и пр.;

        Это для FAANG, а для зарплаты 3-6 тысяч долларов этого ненужно, разве что почитать теорию графов.

          0
          Согласен. Так-то мы в основном только JSON-ы и XML-ки туда-сюда гоняем.
          +2

          Я тоже стал java developer'ом в 35+.

          Почему не раньше? Так это... Раньше не получалось.

          Не хватало уверенности, не хватало финансовой подушки "на всякий случай", не хватало описанной автором простейшей идеи - наврать в резюме. Меня тоже никуда не брали без опыта. Никуда это значит "на собеседование".

          А с "опытом" в первый же день закидали приглашениями. Отсобеседовался на отлично в несколько компаний (наврал то с опытом, а знания пару лет собирал), выбрал ту, что понравилась, стал работать. Первые пару месяцев было тяжело, а потом привык.

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

          У меня не стояло никогда задачи стать новым Линусом Торвальдсом или Стивом Возняком. И скорее всего я не смогу никогда вырасти до гениального программиста. Но мне сейчас нравится моя работа. НРАВИТСЯ! А прошлая профессия - не нравилась. Вот и всё.

          Ну и да, на случай, если захочится переехать в другую страну - нанайти работу программистом другой стране всё же легче, чем, найти работу менеджером чего-то там.

            0

            По разному бывает. Я например, ушел в программирование, тоже Java, тоже в 35 просто вернувшись к тому, что мне нравится делать, а также после выгорания от предыдущей деятельности.

              0

              Раньше был стереотип, что в программировании не-математикам делать нечего. Но рынок рос и планка понижалась. Да, я прекрасно понимаю, что если кто-то в 2010 решал теровер на листочке ради 30к. А сейчас кто-то в 45+ по курсам пишет тесты за 70к. Да, это не очень приятно. А что делать. Зато без ВО и хорошей математической смекалки не свалить в США и ЕС. И не получать 300-500к долларов в год. У всего есть свою плюсы и минусы. Не переживайте.

                0

                Собственно много что двигает, жизнь такая штука не предсказуемая, ужас! Эта сфера дает возможность роста, за счет своих знаний и усилий, тут невозможно столкнуться с ситуацией, когда грамотного разработчика отказываются повысить на более высокую должность, т.к. на нее претендует "племянник" директора....с улицы! Меня жизнь забросила в другую страну, не покидая родного города, и весь мой богатый опыт оказался никому не нужен. А программирование это хоть какая-то стабильность, если жизнь закинет в другое полушарие, без работы не останешься!

                З.Ы. Мой родной город Симферополь:)))

                0
                Все-таки очень инересно было бы узнать, что двигает людьми и заствляет стать разработчиком в 35+ лет? Не только в этом конкретном случае, но и вообще.

                потому, что хочется, не?


                и чтобы стать [хорошим] разработчиком надо освоить инженерную деятельность, проектирование, дискретную математику, компьютер сайенс и пр.;

                схерали?

                0

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

                Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                Самое читаемое