Как найти работу java без опыта

от admin

Из юниоров в разработчики: получаем первую работу

Здравствуйте! Коротко о себе: программирую с 1989 г., с 2005 года в Java, с 2013 года работаю Java-тренером (до января этого года совмещал с основной работой Java-разработчика). Достаточно много моих выпускников трудоустроились, и я хочу поделится своими соображениями, как получить работу Java-разработчика (и не только Java).

От изучения Java до получения оффера работы — большое расстояние

Требования к кандидатам на вакансию Java разработчика достаточно высоки, см. пример тестового задания на джуниора от одного из аутсорсеров РБ. Конечно есть позиции и с меньшими требованиям, но их не так много и, по статистике на Украине (dou работает через прокси, в России не нашел), соотношение Отклики/Вакансии на такие позиции: от 20 до 50.

Для вакансий с опытом работы (которых значительно больше) получается замкнутый круг: без опыта не получить работы, а без работы не получить опыта. На вопрос «Кто виноват?» ответ очевиден — компании, которые не хотят вкладывать время и деньги в обучение, а хотят получить уже готового специалиста. Остается главный вопрос:

Что делать?

Крупные компании в основном закрывают позиции юниоров своими стажерами. Один из вариантов трудоустройства — пойти на стажировку, но

  • здесь также большой конкурс
  • далеко не все, успешно окнончившие стажировку, получают работу
  • иногда условия обучения достаточно тяжелые и подойдут не всем. Из отзыва про стажировку в EPAMе РБ:

  • Хорошее резюме
  • Приглашения на собеседования и тренировка в их прохождении
  • Получение оффера

Позиционируйте себя НЕ как юниора.

Для этого необходимо:

  • Хорошее понимание основ: как устроена память, что такое JMM, опыт работы с сервлетами, JUnit, SQL
  • Уровень выше Java Core: основы Maven, Spring (MVC, Security, Test), JPA(Hibernate), REST. Также желательно основы JavaScript и HTML/CSS

Лучше всего делать его на основе небольшого проекта на популярном стеке, например референсной имплементации Spring Pet clinic. С первого раза сделать код красивым и правильным не подсилу даже синьору. Проект должен жить и нести его владельцу радость приобщения к красоте кода через рефакторинг. И, кроме понимания технолигий и развития чувства перкрасного, из работы над собственным проектом Вы получаете навыки нахождения красивых и практических решений для конкретных задач и решения конкретных проблем, из которых состоит ежедневная работа программиста. Для этого нужно:

  • понимание, как работают фреймворки, на чем они основаны, какие паттерны используются
  • кругозор, навыки решения подобных задач
  • работа с инструментами: Git, IDEA, Maven, Tomcat, DB клиент, тестирование REST сервисов
  • умение находить правильные решения в интернете (70-80% это умение выбрать из найденного в Stackoverflow)
  • Ведет преподаватель с опытом в Java разработке, лучше как синьор или архитектор
  • Максимальный охват: самые важные и необходимые Java разработчику темы, API, фреймворки, инструменты в одном курсе.
  • В течении тренинга разрабатывается законченный Enterprise проект. Темы идут не по отдельности (в воздухе) на отстраненных примерах, а последовательно, в связке, как дополнения к созданию единого работающего приложения.
  • Последовательное возрастание сложности: от нуля до деплоя готового приложения в облако
  • Практика! Участники на протяжении всего курса должны работать с кодом проекта. Объязательны домашние задания. Если дают только теорию (всего понемногу), то это, на мой взгляд, выброшенные деньги и время. Без практики любое обучение (Java, английский, езда на велосипеде) ничего не стоит.
  • Поддержка группы и преподавателя: возможность задать любой вопрос и получить на него квалифицированный ответ.
  • Доступность и структурированность материалов
  • Ревью Вашего кода.
  • Помощь в составлении резюме и с трудоустройством. Если вам гарантируют по окончанию 100% трудоустройство — не верьте. Хорошо сказано в статье про работу разработчика:

Как начинающему Java-разработчику получить первый оффер: мнение Альфа-Банка

Какие навыки потребуются для успешного прохождения собеседования на Java-разработчика? Сколько разрабы получают на старте и за какое время можно вырасти до middle? Вместе с IT-архитектором Альфа-Банка Максимом Чернухиным разобрались, как новичкам прокачать образование и карьеру, чтобы получить работу. А также посмотрели на особенности трудоустройства junior-джавистов в Альфа-Банк.

Еще во время пандемии спрос на IT-специалистов сильно вырос — многие компании стали стремительно осваивать онлайн. Параллельно на этот тренд наложился демографический спад среди поколения миллениалов и зумеров, на которых приходился основной массив разработчиков. В итоге с середины 2020 года и по сей день на рынке ощущается нехватка «свободных» middle-специалистов. А потому компаниям пришлось задуматься о взращивании собственных айтишников.

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

Другое преимущество — возможность вырастить узконаправленного специалиста под задачи компании. Если вам на постоянную основу нужен разработчик с редким стеком, чаще бывает выгоднее обучить его внутри коллектива, чем искать на рынке.

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

Самое главное для junior-разработчика — наличие базы технических навыков в Java. Вот список стартовых hard skills:

  • Знание основ языка и ООП (объектно-ориентированное программирование);
  • Базовые знания одного из популярных фреймворков Java, например, Spring;
  • Понимание принципов работы микросервисов и умение упаковывать их в контейнеры;
  • Умение работать с базами данных: знание PostgreSQL будет плюсом.

Если говорить о soft skills, то логическое мышление и непрерывное образование — действительно необходимые для развития требования. Новичку важно набрать как можно больше теоретических и практических основ: с этим могут помочь популярные онлайн-курсы и стажировки.

Начинающие разработчики могут получить оффер с помощью одного из этих способов:

  • Стажировки
    Это оплачиваемая возможность получить опыт, который помогает в будущем попасть в штат. Для попадания на стажировку необходимо пройти скрининг, то есть соответствие кандидата уровню джуна, и техническое интервью. В среднем стажировки длятся до полугода. Даже если новичок в итоге не получит оффер, он сможет понять, какие навыки нужно прокачивать.
  • Обучающие проекты
    Это образовательные программы от компаний для тех, кто только закончил вуз, начинает прокачиваться в IT или хочет сменить индустрию. В Альфа-Банке это проект Alfa Campus — трехмесячные курсы по тестированию, системной аналитике и микросервисной архитектуре. На всех программах студенты работают с Java. Первый поток мы запустили в апреле. Набор на продвинутый курс по микросервисной архитектуре стартует в июле. Лучшие студенты кампуса будут приглашены в штат.
  • Образовательные платформы
    Стереотип о том, что выпускники образовательных платформ и программ дополнительного профессионального образования обладают недостаточными для полноценной работы навыками, уходит в прошлое. Напротив, для многих крупных компаний упоминание курсов в резюме соискателя становится показателем высокой мотивированности и искреннего интереса к профессии. Кроме того, компаниям удобно взаимодействовать с кузницами кадров внутри EdTech. Например, в Skillbox существует Центр карьеры. Профессиональные HR-консультанты начинают общаться с пользователями на шестом-седьмом месяце обучения, помогают подготовить резюме и портфолио, организовывают собеседования.
  • Собеседования
    Проверить свои навыки можно через прохождение собеседований на открытые позиции. Многие крупные компании выкладывают вакансии на специальных лендингах. Вот наш: job. alfabank. ru. Как правило, для начинающих специалистов отбор состоит из тестового задания, технического интервью и общения с командой. Не бойтесь пробоваться на позиции в крупных компаниях, ведь даже отказ — шанс получить обратную связь и прокачать навыки. Главное — составить подробное описание резюме. Расскажите, чем вы уже занимались, что умеете. Пусть даже навыков немного, но честность и детали уже выделят резюме среди других для HR. Покажите, что вы готовы учиться и умеете это делать: например, можно рассказать, как изучили какой-то блок языка самостоятельно. Покажите, что можете отдавать много времени Java: тогда ваши шансы на трудоустройство сильно вырастут.

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

Что нужно, чтобы повысить шансы на попадание в штат? Теоретическая и практическая база. Показать ее можно, например, с помощью личного IT-проекта из портфолио — реализованные программы, код. Желательно, чтобы он был создан в команде — так соискатель подтвердит, что у него все в порядке с soft skills. Сегодня, если у кандидата отличные hard skills, но он не умеет работать в команде, высока вероятность, что его не возьмут.

А вот наличие диплома о высшем образовании по специальности уже не является критерием отбора. Для начинающих разработчиков важнее умение и желание учиться — в резюме эти навыки можно показать, например, другими стажировками или пройденными курсами по Java.

Как и в случае со стажировками, после найма к junior-разработчику приставят ментора. Обычно это опытный специалист, который поможет с погружением в проект и отследит эффективность работы и обучения. Наставник даст советы для прокачки и hard, и soft навыков. Но здесь важно отметить, что на старте карьеры разработчика основной фокус будет идти именно на технические навыки и исполнительность.

Junior-специалисты занимаются теми же проектами, что и другие, но задачи для них прописаны детальнее или декомпозированы. У нас в Альфа-Банке они, как правило, связаны с микросервисами — небольшими блоками, из которых состоят приложения. Со временем уровень сложности по проекту растет. Появляются задачи, по которым нужно провести ресерч и попробовать несколько способов решения.

Раз в квартал разработчики проходят сессии с руководителем, на которых он оценивает результаты проделанной работы. В Альфа-Банке мы выработали целую систему, которая позволяет определить зоны роста. На сессии обсуждаем со специалистом, на какие навыки ему нужно обратить внимание, и смотрим динамику его прогресса.

Рост до следующей ступени, middle-разработчика, в среднем занимает год. Это медианное значение — скорость повышения зависит от мотивации и опыта начинающего специалиста. При этом получить повышение по зарплате можно и без перехода. Например, если junior-разработчик решил важные для компании задачи, его могут наградить премией или увеличением ставки.

В Москве зарплатные ожидания у разработчиков в среднем такие: джуниор специалист может рассчитывать на сумму от 60 до 140 тысяч рублей в зависимости от компании. Специалист уровня middle может получать до 250 тысяч рублей, а у senior-разработчиков зарплата доходит и до 350 тысяч. В регионах эти суммы стоит умножить на коэффициент 0.8

Чем дальше растет специалист, тем больше увеличивается время, необходимое для перехода на следующий уровень. На то, чтобы получить навыки senior-разработчика, точно уйдет больше года. С повышением грейда на передний план выходят soft skills: умение управлять командой, мотивировать и вдохновлять, ставить задачи, прорабатывать архитектуру и мониторить процесс. Эти навыки нарабатываются опытом и практикой.

Самое важное для старта в IT — это личное желание человека. Тогда не будет страшно пробовать, совершать ошибки и совершенствоваться. Горящие глаза обязательно оценят HR-специалисты и будущая команда. Рынку нужны разработчики. Поэтому с каждым днем появляется все больше инструментов и каналов для быстрого старта и профессионального роста ньюкамеров.

Как я стал Java Developer в 30 лет ⁠ ⁠

Хочу поведать историю, как я «свичнулся» в IT в 30 лет. Постараюсь описать как можно подробнее, чтобы люди знали, что их ждёт в этом нелёгком пути. Мне бы такая информация была бы крайне полезна в начале моего пути, что и сподвигло на написание поста.

В IT я хотел давно, да не знал как. Это сейчас — гугли, читай отзывы, выбирай курсы. Родился я в маленьком городе на Днепропетровщине и инета там не было от слова совсем аж до моего отъезда из этого города в Днепр на учёбу в универ.

Я хотел поступить на программирование, но планка в Киевском политехе на эти специальности была крайне высокая, денег на контракт у родителей не было, а в ДНУ на физтех я поступил, как запасной вариант.

Во время учёбы мне казалось, что я буду крутым инженером в ракестроительной промышленности, но мои стремления разбились о ЗП ниже, чем стоимость съема квартиры на тот момент.

Далее последовала моя «карьера» менеджера по продажам, ибо кушац хочется.

2 года в первой конторе у меня не получалось совсем ничего, меня тошнило от процесса работы и надобности вылизывания жоп клиентов. Я уволился «в никуда» и совершил свою первую попытку свичнуться. Засел за JavaRush и эти ваши интернеты и 2 недели упорно занимался. А потом начали кончаться деньги и я пошёл искать очередную работу, тоже менеджером(

Там я был намного успешней и проработал 5 лет. Уходил на хорошей ноте, мне там всё нравилось и устраивало. Кроме перспектив развития.

Наконец, мы подошли к главному: на третьем году работы в конторе я понял, что это не то, чем желаю заниматься до конца жизни. Но как перепрофилироваться? Помня предыдущий опыт, понял что:

1. Обучение языку программирования с работой — несовместимо.

2. Деньги быстро кончаются, если их не зарабатывать. (Да, да: где моя лодка?)

3. Нужен английский.

Поэтому было принято решение копить средства. И параллельно я начал учить английский, т.к. на него времени хватало.

Через 2 года к моменту увольнения я располагал средствами, которых по расчётам должно было хватить минимум на 1 год жизни без работы.

Далее по отзывам нашёл одну IT School (без названия, чтобы не быть обвинённым в рекламе).

Они предлагали сделать из меня крутого прогера за 3 курса: 2 + 4,5 + 2 месяца. Всё выглядело прекрасно и я начал обучение. Это было прямо с нуля, начинали мы с программы «Hello world!».

Закончив первые 2 курса: Java Introduction, Java Elementary меня ждало первое отхождение от плана: группы на Java Enterprise не набралось и следующий набор обещали не раньше сентября (а дело было в мае). Как понимаете, гулять мне было вобще не прикольно, деньги тают, опыт не обретается, как писать приложения я ещё не знаю.

Начал судорожно искать, чем бы заполнить пробел и нашёл набор на Java Online Marathon от одной известной украинской конторы из ТОП-5. Прошел тесты, оплатил денюжку и погрузился с головой в процесс. Это было очень сложно. Моих знаний было явно не достаточно. На марафоне было крайне мало информации от менторов, дэдлайны по сдаче решений, зубодробительные тесты, которые вобще ХЗ, как проходить с первого раза с вопросами, типа не «как надо» или «что это», а «если мы эту хрень сделаем вот так, заработает ли это вобще, а если не заработает, то ещё и почему?».

Но это дало свои плоды. За 2 месяца марафона я прокачал скилы круче, чем за 6 месяцев ранее на вялотекучих курсах. После этого была сертификация подытоживающая наше обучение. И после её прохождения я начал рассылать резюме в разные конторы.

Было несколько собеседований. Одни очень сложные, другие не очень. Но после второго уже не страшно ничего, если честно.

Итог: 10+ рассылок резюме, 6 ответов HR, 3 собеседования, 1 вступительный тест, который я не знаю чем закончился, далее не пробовал продолжать с этой конторой. 2 дня назад, наконец, получил свою первую работу в качестве Trainee Java Developer со ставкой в ***$.

Немного сумбурно написано, конечно. Но хочу кое-что сказать ребятам, только подумывающим свичнуться (в любом возрасте):

1. Учите английский! Java до преемлимого уровня можно выучить за 8 месяцев, английский я учу уже 2 года и сдал сертификацию только на Intermediate Strong. Во многих конторах с Вами даже не будут проводить техническое собеседование без знания английского.

2. Учитесь считать свои расходы и копить средства минимум на год. Мой путь занял 11 месяцев, но я считаю, что мне повезло в некоторых моментах, что одни курсы заканчивались и сразу начинались другие и вакансии появлялись вовремя. (Напомню что дело происходит на карантине и вакансий не было вообще ещё месяц назад приемлимых).

3. Программист кодит не головой, а руками, как это не парадоксально звучит. Мышечная память рулит)

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

5. Не бойтесь конкуренции. Из 60 человек на марафоне до финала дошли человек 20, примерно. Из них я знаю только о трудоустройстве 3 точно. Некоторые не дожимают до конца, боятся ходить по собесам. А зря.

6. Развивайте LinkedIn. Сначала Вы работаете на профиль, потом профиль работает на Вас. Оттуда мне пришло 2 приглашения на вакансии. Не успешные, но всё же техническое интервью в одной было очень интересным.

7. Не заканчивайте дело только отправкой резюме в форме на сайте. Найдите контакт HR и напишите, что отправили и интересуетесь, дошло ли. Сейчас прошли сокращения в их рядах, а работы, наоборот, прибавилось. Поэтому не стесняйтесь о себе напоминать, иногда они просто теряют резюме. Так было со мной. В текущем месте, куда меня взяли, я 2 раза отправлял резюме: один раз напрямую и через посредника — знакомую HR из IT School, где я учился. Так вот: ни одно не дошло. Нашел контакты, написал в телегу HR и уже на следующий день было назначено техническое интервью.

8. Дерзайте! Этот путь был очень интересным, я нашёл несколько единомышленников и хорошего нового товарища в пути (в 30 лет это очень тяжело, поверьте). Мир IT огромный, многогранный. Он отличается от того, что знал до этого. И я рад стать частью его!

Если что-то интересует или считаете, что тема недостаточно раскрыта, то добро пожаловать в комментарии. Постараюсь на всё ответить.

P.s. Я знаю, что ТруЪ прогеры, которые впитали байткод с молоком матери, не любят свичеров. Т.ч. сразу предвижу от них волну хэйта в комментах. Но всегда рад конструктивной критике без безпочвенных обвинений и предъяв.

>> 3. Программист кодит не головой, а руками, как это не парадоксально звучит. Мышечная память рулит)

Такая лажа канает только для банальных рутинных задач. Для нормальных задачек всегда нужно включать мозг

3. Уже сказали. Тоже не совсем согласна с пунком про руки и голову. По-моему написание самого кода занимает 10% времени. Остальное — обдумывание.
4. Выбирайте самые сложные курсы из возможных по отзывам. Чем больше Вам будет непонятно, тем большему количеству вещей Вы научитесь и намного качественней, чем от разжёванного материала.

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

7 лет назад ушел из IT, дойдя там за 15 лет от HTML-верстальщика до ПМа по Java-проектам. Что там сейчас популярно в server-side Яве?

какая интересная промышленность

Ровно год назад я мечтал стать программистом. ⁠ ⁠

Я даже не представлял какие существуют направления в IT. Бэкенд, фронтенд, датасаенс — эти слова казались каким-то набором букв, значений этих слов я не знал.

10 марта 2022 года мне в личку постучался читатель с вопросом никак не связанным с IT. В конце сообщения он оставил подпись:

С уважением

<censored> Дмитрий.

<censored> Studio — Lead Producer

Я ответил на его вопрос и решил задать встречный. У меня в кругу знакомых и друзей не так много людей из IT-сферы, поэтому я решил задать все интересующие меня вопросы моему читателю. В ответ я получил сообщений 20 с информацией о том, какие направления существуют, кто чем занимается, где возможна удаленка и кому сколько платят. И ещё десяток ссылок на полезные статьи/книги/ресурсы.

Год назад я был далек от разработки настолько, насколько я далек сегодня от космонавтики. То есть полный 0. Но, как оказалось, довольно перспективный ноль, ведь я прошел путь от нуля до первой работы разработчиком за 7,5 месяцев. И это реальное достижение, которым я горжусь. На своем пути я встретил замечательных людей, которые уже давно в разработке и которые не отказались мне помочь.

Прошел ровно год с того момента, как я задал вопрос «а как войти в IT». Сейчас я работаю Java-разработчиком, успешно прошел испытательной срок (тут подробнее об этом), получаю настоящее удовольствие от рабочего процесса, от условий работы и от общения с коллегами.

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

А вот то самое сообщение, которое стало судьбоносным для меня:

Ровно год назад я мечтал стать программистом. IT, Программирование, Профессия, Смена профессии, Обучение, Java

Мечтайте, действуйте, добивайтесь и не слушайте тех, кто в вас не верит! Всем мир)

Junior разработчик в 32 года. Испытательный срок пройден!⁠ ⁠

Год назад я работал инженером ПТО со свободным графиком, то есть самостоятельно искал заказчиков и на сдельной основе выполнял работы. Чаще всего это была подготовка исполнительной документации для сдачи выполненных строительно-монтажных работ заказчику. За 10 лет работы я откровенно устал от неповоротливости системы, бюрократии и кумовства в строительной сфере. Рутина, кидающие на деньги подрядчики, не желающие принимать идеально подготовленные документы заказчики и непокидающее ощущение, что результат моей работы в скором времени отправится в архив, а через N лет будет служить средством розжига камина — всё это давило на меня с каждым годом все сильнее, но по какой-то неведомой причине я продолжал всем этим заниматься (не зря же я учился 5 лет в университете). По меркам города у меня был приличный доход, но когда закрываются базовые потребности, начинаешь задумываться о том, а почему бы не заняться тем, что действительно интересно, ведь работе мы посвящаем существенную часть своей жизни.

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

Не все осилят мою эмоциональную простыню, поэтому очень кратко остановлюсь на основных этапах, которые пришлось преодолеть.

Обучение, курсы

Я не приобретал дорогостоящие курсы, которые обещают из бревна сделать разработчика за 3 месяца с гарантией трудоустройства. Я отдал предпочтение бесплатным материалам на YouTube, недорогим курсам на площадках Юдеми и Степик и бесплатным площадкам по тренировке алгоритмов (codesignal). Абсолютно все есть в бесплатном доступе. Я не мог себе позволить вестись на рекламу и платить 100к+ за то, что мне продают надежду на красивую и беззаботную жизнь программиста. Учиться гуглить, анализировать информацию и выбирать наиболее рациональные решения я начал ещё на этапе выбора подхода к обучению.

Процесс обучения с нуля до трудоустройства занял у меня 7,5 месяцев. В процессе обучения я не работал, жил на подушку и посвящал учебе 35 часов в неделю. Изначально я закладывал год на обучение, но видимо так сошлись звезды, что получилось относительно быстро «заскочить в IT», хотя без жертв не обошлось, но об этом немного ниже.

Ментор

Если дорогостоящие курсы можно обойти стороной и абсолютно ничего не потерять (и даже сэкономить), то вот найти человека, который будет направлять вас в процессе обучения и давать обратную связь — это нехилый такой буст. Мне повезло, я нашел человека, который умел и хотел менторить новичков. Если открыть Пикабу, то даже тут есть посты с предложениями бесплатно обучать новичков, правда реально заинтересованных и занимающихся — единицы. Не всем хватает мотивации, особенно когда дело доходит до изучения материала и до просмотра количества технологий, необходимых для трудоустройства. Вот пример roadmap для бэкендера.

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

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

Первая работа

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

Я сделал около 700(мать их!) откликов на вакансии, получил всего 4 приглашения на собеседования и прошел успешно только одно. Так как мне не приходилось выбирать, я ухватился за этот оффер, как за шанс приобрести хоть какой-нибудь опыт коммерческой разработки. Но условия были так себе:

Зарплата 45000 на руки

Поддержка legacy проекта на Java EE

Работа в офисе, которая подразумевала мой переезд с семьей в другой город

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

Получаю 2 приглашения на собеседования (тоже работа в офисе в том же городе, куда я переехал). Собеседование к которому усердно готовился заваливаю, а вот второе успешно прохожу и получаю оффер, хотя особых планов на эту компанию не было. Предлагают работу на проекте с актуальным стеком и зарплату почти в 2 раза выше, чем на моем текущем на тот момент месте работы.

В итоге проработав всего 3 недели в первой компании, ухожу в другое место, которое по всем параметрам лучше. Единственный минус такого маневра — трехнедельная запись в трудовой, которая может отпугивать будущих работодателей на этапе найма. Но это можно пережить, ведь главное на данном этапе — это коммерческий опыт на актуальном стеке, а не красивая трудовая.

Первые впечатления от работы разработчиком

В общей сложности я работаю уже четвертый месяц, а конкретно в текущей компании только на днях успешно перешагнул испытательный срок. Я попал в крутой и дружелюбный коллектив. Средний возраст коллег: 25-35 лет. Есть более опытные разработчики, у которых можно многому поучиться. Самозванцем себя не ощущаю, так как справляюсь со всеми задачами, которые мне дают. Бывают моменты, когда что-то долго не получается, но после решения проблемы наступает чувство удовлетворения и гордости за себя.

Ощущение, что я снова только что выпустившийся студент, с горящими глазами хватающий любые задачи, которые только есть. Рабочий процесс (написание кода, поиск решений) доставляет удовольствие, время на работе пролетает незаметно. В этом деле хочется развиваться дальше и это можно делать в процессе повседневной работы, беря на себя больше ответственности и выполняя более сложные задачи.

В отличие от большинства других профессий, прелесть разработки в том, что в процессе повседневной работы можно быстро расти как профессионал и повышать свою стоимость на рынке труда, причем не ограничиваясь только своей страной. Условно говоря: зарплаты Junior и Senior разработчика могут отличаться в 20 раз, в то время как зарплаты начинающего инженера и ведущего инженера в строительной сфере будут отличаться всего в 2-3 раза, да и работу в другой стране на сопоставимую должность найти в разы труднее.

Выпускники курсов за 100к+

Ни на первой, ни на второй работе я не видел тех, кто закончил курсы Гик/Скилл/Брейнс/Бокс и теперь работает разработчиком. В основной массе программисты — это люди, которые ещё в школе определились с выбором, получили профильное IT-образование и вот теперь работают по специальности. Но я знаю нескольких самоучек, которые в сознательном возрасте (35+) решили уйти в разработку и у них это получилось. Всех их объединяет неподдельный интерес к программированию, к решению логических задачек и вот всему этому делу.

Так что мне искренне интересно узнать: где же тысячи выпускников, которые окончили курсы стоимостью по 100к+?

У меня есть ощущение, что на одних только ожиданиях высокой зарплаты и возможности удаленной работы почти невозможно пройти путь от полного нуля до полноценного и трудоустроенного разработчика. Учитывая тот факт, что на джуновские вакансии по 1000-1500 откликов, нужно иметь охренеть какое упорство, чтобы достигнуть цели. Но если процесс обучения захватывает, работающий код приносит удовольствие, то становление программистом — вопрос только времени, упорства и дисциплины. И этому есть огромное количество примеров, в том числе и мой.

P.S. Мелкие заметки делаю в телеге ( https://t.me/lovecodebro ), на Пикабу публикую редко и только лонгриды.

Помогу с изучением Java. Бесплатно. Не реклама:)⁠ ⁠

На связи исследователь Индонезийского острова Java, который понял, что Java — это не остров, это марка чая язык программирования и теперь пытается донести это до других.

Полтора месяца назад я опубликовал пост с тем же заголовком, что и выше. Собственно, вот он: Помогу с изучением Java. Бесплатно. Не реклама:)

Для тех, кому моя помощь может быть актуальна — все еще можно присоединиться: https://t.me/+relA0-qlUYAxZjI6

Теперь, в преддверии Нового года хотелось бы рассказать о том, что получилось сделать за эти полтора месяца, чего не получилось, а что — еще в планах. Ну и просто несколько интересных моментов, связанных с инициативой.

Для ЛЛ и просто любопытствующих: внизу поста будет небольшая статистика в цифрах.

Итак, что удалось:

Удалось заебаться вкрай осознать, что обучать других в такой массовой форме — достаточно тяжело;

В целом, по итогам полутора месяцев можно говорить о том, что выложены материалы по основам языка — Java Core, за исключением нескольких некритичных, на данном этапе, тем;

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

Организовать проверку практики без слишком серьезных задержек. Как правило, ДЗ проверяется в течении двух суток с момента отправки;

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

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

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

Говоря о менее приятной части итогов — том, что пока (или уже) не удалось:

Организовать полноценную команду для ведения канала. Отчасти из-за отсутствия мотивации у людей, отчасти — из-за отсутствия сил на то, чтобы менеджить эту команду. В какой-то степени, это причина остальных пунктов;

Организовать параллельную выкладку материала для ребят с разным уровнем знаний. К сожалению, в одно лицо писать такую гору материала, даже с массовой отсылкой на другие источники, сложно, а материалы, которые писали другие ребята требовали, на мой взгляд, серьезной доработки и, в итоге были сильно изменены в конечной редакции;

Опубликовать полноценную подробную дорожную карту по изучению Java и сопутствующих тем. Об этом немного ниже;

Предложить возможность mock-собеседований для тех, кто находится в поиске работы или близок к этому.

На самом деле, список неудавшегося можно продолжить, но пост хочется сделать скорее оптимистичным, чем вводящим в уныние.

Немного о планах, которые хочется реализовать в обозримом будущем:

Новогодние каникулы:) Выкладка материалов будет приостановлена с завтрашнего дня и возобновится уже после НГ — в районе 9-10 января. Это отличная возможность нагнать для тех, кто отстал не слишком сильно или сократить отставание, если сейчас отрыв большой. В целом, я остаюсь доступен в чатах и для проверки ДЗ, но новые уроки в это время выходить не будут;

В рамках каникул подготовить полноценную Road Map и подбить/доработать материалы по темам, которые первыми пойдут в публикацию по окончании перерыва. Если повезет — даже написать что-то «в стол», чем обеспечить себе здоровый сон;

Актуализировать существующие статьи. Как бы не хотелось публиковать вычитанный материал — это удается не всегда. Остаются как грамматические ошибки, так и более критичные — смысловые. К сожалению, это неизбежно при выкладке материала «из-под пера», но однозначно стоит исправить недочеты хотя бы постфактум;

Уменьшить темпы выкладки. Если сейчас в канале публикуются уроки с понедельника по субботу + пост с разбором практики в воскресенье — после Нового года планируется сократить количество уроков до трех (или 2-4, в зависимости от публикующихся тем) в неделю. Это связано с тем, что темы становятся сложнее и требуют больше времени на подбор/написание материала. Сохранение текущего темпа однозначно ударит по качеству;

Выспаться. Просто безумно хочется выспаться в обозримом будущем.

Из приятных или просто запомнившихся моментов последних полутора месяцев:

Один из откликнувшихся на первый пост прошел стажировку в моей команде и со дня на день должен получить оффер, чтобы продолжить работать в качестве полноценного джуна:) Справедливости ради, на момент нашего знакомства кандидат был уже достаточно сильным, но все равно приятно получить пользу от собственной инициативы. С другой стороны, это, во-многом совпадение, которого могло и не произойти;

Двое ребят связались с просьбой проревьюить код их домашних проектов. В обоих случаях получилось сильно улучшить качество кода и исправить ряд архитектурных просчетов, как минимум в одном — удалось ускорить работу приложения в несколько раз. Кроме того, было действительно приятно видеть людей пытающихся, пусть и не во всем успешно, пилить собственные проекты даже при недостатке знаний. Местами криво, часто неэффективно, но у них получается реализовать собственную идею. Это заслуживает уважения и, отчасти, даже зависть;

Какое-то количество раз предлагали деньги. Ни разу я так и не понял, что пытались получить взамен — ничего, сильно выходящего за пределы того, что и так стараюсь делать бесплатно, не просили. Все остались при своих, но теперь иногда приходят мысли о том, чтобы прикрутить донаты для желающих. Впрочем, вряд ли это будет реализовано — курс все еще на «выспаться»:)

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

Холивары нескольких опытных разрабов в чате, в попытке ответить на вопрос новичка — просто бесценны:)

Как и обещал, немного статистики (не такой радостной, как хотелось бы, на самом деле):

Было выложено 35 уроков, посвященные темам от установки JDK и IDE до обобщенных типов, потоков ввода-вывода и трансляции программы.

Количество участников канала — 1158 (из них лишь 301 дошел до чата, не говоря о флудилке);

Количество просмотров за сутки (по последнему посту) — в пределах 450 и падает с течением времени;

При этом просмотров приложенной статьи с самим уроком — всего 17. Статью с уроком недельной давности просмотрели, при этом, 44 раза.

В течении недели в среднем просят проверить ДЗ около 10 человек, некоторые — практически ежедневно;

В таком ключе цифры не утешительные, но у этого есть объяснение:

Результаты опроса 10 декабря о количестве пройденных уроков:

Помогу с изучением Java. Бесплатно. Не реклама:) Обучение, IT, Работа, Образование, Помощь, Профессия, Поиск работы, Java, Удаленная работа, Консультация, Стажировка, Опыт, Преподаватель, Волонтерство, Собеседование, Учеба, Backend, Длиннопост

По состоянию на 2 недели назад большинство так и не приступило к изучению (интересно, какой процент из них все же приступит) или не успевает за темпом (на тот момент было выложено 27 уроков).

С одной стороны, подобная статистика иногда удручает и возникает вопрос — а стоит ли игра свеч? С другой — это действительно классный опыт и даже если до конца дойдет несколько человек — оно того стоило. Возможно, для кого-то из них именно моя помощь окажется тем, что сделает их жизнь лучше:)

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

Всех с наступающим Новым Годом!

P.S. Как шутила в личке одна из участниц: Дорогу осилит ползущий:) Судя по цифрам выше, это намного актуальнее)

Первая работа джуном (Java) в IT-компании в 32 года и первое увольнение. ⁠ ⁠

В предыдущем посте (Как я в 32 года бросил нелюбимую работу и «вошел в айти») я достаточно подробно рассказал о том как принял решение в 32 года кардинально поменять сферу деятельности: из инженера-строителя в программисты. Учил язык Java самостоятельно по видеокурсам в записи. Под присмотром более опытного товарища, который взялся менторить меня, я написал 6 пет-проектов, после чего нашел первую работу.

Я сделал 700 откликов на hh, прошел 4 собеседования и получил только один оффер в компанию, которая находилась в другом городе и которая искала человека в офис. Конечно, мне хотелось найти удаленку с зарплатой 300кк в наносекунду, но я трезво оценивал ситуацию на рынке джунов и понимал, что передо мной стоит выбор: продолжать учиться и пилить пет-проекты или временно переехать в другой город (180 км или 3 часа езды на машине) для получения коммерческого опыта, который позволит позднее найти работу на более комфортных для меня условиях.

Я был рад получить первый оффер, но перспектива переезда меня не так сильно смущала, как сам проект, на котором предстояло работать. Меня сразу предупредили, что это поддержка легаси проекта, написанного на Java EE с использованием библиотеки Hibernate. Spring’а там нет и других проектов на Java в этой компании тоже нет. Новые проекты пишутся на C#, поэтому перспективы уйти с легаси на что-то «модно-молодежное» попросту отсутствовали.

Ещё один немаловажный момент — размер ЗП, указанный в оффере. Не стану называть конкретных цифр, но скажу так: такую зарплату в номинальных цифрах я получал в 2012 году сразу после окончания института. И если тогда для вчерашнего студента это было норм, то спустя 10 лет с учетом инфляции и с учетом того, что теперь у меня есть семья — это смешная сумма. Ещё нужно понимать, что половина этой зарплаты будет уходить на аренду квартиры.

Моей финансовой подушки хватило бы ещё на полгода жизни, поэтому я всерьез рассматривал этот оффер, как билет в дивный IT-мир. Полгода поработать в минус, но набраться опыта — не самая плохая сделка, считал я.

Мой IT-ментор сказал, что невозможно предугадать какой из выборов быстрее приблизит меня к получению оффера в компанию на актуальном технологическом стеке и с нормальной ЗП:

• продолжение изучения новых технологий и самостоятельная работа над пет-проектами
• или работа в IT-компании над легаси проектом.

Ради собственного успокоения я посмотрел несколько роликов на YouTube на тему: «А так ли страшен legacy, как все говорят?» и нашел даже несколько позитивных видео, автор которых говорил, что начинать карьеру с легаси кода даже лучше, ведь ты будешь знать как и что работает на более низком уровне и зачем вообще придумали эти новомодные фреймворки и для решения каких проблем.

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

Первая работа

Приняв оффер, я принялся искать квартиру рядом с работой. Нашел хороший вариант в 15 минутах ходьбы от офиса. Это была большая удача, ведь мало кто согласится сдать свою квартиру семейной паре с маленьким ребенком и кошкой.

Теперь о самой работе. В первый рабочий день девушка HR провела мне экскурсию по офису, рассказала подробно о компании, об условиях работы (гибкое начало рабочего дня, обед в удобное время и т.д.), а также о корпоративных плюшках в виде бесплатных занятий английским, оплатой различных курсов и компенсацией абонемента в спортзал. Также я познакомился с проект-менеджером, который будет ставить мне задачи. Знакомство с командой произошло на первом дэйли. Дэйли — это ежедневная встреча разработчиков с проект менеджером, на которой каждый член команды рассказывает о трех вещах: что было сделано вчера, что будет сделано сегодня и какие имеются сложности в достижении результатов. По крайней мере так было в этой компании, как в остальных — не знаю.

Мне выделили рабочее место, на телефон пришло сообщение от HR с паролем от учетки и различными доступами (местная база знаний, Gitlab). Рядом со мной сидел ещё один джун, который проходил в этой компании стажировку и которого буквально месяц назад приняли в штат. В нашем кабинете помимо Java-разработчиков сидели C#-разработчики, системный аналитик, дизайнер и системный администратор. Достаточно дружный коллектив, регулярно собирающийся по пятницам поиграть в настолки или попить пива в баре.

В первые дни мне не давали никаких рабочих задач, всё что я делал — читал базу знаний и смотрел на код проекта, пытаясь что-то понять. Куча незнакомых аннотаций, огромные классы по 5000-8000 тысяч строк кода, нереально большие HQL-запросы к БД по 20-30 строк кода и отсутствие документации. Я также видел закомментированные участки кода, над которым не было никаких пояснений и было непонятно для чего это сделано. Просматривая код, я столкнулся с абсолютной противоположностью «чистого кода», о котором я начал читать в одноименной книге.

В ожидании первой задачи, я не терял времени зря и гуглил все незнакомые аннотации, а также начал читать книгу «Java Persistence API и Hibernate», которую мне скинул PM. Я также охренел от масштаба базы данных, в которой были сотни (если не тысячи) таблиц, а также огромное количество связей между ними. После рафинированных (как сказал мой ментор) пет-проектов, я оказался в огромном хаосе непонятных мне вещей. Однако джун рядом успокоил меня, сказав что тоже вначале ничего не понимал, но постепенно втянулся и начал разбираться.

Рабочие задачи

Спустя некоторое время я узнал, что в нашей команде нет опытных разработчиков, вроде тимлида или сеньора, максимальный уровень — это PreMiddle. Всего 4 человека на проекте: 2 джуна, 2 премиддла. Основная задача команды Java-разработчиков — техническая поддержка проекта. Процесс такой: пользователи продукта сталкиваются с какой-то проблемой в программе, оформляют заявку с описанием и отправляют нам в виде мини-ТЗ. Задача разработчиков, соответственно, найти и исправить эту ошибку. Задачи между командой распределяет проект-менеджер. Новый функционал этого продукта на Java не разрабатывался. Разработчики на C#, сидящие в нашем кабинете как раз разрабатывали новую версию сервиса, который должен будет в будущем заменить сервис, написанный на Java.

Через несколько дней после трудоустройства я получил первую задачу. Необходимо было совершить несколько INSERT’ов в базу данных и исправить некоторые данные в таблицах. Всё это необходимо было сделать сначала на тестовом контуре, после чего отправить на проверку и после согласования сделать тоже самое на продакшн базе. С первой задачей я справился.

Следующие таски были примерно такого же характера: поиск дефектов в БД и их исправление посредством запросов к БД. Задачи найти ошибку в коде и бизнес-логике не стояло. Джун, сидящий рядом, сказал, что за все время работы он практически не трогал код приложения, а исправлял конкретные данные внутри БД.

Уже в первые дни работы я понял, что в этой компании невозможен профессиональный рост, как Java-разработчика и что задерживаться здесь надолго нельзя. Низкая зарплата, легаси код, скучные SQL-задачи и отсутствие каких-либо перспектив сподвигли меня продолжить откликаться на вакансии. Так как я уже переехал в другой город, то решил поискать вакансии в этом городе, ведь если будет требоваться человек в офис, а не на удаленку, то у меня гораздо больше шансов получить оффер за счет меньшей конкуренции.

Поиск второй работы

Я открыл hh и снова начал искать вакансии, где фигурирует слово Java. Но теперь я решил начать с вакансий в текущем городе, ведь здесь есть множество местных компаний, которые не желают брать людей на удаленку, а ищут именно в офис. Я подкорректировал свое сопроводительное письмо, указав в самом начале, что я местный, меня не нужно релоцировать и я готов приступить к работе в ближайшее время. Указывать свой трехнедельный опыт на текущей работе я не стал, так как такая строчка в резюме скорее оттолкнет потенциального работодателя, а не привлечет. В итоге буквально через пару дней получаю сразу 2 сообщения в WhatsApp’е от рекрутеров двух разных компаний, которым показалось интересным мое резюме и они предлагают пройти собеседование, причем сразу совмещенное, то есть скрининг + техническое. Пару вечеров пришлось снова посидеть за теорией, чтобы освежить в памяти то, что подзабылось (уровни транзакций, принципы ACID, разновидности индексов в БД и другие популярные вопросы, которые любят задавать на собеседованиях).

Собеседование №1

Первая компания была аутсорсинговой и набирала Java-разработчиков уровня Middle под новый для них проект, который они взяли на поддержку. Отзывы в интернете и на хабре об этой компании были только положительные. Писали, что это идеальное место для джунов, где прекрасный коллектив и отличная возможность для роста. В переписке с HR выяснил, что возьмут несколько человек и, возможно, рассмотрят разработчиков уровня Junior+, но в приоритете миддлы. На собесе абсолютно ничего не спросили про мой опыт и про зарплатные ожидания. Собеседующий не был джавистом и задал мне только 1 вопрос по Java, все остальные вопросы были по базам данных (уровни изолированности транзакций, индексы), брокерам сообщений, докеру (зачем нужен файл .dockerignore), про принципы SOLID, преимущества и недостатки микросервисной архитектуры, больше не вспомню.

Я достаточно хорошо ответил на большинство вопросов, но, конечно, до уровня твердого миддла не дотягивал. Через пару дней HR сообщила, что я им очень понравился, мой уровень оценивают, как Junior+ и готовы сделать предложение, но позже. На мой вопрос стоит ли мне рассматривать их компанию, если я получу оффер от другой компании, ответили так: «Если вам делают оффер в другой компании — соглашайтесь, в данный момент мы не можем назвать ни конкретных сроков когда сможем вас взять, ни условий». Такой вот вежливый отказ.

Собеседование №2

Вторая компания не айтишная, но в ней есть IT-отдел, который занимается разработкой собственных продуктов. О самой компании много отрицательных отзывов в интернете, но все они от специалистов других подразделений, никак не относящихся к IT. Но так как позвали на собеседование я решил в любом случае его пройти, прокачать навык прохождения собеседований. А там будь что будет. В отличие от первой компании собеседующий (директор IT) попросил рассказать о себе: почему ушел из прошлой сферы, как заинтересовался программированием, как обучался, какие пет-проекты написал, имел ли я коммерческий опыт. В своем рассказе я рассказал о процессе обучения с ментором, кратко пробежался по пет-проектам, рассчитывая, что сейчас начнется стадия теоретических вопросов или будет задачка на алгоритмы. Свой последний пет-проект я преподнес, как работу на фрилансе. Мой краткий рассказ, судя по всему, навел его на мысль, что я мог это всё придумать и что такого богатого практического опыта у меня нет.

«А вы не могли бы более подробно рассказать о своих проектах, что использовали, с какими сложностями столкнулись? Я, конечно, могу это всё спрашивать наводящими вопросами, но будет лучше, если вы подробно расскажете сами». Так как у меня не придуманный опыт работы над пет-проектами, то мне было достаточно легко во всех подробностях рассказать какие библиотеки я использовал, с какими сложностями столкнулся и какой функционал был у готовых приложений. Пару теоретических вопросов всё же было: что такое SOLID и чем отличается RestController от обычного Controller’а. Мне показалось, что я достаточно хорошо на все ответил. Но это ещё не все.

Дальше началось что-то вроде поведенческого интервью (behavioral interview). Спрашивали о моих достижениях в прошлой сфере, почему ушел из найма, почему закрыл ИП, какие цели в IT, какие дальнейшие планы по развитию и, наконец, какие зарплатные ожидания.

Я был достаточно уверенным, так как я уже был при работе и это было уже мое четвертое по счету техническое собеседование. Так сказать, у меня уже была «несгораемая сумма» в виде текущей работы, поэтому я не выглядел, как джун, готовый работать за еду, лишь бы его взяли. Такого волнения, как во время первого собеседования, не было. Да и на эту компанию у меня изначально не было больших планов, однако общение с руководителем мне понравилось даже больше, чем в предыдущей аутсорсинговой компании.

Затем настала очередь моих вопросов и тут я уже знал что спросить: что за продукт у вас, сколько разработчиков в команде, какой стек, есть ли легаси, какие будут у меня задачи. В общем я прощупывал компанию на все те моменты, которые меня очень смущали на текущем месте работы. И в целом мне всё понравилось: большая команда, писать код с нуля на Spring Boot, есть опытные разработчики, которые будут менторить при необходимости.

Через пару дней я получаю оффер от этой компании, в котором указана ЗП, превышающая мою зарплату на текущем месте. Чувство радости и облегчения. Не могу подобрать слов, чтобы описать всю гамму своих чувств. Мне было не очень интересно копаться в ужасном коде легаси проекта, пытаясь понять бизнес логику конкретно этого приложения. И этот оффер был похож на глоток свежего воздуха, благодаря которому я вновь расправил грудь и с надеждой посмотрел в будущее. Я написал заявление на увольнение и ушел из компании на следующий день, завершив все текущие задачи. К коллективу я не успел привыкнуть, поэтому уход не был трагедией ни для меня, ни для компании.

Если интересно, то могу рассказать что ждало меня на новом месте, правда я пока на испытательном сроке и стараюсь его пройти )

Разыскивается Java Junior: где легче найти работу и как понравиться работодателю?

Разыскивается Java Junior: где легче найти работу и как понравиться работодателю? - 1

В статьях на JavaRush мы не устаем повторять, что знание языка Java, ввиду его глобальной популярности, дает огромные возможности для трудоустройства и успешной долгосрочной карьеры. И это действительно так — вакансий для Java-разработчиков много, а их количество только растет. Согласно статистике одного из лидирующих агентств в сфере ИТ-рекрутинга Сollabera, с начала 2017-го по конец 2018 года число вакансий, связанных с Java, выросло сразу на 80% — с 3,5 тыс. до 6,2 тыс. Итак, Java, ввиду своей востребованности в мобильных приложениях, решениях для устройств Интернета вещей и еще во многих трендовых нишах, только набирает популярность. Спрос на Java-кодеров растет, а изучить данный язык программирования сложно, но возможно благодаря массе документации и удобных инструментов (включая JavaRush, конечно). Казалось бы, все прекрасно, а Java-девелоперам остается только радоваться жизни, благодарить судьбу за то, что выбрали именно этот ЯП, и с оптимизмом смотреть в будущее. Отчасти так и есть, но реальный мир все же вносит суровые корректировки, и молодым Java разработчикам частенько найти работу не очень-то просто. А бывает и так, что реальность бьет зеленых Java джуниоров, в розовых мечтах уже видящих себя высокооплачиваемыми pro, в живот сапогом высоких требований при приеме на работу. Например, нежеланием работодателей брать людей без опыта и обширных знаний кучи технологий и фреймворков. Поэтому сегодня поговорим о том, чего топовые работодатели ожидают от Java-джуниоров, где новичку будет легче всего найти работу, и без каких знаний и умений в трудоустройстве не преуспеть.

Портрет Java-джуна: чего компании ждут от начинающего кодера?

Что касается вышеупомянутого списка требований, то самым первым в нем конечно будет идти Java Core — знание всех фундаментальных основ Java, что включает основные конструкции, операторы и типы данных Java, понимание принципов объектно-ориентированного языка программирования и того как они реализованы в Java, а также понимание многопоточности и ряда других вещей, которые и составляют “ядро” этого языка.

Подтвердив знание “основ,” будущему Java-джуну нужно будет продемонстрировать знание IDE (интегрированной среды разработки), понимание ее основных возможностей, знание различий между основными IDE, а также умение компилировать, запускать, отлаживать и тестировать файлы, рефакторить код.

Системы контроля версий

Знание систем контроля версий и основных принципов их использования также требуется даже от малоопытного разработчика, ведь он все равно будет работать в команде.

Знание основных API языка Java тоже будет критически важно на собеседовании и скорее всего поможет получить работу. Важнейшими API, знать которые необходимо в первую очередь, являются Java Collection Framework и Java Concurrency API.

Какие компании чаще всего берут на работу Java-джуниоров?

В каких городах Java-джуну легче всего найти работу?

Разыскивается Java Junior: где легче найти работу и как понравиться работодателю? - 4

В каком городе малоопытному Java разработчику будет легче всего найти работу — это еще один актуальный вопрос как для тех, кто еще только изучает Java и думает о поиске работы в ближайшем будущем, так и у тех, кто уже активно просматривает вакансии и рассылает свои резюме. В целом же, вариантов для трудоустройства именно для Java Junior больше всего в крупных городах, где как правило и размещаются офисы всех основных ИТ-компаний. В Украине, по данным все того же относительно свежего исследования DOU.UA, зеленых и необстрелянных девелоперов чаще всего ищут в Киеве, Харькове и во Львове, причем эти три города продемонстрировали примерно равные показатели по количеству взятых на работу джуниоров в 2018 году. Также в пятерку городов с самым большим числом вакансий входят Одесса и Днепр. Что касается России, то в этой стране топ городов где Java разработчику, в том числе и малоопытному, будет найти работу легче всего, выглядит следующим образом: Москва, Санкт-Петербург, Новосибирск, Нижний Новгород и Екатеринбург. Это по данным исследования рекрутингового портала HeadHunter. Также в этот топ вошли Казань, Пермь, Уфа, Самара и Воронеж. В Беларуси абсолютное большинство вакансий для Java разработчиков, в том числе и Junior, приходятся на Минск. Также работу можно найти в Витебске, Могилеве и Гродно, но в этих городах вакансий, прямо скажем, не много.

Мнения экспертов

Разыскивается Java Junior: где легче найти работу и как понравиться работодателю? - 5

Но вернемся к основной теме данного материала — ожиданиям работодателей при найме Java Junior разработчиков и тому, как этим ожиданиям соответствовать. Несколько цитат. “Очень распространено мнение, что требования к Java Junior разработчику со стороны работодателей крайне высоки. Это оказывает довольно сильное влияние на многих кандидатов во время технического собеседования. Думая, что планка требований выше, чем она есть на самом деле, они чувствуют себя неуверенно, преувеличивают свой опыт и приукрашивают навыки, из-за чего часто как раз и не получают работу,” — отметил Кен Мазаика (Ken Mazaika), CTO и со-основатель компании Firehose. “Честность и знание тех областей, в которых вам нужно совершенствоваться, только увеличивает ваши шансы на трудоустройство. Для компаний найм младших разработчиков — это скорее инвестиция с долгосрочным потенциалом, они не ожидают от нее никакой особенной отдачи. Поэтому от младших разработчиков они не ждут написания каких-то сложных функций и не станут требовать слишком многого в течение первых нескольких месяцев,” — добавил эксперт. “Одна из наиболее распространенных черт действительно классных Java-программистов, которых я брал на работу — это то, что они все были склонны работать над разными сторонними проектами помимо основной работы. Это могли быть проекты с открытым исходным кодом или личные проекты. Они даже не обязательно должны базироваться на Java, но их наличие серьезно повысит ваши шансы получить работу,” — сказал Кевин Хейен (Kevin Hayen), опытный Java разработчик и CTO компании Let’s Be Chefs. “Зачастую, нанимая Java программистов, мы отдаем предпочтение тем, кто многому научился самостоятельно. Часто именно такие люди увлечены программированием по-настоящему. Нам такие нужны — программисты, которые живут и дышат программным кодом. А многие технические знания и элементы легко приобретаются в процессе работы,” — отметил Крейг Далзил (Craig Dalziel), бизнес-менеджер компании Pearson Frank.

Читать:
3gpp чем открыть на компьютере

Похожие статьи