Наконец-то полезный роадмап Java Backend 2024. часть 2
Женя Афанасьев @evg_a_channel3. Подготовка к собеседованиям.

Умение проходить собеседования - это отдельный навык, который почти никак не связан с реальной работой. Вопросы, которые спрашивают на собесах чаще всего легко гуглятся и к ним легко можно подготовиться, и они не меняются с годами, но на реальной работе ты с этим не сталкиваешься, поэтому я, имея довольно большой опыт работы, все равно начинаю с подготовки к собесам, прежде чем менять работу. Каждый раз заново приходится освежать в памяти многие вопросы.
- Начните с подготовки к техническим вопросам. Первое это гуглите топ 100 вопросов по всем темам. Читайте, что не знаете – зубрите, что не зубрится выписывайте в тетрадку чисто для шпаргалки или для конспекта, чтобы взять его перед собесом и пробежаться быстро.
Топ 100 вопросов по java core, ООП, по коллекциям, многопоточке, исключениям, стримы. Дальше по спрингу, по hibernate, по sql базам данных, по архитектуре. Брокеры сообщений немного почитайте на понимание что это и зачем. По CI\CD процессам не стоит учить, всегда можно сказать, что на проекте этим чисто девопсы занимались, у тебя не было доступа. Гуглом пользоваться вы уже должны уметь сами, ссылки приводить не буду. В реальности может быть не 100 вопросов по какой-то технологии а больше или меньше, это не суть.
- Дальше после изучения вопросов обязательно советую пересмотреть ВСЕ моковые и реальные собесы по java которые сможете найти. Суть та же – слушаете вопрос, если знаете то ок, если нет, то выписываете в ту же тетрадку, смотрите как ответил кандидат, идете изучаете сами. Советую каналы Евгения Сулейманова с мок собесами. На моем канале есть записи реальных собеседований.
По лайфкодингу готовиться специально не надо, хватит навыка, который приобрели когда джавараш проходили. В РФ секции алгоритмических задач встречается не часто, а когда встречается – задачки элементарные. Можно на литкоде 10-20 задач изи уровня порешать параллельно и на sql-ex.ru 20-30 задач 1-2 уровня.
- Следующее это подготовка к самопрезентации. Здесь вы должны научиться рассказывать о своем предыдущем месте работы. Самое простое – это взять ваш учебный проект и представить его как реальный коммерческий. Немного раздуть масштабы задач, которые вы выполняли. За основу взять тему пет проекта. Как составить такой рассказ тема для отдельной статьи, но, если вы пересмотрели кучу моковых собеседований, записей реальных собеседований моих или чьих-то еще, то вы примерно понимаете, как выглядит презентация своего опыта, плюс у вас есть три сервиса с разными задачами с вашего обучения. Собирайте все это и рассказывайте, как об одном месте работы с такими разными задачами как типовыми по написанию эндпоинтов, так и нетиповыми по поиску и решению проблем утечек памяти, это выглядит как отличный опыт.
Кроме технических задач, вы еще должны будете рассказать о процессах в команде, какие были методологии, состав команды, ваша роль в ней, какие активности были и т.д. Чтобы закрыть этот пласт знаний лучше всего подходит ментор или опытный разработчик. Ищите платных менторов, друзей, знакомых, кто работает уже в айти. Самостоятельно тут сложно составить понимание, но, если все-таки есть такая задача, советую канал авось прорвемся, посмотрите ролик про внутрянку. ваша задача – это дать понять интервьерам, что вы шарите во всех внутренних процессах. Но совсем не обязательно знать все варианты методологий, изучите только про скрам, все-таки вы же «работали» только на одном проекте, а значит методология была одна, в остальные вы не шарите и не обязаны.
После того, как вы все это прошли, вам нужно составить хорошее резюме.
Очень хорошо об этой теме раскрыто на канале Виктории Бородиной, смотрите ролики про резюме. Важные моменты:
- Не указываем нигде слова Junior и им подобные, забудьте про грейды, до тех пор, пока не станете синьером, потом уже будете везде писать senior developer, а пока не надо, это сильно сбивает вам цену.
- Указываем только релевантный опыт работы. Никаких макдоналдсов, менеджеров по продажам и т.д. Только ит опыт. Если такого нет, то придумываем и рисуем.
- Кратко! Не расписываем опыт на десяти страницах, читать это никто не станет. Кратко описываем что за место, какой проект, технологии и что сделали конкретно вы осязаемое, достижения.
- Достижений на конкретном месте работы должно быть по 3-5 штук. Как их описывать было в какой-то статье гугла, вот формула: «завершено/придумано/осуществлено X измеримое в Y путем выполнения Z»
- Опыта должно быть минимум 2 года, а лучше 3. Иначе ваше резюме никто не увидит благодаря автоматическому фильтру по годам опыта. Так что еще раз, это ОЧЕНЬ важно! Крутите 2 года минимум!
Вот примеры достижений из моего резюме. Они немного не по шаблону, но это не строго, принцип главное понятен:
Разработал системы интеграции с партнером финуслуги и с ВТБ инвестициями с нуля и довел до прода, что позволило привлечь новые вклады.
Вывел бизнес логику из хранимых процедур Oracle в сервисы на java с Hibernate и перевел сервисы на Postgres.
Перевел сервисы на java 21, обновил кодовую базу и увеличил покрытие кода тестами.
Разработал систему формирования отчетов о работе центральной архивной службы.
Сократил время сбора больших объемов архивных данных в 3 раза.
Разработал и довел до прода 2 проекта
Разделил монолитную систему на микросервисы.
Разработал подсистему управления закупками.
Улучшил производительность ряда критических SQL-запросов в 2-3 раза.
Привел формирование нескольких налоговых деклараций в соответствие с требованиями налогового законодательства путем погружения в кодовую базу и устранения ошибок, что позволило своевременно и без ошибок сдать налоговую отчетность.
Разработал систему контроля международных отправлений.
Разработал с нуля и довел до прода 3 сервиса.
Рефакторил легаси код и выносил в отдельные микросервисы.
Увеличил покрытие существующего кода тестами на 70%.
Оптимизировал выполнение запросов к БД.

На последок
Как вообще откликаться и где?
- Основной ресурс это hh.ru. Делаем веерную рассылку. Это значит ищем все вакансии джавистов и отправляем резюме всем без разбора абсолютно!!! Не надо читать требования к скиллам, опыту работы и т.д. Тупо отправляем всем, а те, кто ответит положительно – уже смотрим, что там было в описании и прикидываем идем дальше или нет.
Очень часто бывает, что требований много, а на собеседовании спрашивают элементарщину, у меня на бусти есть такой пример, и в тг, так что учитываем это и не паримся.
- Второй ресурс это тг канал https://t.me/jvmjobs советую подключаться и смотреть там предложения. И еще есть Линкедин, но на РФ рынке он практически не используется.
- Есть еще такая тема как паровозик собеседований. Это когда кот-то первый проходит собес, записывает его и выкладывает в общий доступ, остальные смотрят, готовятся к вопросам и идут туда-же. У меня на бусти есть такая возможность, я часто прохожу собеседования и выкладываю их, есть уже люди, которые по ним прошли собесы и получили офферы.
- Есть еще возможность пройти мок собеседование, за деньги менторы проводят их, я могу такое провести. Но если нет возможности, то просто иди на реальный собес, завали его, никаких штрафных санкций ты не получишь)). Пройди еще 2-3 и ты отлично прокачаешься бесплатно. Вакансий неисчерпаемое количество, так что рано или поздно не останется вопросов, которые ты еще не слышал и все твои ответы будут от зубов отскакивать, и ты неизбежно получишь оффер, и не один.