Всем привет! Не мне вам рассказывать, как непросто устроиться на работу программистом без опыта в 2018-ом. Конкуренция на уровне "нет опыта" в последнее время сильно выросла (прежде всего, благодаря таким ресурсам как JavaRush, GeekBrains и т.п.) В итоге, становится очень сложно выделиться среди массы выпускников всевозможных онлайн-курсов. И проблема вовсе не в том, чтобы хорошо пройти собеседование. Проблемой становится просто попасть на него.
Как же выпускнику JavaRush можно выделиться из массы желающих получить работу? Я не буду писать про очевидные для джависта enterprise-технологии типа Spring'a и Hibernate, потому что они сами по себе must-have, и без них найти работу будет очень сложно. Ниже представлены 5 рекомендаций начинающим разработчикам, которые хотят найти работу в 2018. Каждая из них точно даст вашему резюме немало дополнительных баллов.

1. Выучите JavaScript.

На сегодняшний день JS - самый востребованный у работодателей язык программирования. Портал HackerRank провел опрос среди компаний на предмет их "хотелок", и именно он оказался на первом месте по запросам работодателей.
Причина проста - у JavaScript на сегодняшний день нет серьезной альтернативы при разработкe frontend. Если вы освоите "чистый" JS и один из популярных фреймворков (прежде всего - React или Angular) - ваши шансы стать программистом вырастут В РАЗЫ. Во-первых, любая компания, ищущая Java-developer'a будет рада, если он владеет JavaScript. Причины этого достаточно просты: очень часто в проекте бывают небольшие задачи - например, исправить какой-то функционал. "Кнопка A должна называться не А, а B, находиться не справа, а слева, и вызывать на backend'e функцию X, а не Y". Но поправить в данном случае нужно и бэкенд, и фронтeнд. И даже если задача будет элементарной - для еe решения все равно нужно два человека: бэкендщик и "фронтовик". Но если в команде есть человек, владеющий и тем, и другим (не обязательно на выдающимся уровне) - количество ресурсов на закрытие таких задач сокращается в разы. Во-вторых, вакансии джунов и стажеров у фронтендщиков появляются чаще, чем у бэкендщиков. Например, пошарив сегодня по HeadHunter, в своем городе я нашел 1 вакансию Java Junior, а вот Frontend Junior - 3. В общем, JS - ваш серьезный шанс получить первую работу. Устроитесь "джавистом" - отлично, для них JS никогда не бывает лишним. Не получится с Java (во многих городах тухловато с вакансиями) - вполне возможно, сможете пробиться в IT через "фронт". На JavaRush я, помнится, читал одну "историю успеха" от человека, который после учебы здесь ушел именно во фронт-разработку. Отличный портал для изучения JS - https://learn.javascript.ru/. Он не так хорош, как JavaRush, но крепкую базу вы получите. Там же есть и курсы по всем популярным фреймворкам (они уже платные).

2. Научитесь писать SQL-запросы.

Казалось бы, SQL - не менее очевидная вещь, чем не включенные в список Spring и Hibernate. На самом деле, разница есть: большое количество разработчиков умеют пользоваться SQL "по верхам" - написать "SELECT * FROM table_name", или сджойнить пару таблиц. Я же рекомендую вам основательно набить на них руку, и не стесняться указывать это в резюме. Если вы будете понимать, что здесь написано и сами сможете быстро писать подобные вещи - ваша ценность в глазах работодателя очень сильно вырастет. Несколько моих коллег в прошлом работали в областях, где приходилось писать много SQL-запросов, и когда они решили сменить сферу на Java-разработку - эти скиллы помогли им выглядеть очень привлекательно в глазах работодателя. Да и в работе java-dev'a, конечно, это полезнейший навык. Сам регулярно бегаю к ним за подсказками:) Начать изучение можно с "Head First SQL", дальше - просто выбрать одну из популярных СУБД (Portgres или Oracle, например) и прочесть пару книг по ней. В качестве задачника рекомендую портал http://www.sql-ex.ru/. Выглядит простенько, но со своей функцией вполне справляется.

3. Заведите профиль на GitHub

Ваш GitHub, пожалуй, самое главное, на что обратит внимание потенциальный работодатель после резюме. Профиль с несколькими работающими проектами однозначно привлечет дополнительное внимание. Более того, все более популярными среди служб подбора персонала становятся "анализаторы гитхаба" - специальные программы, которые по хранящемуся в github коду находят для компаний разработчиков с нужным стэком технологий. Если им нужен человек, владеющий Spring Security - такая программа парсит гитхаб, и отбирает пользователей, у которых в репозиториях есть код с использованием этой технологии. Понятно, что в начале похвастаться будет особо нечем, но вполне можно начать с заливки туда "больших задач" JavaRush. Если выполнили тестовое задание для стажировки - его тоже туда. Освоили ReactJS/AngularJS и создали пару одностраничных приложений - туда же. Все, что создано вашими руками, работает, и может быть интересно работодателю должно появляться в вашем gh-профиле.

4. Получите сертификат Oracle.

Создатели JavaRush не дадут мне соврать: самый частый вопрос, который им задают потенциальные ученики - "А дают какой-нибудь сертификат после учебы?". Сертификатов на JR не дают, и тому есть, в общем-то, простая причина - работодателям они неинтересны. Проверить, что вы знаете и умеете, они вполне способны на собеседовании безо всяких сертификатов онлайн-курсов. Отличие сертификата Oracle в том, что это - официальное подтверждение от создателей Java, что вы хорошо владеете этим языком. Его наличие у вас будет очень серьезным преимуществом для аутсорс-компаний, т.е. для тех, кто "сдает в аренду" своих разработчиков другим компаниям для работы на внешних проектах. Например, какому-то банку нужно создать новый интернет-клиент. Содержать для этого собственную ораву разработчиков ему невыгодно - для разового проекта проще найти команду со стороны. В таких случаях и обращаются к аутсорсным компаниям. Они подберут для банка людей с нужными скиллами и сформируют команду. Однако, заказчику очень важно понимать, что он платит деньги (и очень немалые) за действительно толковых разработчиков. И вот здесь сертификат Oracle и станет вашим преимуществом. Ведь по сути, это единственная возможность подтвердить "бумажкой" квалификацию java-программиста. Иными словами, компании гораздо проще "продать" сертифицированного разработчика своим заказчикам. Сертификаты Oracle бывают нескольких уровней. Получить первый уровень (OCAJP8) будет совсем несложно. На экзамене будут вопросы всего по 8 темам:
  • Java Basics (переменные, пакеты, метод main() и т.п.);
  • Working With Java Data Types (примитивы, ссылки, обертки);
  • Using Operators and Decision Constructs (+-*/ , а также if-esle, switch и т.п.);
  • Using Loop Constructs (Циклы);
  • Working with Methods and Encapsulation (методы, инкапсуляция);
  • Working with Inheritance (Наследование);
  • Handling Exceptions (Исключения);
  • Working with Selected classes from the Java API (Работа с несколькими популярными классами - LocalDateTime, ArrayList, String).
Никаких сложных тем типа многопоточности, IO/NIO и тому подобного. Многие темы усечены (например, из всех реализаций List<> вопросы будут только про ArrayList<>). Подготовиться к экзамену можно по любой из специальных книг, их обзор есть на JavaRush. В комплекте с ними также идут и несколько пробных тестов. Сдача экзамена на сегодняшний день стоит $150.

5. Участвуйте в профессиональных сообществах.

Согласно результатам опроса, проведенного "Моим кругом", около половины работодателей интересуются участием потенциальных сотрудников в профессиональных сообществах.
Каждый четвертый работодатель смог припомнить случай, когда активное участие в профессиональных сообществах помогло кому-то из кандидатов получить у них работу.
Главные из них (помимо GitHub, о котором говорилось ранее) - это "Хабрахабр" и StackOverflow. И если набить высокую карму на Stack'e неопытному разработчику почти нереально, да и в OpenSource-проектах участвовать рановато, то ссылка на блог на "Хабре" с несколькими хорошими статьями будет смотреться очень выигрышно в резюме новичка. Поэтому, если вы пилите какой-то мини-проект - не стесняйтесь поделиться им с сообществом. Главное - внимательно читайте правила, и не забывайте предварительно прошерстить "Хабр" на предмет аналогичных статей (текст о том, как вывести в консоль "Hello World" вряд ли будет кому-то интересна). P.S. Мир постоянно меняется,и IT-сфера - не исключение. Обратить на себя внимание работодателя, не имея опыта, достаточно сложно. Надеюсь, приведенные выше советы помогут кому-то-то из моих "однокурсников" с JavaRush получить первую работу:) Если у вас остались вопросы - с радостью отвечу на них в комментариях. И, конечно, не забывайте ставить лайки:)