Закончился испытательный срок и пришло время рассказать “как я стал программистом”.

История успеха длиной в год

В ноябре 2014 года я прекратил свою полуторадесятилетнюю деятельность никак не связанную с IT и начал искать себя. В наличии были умение и интерес работать с данными. К этому моменту, уже несколько лет я делал бесплатно и за деньги, небольшие, несложные сайты собранные на СMS Modx и это было скорее хобби. При этом, не угасало желание писать код, которое появилось еще в школе, но не реализовавшееся в силу многих причин. К наступающему Новому Году я точно определился, что хочу работать программистом и оставалось дело за малым: выбрать язык. Я уже видел до этого такие языки как Java и C++, а в далекие 90е писал на Pascal'е и Basic'е. В итоге, взглянув на круг интересуемых задач, конечный выбор пал на Java. И пошел процесс обучения…

Первый заход

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

В первую очередь была подобрана книга и пошел процесс обучения... Через 3 недели у меня не стало сил вообще читать про программирование - это было уныло и скучно. Я слишком переоценил свои таланты и усердие. Еще около месяца я пытался читать мануалы Oracle, что тоже никак не внушало оптимизма. К концу февраля я начал понимать, что мне нужен компьютер... (:

Т.к. я уже несколько месяцев не работал, выбор пал на старый лэптоп претендующий на звание ультрабука, имеющий на своем борту SSD, i5 первого поколения и 3Gb оперативки. К началу марта у меня все было готово к обучению и я встретил сайт JavaRush... Сейчас мне кажется, что это было 7 марта. С этого момента меня нельзя было оторвать от компьютера. Первые очень простые задачи, Intellij Idea, большие задачи, внешние библиотеки и… ...30й уровень. К нему я подошел к началу августа. За спиной были сотни часов кодинга и много тысяч строк кода. Подошел этап реального проекта, который входил в стоимость пакета приобретенного на JR. К этому моменту я уже объективно понимал требования к программисту Java и иллюзий не питал.

Проект

Тестовое задание сразу обозначило мой уровень программирования на уровень чуть выше нуля и я с нетерпением ожидал первых лекций и заданий. Не стану углубляться в стек технологий и описание курса - все именно то, что сейчас требуют от соискателей и правдивый обзор самого курса предлагает сам автор. Коснусь тех вещей, которые не все, как мне кажется, видят. Григорий Кислин - человек, который собрал свой многолетний опыт в несколько часов видео и несколько десятков коммитов, но какой ошеломительный результат это дает тем, кто готов это понять! Это ценнейший набор знаний, который превращает Java в Enterprise инструмент. Уже больше 3х месяцев прошло с окончания курса, а я до сих пор осознаю что именно показывал этот, и вправду, мастер. Самое главное, что Вы получите от TopJava - это заряд интереса и умение учиться новым технологиям в программировании. Проект, который Вы получите по итогу - это уж и не самое главное, но очень даже полезное. Если ты не знаешь технологий и хочешь их знать - тебе на TopJava.

Дополнительные знания

Не могу не дополнить представление о моем обучении. Помимо того, что я сидел от 8 до 15 часов в день за компьютером и решал задачи, я глядел вокруг и вот перечень того, что надо хотя бы потрогать: mysql, postgresql, mongo, js, html, css, linux (debian, mint, ubuntu - выбирай любой), spring boot, freemarker. И, конечно же, за базу надо принимать Java Core и все технологии проекта. В интернете огромный список вопросов для подготовки к собеседованиям (собираю ссылки в разделе Интервью, прим. Григорий Кислин). Очень частые темы: коллекции, исключения, многототочность. Учите английский язык - начните прямо сейчас. Например попробуйте читать документацию. В хорошей компании, где пишут на Java - иностранные заказчики. Возможно вам придется с ними общаться - я был на общем митинге через полтора месяца. В международных компаниях в багтрекерах вся информация тоже на английском языке. Читайте книги. На любом языке, но лучше в оригинале.

Собеседования

Для меня самый познавательный этап. Тут я узнал что конкретно хотят получить от соискателя, подтянул знания в соответствии с требованиями. Старался попадать на собеседования Middle разработчиков и избегал Junior, но и они случались. На Senior не был ни разу. Первое, что обозначилось в мозгу: независимо от позиции на которую ты претендуешь, вопросы на собеседованиях разных уровней одинаковые и отличаются лишь глубиной. Коллекциями интересуются везде (порекомендую Структуры данных в картинках, прим. Григорий Кислин). Иногда задают каверзные вопросы. В этапе хождения по собеседованиям надо отдавать себе отчет в том, что их должно пройти немало, прежде чем ты найдешь ту работу, которая устроит тебя и где устроишь ты. Все собеседования до этого ключевого - твой путь, который надо пройти, пережить разочарования, сделать выводы и пойти дальше. На этом этапе важно не забывать об этом ни на минуту.

Сейчас

На данный момент закончился третий, заключительный месяц испытательного срока в крупной компании-аутсорсере и я много раз вспомнил добрым словом проект TopJava и JavaRush. У меня нет градации, но, как мне кажется, у меня уровень Middle. Вопросов я не задаю - сказывается опыт участия в реальном проекте, задачи получаю большие и решение о реализации принимаю сам. За время работы применил все знания технологий изученных ранее и еще больше для меня новых. Мой испытательный срок закончился ровно через год, день в день, с началом обучения на JavaRush. За 3 месяца коммерческого прадакшна, конечно же, пришло очень много нового опыта и новых знаний и все, что было до этого, кажется уже вовсе не сложным, но от этого нисколько не менее важным.
AlexandrRS, 09/03/2016

К списку историй



Skype