Досье
- Кто: Илья Альтерович
- Кем работал: промышленный альпинист
- Возраст на момент старта обучения: 35
- Место жительства: Одесса, Украина
- Первая работа программистом: через 1 год и 8 месяцев (февраль 2015 года) – в 37 лет.
- Кем работает сейчас: по-прежнему программист, сменил одну компанию=)
- Оригинал истории
Если вам уже 35 лет, — это ещё не повод не начинать учёбу! Конечно, когда у тебя за спиной годы ценного опыта в другой отрасли это не так просто, но вовсе не безнадежно. У нас есть прекрасный пример — Илья из Одессы решил переквалифицироваться из промышленного альпиниста в промышленного программиста именно в этом возрасте. И ему это удалось. Читайте одну из самых увлекательных и основательных историй успеха на JavaRush!
Предыстория
Хочу поделиться своей историей, ибо чувствую на себе моральные обязательства перед замечательными людьми, создавшими этот ресурс, и перед сообществом, которое он породил. Создателей хочется хоть как-то отблагодарить, а «джаварашовцев», ещё пока не достигших своей заветной цели, — подбодрить, и подкрепить хорошей порцией мотивации! Суть: уже две недели я работаю программистом, и это во многом благодаря JavaRush.Мне 37 лет, женат, двое детей 6 и 3 лет. Последние 15 лет я работал промышленным альпинистом (высотником). Работа, как понимаете, связана с программированием чуть менее, чем никак.По большому счёту — работа неплохая, свежий воздух, заставляет поддерживать себя в «форме», хватает свободного времени, сам себе хозяин. Да и по деньгам неплохо (в сезон). НО:
- Имеет ярко выраженную сезонность. То есть 3-4 месяца в году работы практически НЕТ.
- Перспектив НЕТ. Проработав 15 лет на этом поприще, я понял, что в следующие 5 – 10 лет очень навряд ли что-то поменяется (по крайней мере в лучшую сторону).
- Дети стали подрастать, и денег стало явно не хватать…
- Попросту стало надоедать… 15 лет — очень большой срок, тут что угодно надоест.
- работа есть круглый год;
- хорошие перспективы роста;
- значительно выше зарплата (если и не сразу, то в перспективе);
- интересная работа, к которой у меня имеются склонности.
Учёба
Первой моей книжкой по Java стала «Программирование на Java для детей, родителей, дедушек и бабушек» Якова Файна. Не уверен, рекомендовать ли эту книгу начинающим, возможно, есть книги и получше, но на тот момент читать её было интересно и довольно понятно. практические примеры, приведённые там, я тщательно проработал, что дало мне необходимый минимум практических навыков для дальнейшего продвижения. Книжку дочитал, решил поискать курсы. Очные курсы были дорогими, да и не было уверенности, что они того стоят. И в этот момент я вспомнил, что во время работы над книжкой, где-то (на habrahabr, кажется) натыкался на статьи про JavaRush. И всё завертелось… После прочтения и проработки книжки первые 10 – 12 уровней я отщёлкал как семечки, было даже слишком легко. Но всё равно интересно. Дальше стало сложнее и ещё интереснее.Проходил уровни я строго последовательно, т.е. читал лекцию, и пока свежо её понимание решал задачи к ней, и к следующей лекции не переходил до тех пор, пока все предыдущие задачи не были решены, за очень редким исключением. Так я добрался до 20 уровня с 3-5 нерешёнными задачами.При возникновении проблем с решением задач, конечно очень помогает общение на форуме, и в то же время, помогая другим форумчанам, ты сам прокачиваешь свои навыки! Где – то через полгодика я решил, что пора уже попытать счастья и попробовать себя на собеседовании. Погуглил примеры резюме, несколько примеров резюме прислали мне знакомые, также написал Зеппу (глава JavaRush, прим. ред.) и он мне дал несколько советов и шаблонов для резюме. Я его составил и переслал на проверку Зеппу; он высоко его оценил. Далее я разместил резюме на популярных сайтах поиска работы, составил список адресов HR-отделов крупнейших IT-компаний Одессы, в которых были вакансии Java Developer (не только «джунов»). Их оказалось порядка 20. Половину я на всякий случай сразу отложил на случай, если везде облажаюсь, а на другую половину разослал резюме.
Первые собеседования
Не скажу, что меня засыпали приглашениями, но в конечном итоге за месяц-полтора я сходил на полдесятка собеседований. Какие-то оказались более или менее удачными, какие-то — не очень. Было два или три тестовых задания, которые я выполнял с переменным успехом и одно собеседование по разговорному английскому. Его я прошёл успешно, но до технического собеседования не дошло: опередил другой претендент. Ещё я едва не попал на так называемый «бенчмарк» в Luxsoft: прошёл тесты, собеседование, но в последний момент, когда прочитал контракт, одумался и отказался. Если вкратце, то три месяца они тебя учат, и платят стипендию 300$. Если ты им понравишься, они предлагают работу джуном (500$). Через 9 месяцев они могут поднять зарплату, но, как выяснилось из договора, если ты не будешь посещать курсы или после курсов захочешь в течение то ли года, то ли двух, сменить место работы, ты обязан выплатить им компенсацию за обучение в размере 2500$. Я счёл такие условия неприемлемыми, и отказался. Ещё от одной вакансии я тоже сам отказался: мне показалось, что там у меня не будет перспектив.Но главное: я приобрёл очень ценный опыт прохождения собеседований. После каждого собеседования я уже гораздо лучше представлял, что меня ждёт на следующем, какие приблизительно вопросы мне будут задавать, и каких будут ждать ответов… Не то, чтобы на всех собеседованиях задают одни и те же вопросы, но многие вопросы задают почти всегда.Да и после каждого собеседования я составлял себе маленький списочек вопросов, в которых я «плавал», и потом находил на них чёткие ответы. В общем, ходить на собеседования — действительно полезно, независимо от результатов…
Стажировка
Приблизительно в это же время (осень — зима 2013 года), мне написали в личку JavaRush с предложением поучаствовать в «Реальном проекте». Честно говоря, после того как мне перечислили технологии, используемые в нём (Spring, Hibernate, GWT, MySQL, Maven, Git), я слегка испугался, так как по большей части я слышал эти слова краем уха, а то и вовсе в первый раз. Я подумал, что терять мне нечего, время на участие есть, и согласился.Поначалу было действительно ТЯЖЕЛО, но через недельку-вторую, я, почитав книжки и статьи, вник в работу уже имеющегося кода достаточно глубоко, чтобы уже самому что-то написать, и сделать свой первый коммит.С ребятами на проекте мне очень повезло. Нас было четверо Тимур (Timur), Женя (Groomsh), Серёга (SergeyKandalintsev) и я. Курировали наш проект непосредственно из JavaRush. Тимур занимался по большей части бекэндом, Женя — фронтэндом, Серёжа — базой данных, я — немного фронтэндом, немного — бекэндом. Через пару месяцев мы стали первой командой, которая успешно выполнила настоящий «Реальный проект», которым сейчас пользуются все джаварашевцы – это проект «Рейтинги» (в новой версии JavaRush этот проект уже не используется). Сказать, что «Реальный проект» дал мне очень многое — это ничего не сказать! Помимо очевидного прироста ценных знаний, ко мне пришло ещё более важное понимание: Java — далеко не единственный необходимый навык, хотя и основополагающий. Java — это азбука программирования, но кроме азбуки нужно знать правила правописания, грамматику, синтаксис, правильно строить предложения, иметь богатый словарный запас… А в программировании необходимо знать и уметь применять множество фреймворков, паттернов и инструментов разработки, а ещё — знать, где искать решение возникающих проблем и ответов на свои вопросы. После реального проекта я стал интересоваться более продвинутыми технологиями, и углублять свое понимание уже известных мне… Мои интересы вышли за пределы «чистой» Java Core. А ещё — в моем резюме появился новый, солидный, пункт в графе «Опыт работы» с описанием крутых и модных технологий, которые были использованы в проекте.
Дальнейшие мытарства
Стажировка закончилась, у меня начался новый трудовой сезон по высотке… Свободного времени стало мало, вопрос смены профессии отошёл на второй план. Тем не менее, почти всё свободное время я уделял программированию: писал различные «мини-проектики», иногда решал задачки на JavaRush, мониторил вакансии, а в конце осени записался на бесплатные курсы в IT-контору DataArt. Cами курсы оказались слишком обзорными: почти ничего полезного я там не узнал. Зато в рамках этих курсов студентам предложили разбиться на команды и написать «Проект». Проект заключался в написании онлайн-системы тестирования, с регистрацией пользователей, пользовательской частью (прохождение опросников), и админкой (создание опросников и управление аккаунтами). Я оказался в одной из четырёх команд, а в последствии получилось, что проект я писал практически сам. Примерно за месяц (параллельно работая на высотке) я сам написал вполне сносное, как мне кажется, веб-приложение, основанное на тех же технологиях и паттернах которые мы использовали на стажировке JavaRush (плюс jsp, Spring Security, и ещё кое что). Если кому интересно, могу кинуть ссылку на открытый репозиторий с исходниками проекта…Высота взята!
В декабре меня пригласили на собеседование в одну контору. Мне сказали, что позвонят, когда примут решение… «Ну вот, всё как обычно, — подумал я тогда. — Если сразу не взяли, то надежды мало». Но через месяц, уже после Нового года, я написал HR-менеджеру этой компании, и поинтересовался моей судьбой. К моему удивлению она ответила, что вакансия ещё открыта и решение ещё не принято…Прошёл еще месяц, и вот, уже в конце января, она позвонила мне с вопросом, актуален ли для меня поиск работы, на что я «непринуждённо» ответил, что да, пока что ищу. На что она мне ответила, что я её уже нашёл, так как я им подхожу!Ощущение, конечно, непередаваемое, когда тебе сообщают такое по телефону, просто крылья вырастают! Чтобы это понять, нужно самому испытать. Чего вам и желаю в ближайшем будущем! Моя первая работа — участие в разработке крупного проекта ERP—приложения, долгостроя. В приложении оказалось очень много специфических нюансов, поэтому киевской компании-разработчику понадобился программист неподалёку от заказчика — в Одессе, где я живу. Приложение написано на GWT + ExtGWT + Spring + Hibernate + MySQL, и ещё куча вспомогательных второстепенных библиотек. Так уж получилось, что это как раз тот стек технологий, которые я изучал и имею какой-никакой опыт. Из минусов упомяну, что проект старый, и в нём использованы старые версии библиотек и устаревшие подходы проектирования, причём устаревшие настолько, что обновлению уже практически не подлежат. А еще оказалось, что допиливать результат 3-4 лет работы других программистов я буду в одиночестве! Разумеется, я ожидал, что ко мне, как к любому джуниору будет приставлен более опытный тимлид, он же наставник-советчик, который будет меня направлять и проводить ревью моего кода. Но судьба распорядилась иначе, мне доверили работу, рассчитанную на опытного самостоятельного разработчика. «Раз такое дело, — подумал я, — то неплохо бы сходу и прибавку к зарплате попросить». И поднял первоначальную цифру на 200$. Никаких возмущений с их стороны это не вызвало. конкретных цифр не буду называть, лишь упомяну, что размер зарплаты ощутимо превзошёл мои ожидания. К тому же у меня получился всего один (а не три, как обычно) месяц испытательного срока. Оформили меня, как обычно, через СПД (для программистов это — обычная практика).
Технологии, которые вам пригодятся в работе: личный опыт
Очень желательно, даже пожалуй НЕОБХОДИМО знание баз данных, SQL (MySQL), jdbc, Hibernate, Jpa, сетевых технологий html, jsp, servlets, xml, Tomcat. Обязательно знание основных JavaSE-паттернов (так называемые GOF паттерны), так же ОГРОМНЫМ плюсом будет хотя бы поверхностное знание Spring, SpringMVC, сборщика проектов Maven, логирования log4j, юнит-тестирования JUnit. Нужно уметь работать с системами контроля версий, Git например. Иногда спрашивают или дают тестовые задания по веб-сервисам (SOAP, REST). Наряду со всем этим знание Java core должно быть если не безупречным, то, по крайней мере, очень уверенным.Первые впечатления
По истечении первых двух недель я начал вникать в код, и теперь знаю, что всё получится…Хочу сразу заметить, что работа программистом – это всё-таки не курорт, это прежде всего работа, на которую нужно утром вставать и вечером возвращаться. Но эта работа — гораздо лучше многих других. В ней есть и интерес, и деньги, и перспективы. А особенно приятно, когда ты смог этого добиться сам, своим умом, трудом и настойчивостью. Смог изменить свою жизнь, что всё-таки во многом ты сам хозяин своей судьбы.Единственное чего я боюсь, это того, что надо мной возобладает лень. Что добившись определенного результата я обленюсь, и перестану расти в профессиональном смысле. Но всё-таки очень надеюсь, что этого не произойдёт. Ещё раз хочу поблагодарить создателей этого замечательного ресурса! А тебе, джаварашовец, хочу пожелать настойчивости и терпения на избранном тобой пути, как говорил дедушка Ленин: «Пгавильной догогой идёте товагищи!» =) и ещё не потакать собственной лени, и главное «NEVER GIVE UP». Дорогу осилит идущий!
Послесловие: два года спустя…
…решил написать продолжение моей «Истории успеха». Причин тому три:- меня попросила администрация=);
- Я по-прежнему считаю, что именно этот ресурс сыграл ключевую роль в моём «войти в айти»;
- Я по-прежнему уверен в том, что мотивация — это так же один из ключевых факторов в этом деле, а один из лучших мотиваторов — это истории успеха реальных людей, которые были в такой же точно ситуации, как и ты, джаварашевец. Ибо по себе знаю, что временами просто руки опускаются… и у многих уже больше не поднимаются. Это действительно непростой путь, но он того стоит!
- Я ещё не готов, нужно ещё подучиться…
- Та, меня что-то никто не зовёт…
- Закончил 20-30 уровней JavaRush, плюс подучил немного SQL, JDBC. если ещё и основы Spring и Hibernate есть, то ты вообще в шоколаде.
- Накатал резюме по примерам, зарегистрировался на профильных сайтах, выложил его, затем засыпал все IT-конторы спамом со своим резюме. Поверь, без обратной связи ты не останешься, многие просто отпишутся что будут иметь тебя ввиду, а кто-то обязательно пригласят на собеседование.
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ