Я довольно часто видел мнение, что проходить собеседования это отдельный навык, не связанный с работой, и сам начал придерживаться такой позиции. Я спокойно работал, на поиск не отвлекался и в ус не дул. Но настал момент Х, когда мне пришлось задуматься о возможной смене места работы. Можно ли пройти собеседования без подготовки? Оценивают ли меня на рынке так же, как на текущем месте? Из чего вообще состоят настоящие собеседования? Сколько на это всё надо времени? С этими вопросами я открыл резюме на Хабр.Карьере и начал ждать предложений.

Для контекста о моём опыте: почти 5 лет опыта Java/Kotlin Backend Разработчиком. Из них около года - в Senior позиции. В текущее место я устроился стажёром и с тех пор не менял работу, не ходил на собеседования, и сам их не проводил. Поэтому все мои представления о них только по рассказам.

Куда собеседовался: позиция Senior Java/Kotlin Backend (пару раз на лида в качестве эксперимента), крупные и средние российские компании разных направлений (банки, еком, финтех, аутсорсеры, соцсети).

Терминология
  • Собеседование – весь процесс от предложения HR до оффера или отказа.

  • Этап – собеседование состоит из серии встреч, которые я буду называть этапами.

  • Секция – промежуток собеседования, объединённый общей темой. В одном этапе может быть несколько секций.

  • Все собеседования проходили удалённо, поэтому слова созвон и встреча – синонимы.

Секции

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

0. Созвон с HR

Как проходит: созваниваемся с HR и они делают проверку на соответствие вакансии. Периодически на данной встрече встречается опросник по разным технологиям. (Например: назовите коллекции в Java, какие типы баз данных существуют и т.д.).

Зачем: проверка кандидата на общую адекватность перед стартом остального процесса собеседования.

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

1. Технический скрининг

Как проходит: встреча с разработчиком из компании. Иногда дают сказать пару слов о своём опыте, дальше задают вопросы от самых азов и до самых верхов. Спрашивали от методов java.lang.Object до discovery микросервисов и партиций в Kafka. Но всё зависит от компании.

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

Личный опыт: я не прошёл большую часть встреченных скринингов. И это моя самая нелюбимая секция. Найти полное пересечение используемых технологий крайне маловероятно. Лично меня бомбануло с фидбека подтянуть методы класса Object (я не назвал wait и notify, просто потому что последний раз их использовал, когда изучал основы Java). При этом сомневаюсь, что у меня возникнут трудности подтянуть технологии в случае необходимости. Но как мне сказали в одном месте, что даже если я адекватный и у меня ценный опыт, они не могут просто пропустить чеклист. Ибо на следующих этапах кто-то может меня спросить, и если я не отвечу, то потом прилетит интервьюеру.

2. Алгоритмы

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

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

Личный опыт: всего я решил 12 задачек на 6 секциях. Самостоятельно додумался до полного решения штук у четырёх, с остальными помогали интервьюеры. Из подготовки у меня аж 1348 рейтинга на Codeforces с последним раундом 2 года назад, а последнее активное участие – 4 года. В целом секция не вызывала отрицательных эмоций (хотя изначально был настроен к ней скептически, после всех прочитанных статей на Хабре). Единственное, в одной компании данную секцию повторяли три раза подряд, под конец мне уже было смешно, но я решил не останавливаться. Уровень задачек не менялся, можно было бы и другие этапы заложить в это потраченное время. Были даже ситуации, когда в разных компаниях давали одни и те же задачи. Я об этом говорил, но сама ситуация забавная.

3. Лайфкодинг

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

Зачем: проверить действительно ли ты умеешь писать код, как ты ориентируешься в незнакомом коде и задаче.

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

4. Систем-дизайн

Как проходит: название говорит само за себя – нужно спроектировать систему. Собираем требования, после на какой-нибудь онлайн доске, где можно рисовать, приступаем к созданию системы. Общаемся с интервьюером и обосновываем своё решение.

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

Алгоритм успешного прохождения
Алгоритм успешного прохождения

Личный опыт: попробовал проектировать несколько раз с переменным успехом. Микросервисы, кафка, базы данных, кеши, проектирование API. Понял, что опыта проектирования хайлоад систем мне явно не достаёт. Но, я никогда и не работал на таких проектах, о чём честно предупреждал интервьюеров. В целом, показалось что помимо красивого решения, смотрят также на рассуждения, умение задавать вопросы и прочие софты.

5. Код ревью

Как проходит: даётся участок кода в онлайн редакторе, который надо разобрать. В целом, обычный процесс код ревью.

Зачем: разработчики читают код чаще, чем пишут. Здесь проверяют на умение разбираться в чужом коде, а также на токсичность в процессе ревью.

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

6. Траблшутинг

Как проходит: есть гипотетическая ситуация с проблемой на проде (сервис стал тормозить) и необходимо раскрутить процесс её решения, задавая вопросы интервьюеру.

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

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

7. Знакомство

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

Зачем: здесь происходит непосредственный метч с командой.

Честное интервью
Честное интервью

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

Продолжительность

Длительность всего процесса собеседования зависит от нескольких факторов:

  • Количество этапов

  • Пересечение свободных слотов у двух сторон

  • Скорость коммуникации между HR и командой

Каждый этап обычно длится от часа до полутора. Но в общей продолжительности собеседования данным временем можно пренебречь.

Количество этапов может быть разным, у меня они колебались от 2 до 6 с учётом первого созвона с HR.

Но самое интересное – это подобрать время таким образом, чтобы все были свободны. Основная проблема, что их в основном назначают на рабочее время, поэтому если есть полная занятость, скорее всего придётся пожертвовать своим обедом или доделывать дела позже. Если не иметь постоянного места работы, то в целом будет намного проще.

Возьму для примера среднюю картинку собеседования:

  1. Потом, обычно на следующий день, предлагают назначить время первого этапа.

  2. Первый этап наступит минимум на следующий день, но это может быть как через день, так и на следующей неделе.

  3. После этапа день-два уходит на получение обратной связи. Но бывали случаи, когда её дают сразу. 

  4. Повторяем пункты 2-4 пока не закончим все этапы.

  5. Получаем и заполняем анкету в службу безопасности. Обычно это занимает день, но в одном месте мне не могли выслать анкету неделю.

  6. В случае успеха получаем долгожданный оффер.

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

Негатив

Для себя выделил пункты, которые негативно влияют на восприятие работодателя в целом:

  • Опоздания на назначенное время больше чем на 5 минут.

  • Перенос этапа в последний момент.

  • На собеседовании присутствующие не слушают собеседников, общаются с кем-то за пределами экрана и в целом отвлекаются.

  • Не соблюдают обещанные сроки более чем на сутки.

  • Не могут найти окно для этапов в своём расписании больше нескольких дней.

  • После вежливого отказа от оффера пытаются переубедить всеми правдами и неправдами. Я понимаю, что это работа HR, но это очень бесит.

  • Несоответствие итогового предложения о зарплате, тому что было оговорено в начале.

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

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

Итоги

Итак, реально ли пройти собеседование человеку, который просто качественно делает свою работу, не читает материалы по типу 1000 вопросов на Java-разработчика, не кодит литкод и в целом не поддерживает себя в тонусе периодическими собеседованиями?

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

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

Статистика

Данная часть для любителей цифр и к основному посылу статьи отношения особо не имеет.

  • Всего собеседований за два месяца: 11

  • Максимальное количество этапов: 8 (из них 3 технические, 1 HR, и 4 знакомства)

  • Минимальное количество этапов: 2

  • Максимальное количество секций за этап: 3

  • Конвертация собеседований в офферы: 4/11 ~ 36%

  • Конвертация финальных этапов в офферы: 4/7 ~ 57%

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

Комментарии (13)


  1. kalbas
    31.05.2024 16:30
    +8

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


    1. NeonMercury
      31.05.2024 16:30
      +6

      Я тут недавно проходил собеседование, которое делилось на несколько этапов:

      • первичная беседа с HR

      • тестовое задание на 12 часов непрерывного кодинга

      • собеседование с архитектором по умению строить архитектуру

      • собеседование о том, как ты разделяешь ценности кампании

      • Собеседование о том, как ты достигаешь целей

      • Техническое собеседование с лайв-кодингом, где тебе дают написать ещё одну задачу

      В итоге времени потрачено 6 часов на разговоры + 12 на тестовое, и в итоге отказ.

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

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


      1. kalbas
        31.05.2024 16:30

        Можно поинтересоваться, там насколько выше рынка платили то? Ну просто если зп плюс-минус по рынку, то вписываться в такие темы -- это натурально нужно быть фанатом этой компании.


        1. NeonMercury
          31.05.2024 16:30

          Это одна из стран ЕС, по рынку в среднем платят сеньорам €6000 брутто, они в среднем платят €8000 брутто. Сам я вписался из-за знакомства, очень звали туда, но, видимо, другая часть команды решила со мной не продолжать.


          1. dyadyaSerezha
            31.05.2024 16:30

            6К брутто - ну так себе. Я недавно находил на 7-8К нетто. Но не проходил)


      1. dyadyaSerezha
        31.05.2024 16:30
        +2

        • собеседование о том, как ты разделяешь ценности кампании

        • Собеседование о том, как ты достигаешь целей

        Серьёзно? Я бы очень подумал, прежде чем идти туда. Попахивает каким-то культом.


    1. n43jl
      31.05.2024 16:30
      +4

      Я не фанат тестовых заданий:

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

      • некоторые недобросовестные компании пытаются пихнуть свои несделанные продукт фичи в тестовые задания

      • тестовые задания практически всегда более время затратные чем даже сумма всех 6 этапов (6ч)

      • как работодателю отличать людей которые потратили на тестовое задание 3ч, против 12ч?

      • как работодателю отличать людей которым сделал кто-то другой тестовое задание?

      • Из-за последних двух пунктов, этапы никуда не деваются, и 6-12ч потраченных на тестовое задание просто суммируются с еще 3-4 этапами собеседований.

      Ну а мода на 6-ти этапные собеседования это мода из фаангов и американских энтерпрайзов.


      1. 40kTons
        31.05.2024 16:30

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


  1. kenomimi
    31.05.2024 16:30
    +4

    Я честно писал в резюме, что с математикой, ребусами и шарадами не дружу, вспоминать методы обжекта танцуя и жонглируя не буду, на бумажке валидный пишите код сами, с литкодом заходите на второй курс универа к стажерам. Мой опыт смотрите на гитхабе, а так же вот телефоны старых мест работы. Если не согласны - не приглашайте. И ничего, даже в яндексе удалось жалом поводить). В целом, если компания адекватная, там будет разговор с кадровиком (чтобы отсеять шутов и клоунов), опционально разговор с СБ, технический собес без экзаменационой и вахтерской дури, несколько этапов знакомства с коллективом (команда может быть не одна), где показывают, что надо будет делать и кто все эти люди.


  1. dyadyaSerezha
    31.05.2024 16:30
    +4

    Значит, за 4 года от стажёра до серьора? Как-то очень круто. Или я отстал от жизни? И кстати, на сколько удалось поднять свою зарплату и не пытались ли удержать на старом месте, подняв зарплату? И причины перехода?


    1. Homyakin Автор
      31.05.2024 16:30

      Значит, за 4 года от стажёра до серьора? Как-то очень круто.

      Я переход не подгонял, давали по заслугам. Но не везде, где я собесился, меня оценивали аналогично.

      И кстати, на сколько удалось поднять свою зарплату и не пытались ли удержать на старом месте, подняв зарплату? И причины перехода?

      Зарплата не была целью. Меня полностью устраивало моё место работы. В причины углубляться не хочу, но по итогу я остался в том же месте.


  1. Hublot
    31.05.2024 16:30

    Проходил один раз собеседование 2 года назад, когда пришел в ИТ из другой сферы. Был разговор с HR, потом тестовое задание на дому не очень сложное, собеседование с руководителями в формате "откуда я и как я тут оказался". Пока не дошел до этапа поиска новой работы, но многопунктные собеседования не очень уважаю.


  1. sergiodev
    31.05.2024 16:30
    +3

    Меня лично раздражают созвоны с HR. Столько времени уходит на согласование звонка и его ожидание, а по факту спросит какую-нибудь ерунду, которая и так в резюме написана, или что-то, что можно было письменно спросить в телеге (они всё раано же звонят через ТГ!). Просто людям надо часы отработать походу.