Как проходят собеседования на Golang-разработчиков в 2ГИС
- четверг, 14 мая 2026 г. в 00:00:19
В последнее время мы всё чаще сталкивались с ситуациями, когда кандидаты отлично проходят HR-фильтры — автоматические и ручные — но на практике оказывается, что опыт завышен, а результаты не совпадают с ожиданиями. При этом сильные разработчики, наоборот, нередко терялись в потоке формальных анкет. Классические собеседования перестали работать.
Мы решили пересмотреть наймовый процесс, чтобы сделать его честнее для всех. Так мы добавили в процесс больше живого общения: нам важно услышать, как человек рассуждает, какие решения он принимает и как работает с командами. Об этом всём — дальше.
Мы хотим, чтобы собеседование было диалогом про инженерное мышление и опыт. Поэтому в процессе подбора на Golang‑позиции появилось несколько изменений. Каждый этап помогает и команде, и кандидату понять, насколько им комфортно работать вместе.

На старте у нас остаётся ИИ-проверка — система помогает отсортировать отклики по базовым критериям. Но финальное решение о том, кого пригласить на интервью, всегда принимает рекрутер: фильтры только помогают, но решает человек.
Обычно это короткий видеосозвон с HR на 20–30 мин. HR знакомится с кандидатом, задаёт общие технические вопросы про опыт, чтобы понять технический уровень, интересуется мотивацией перехода на новую работу, спрашивает про основные критерии выбора компании и ожидания по условиям работы.
На этом этапе рассказываем:
какие команды сейчас ищут разработчиков,
какие задачи решают,
чего ожидать дальше на технических секциях.
Главная цель — познакомиться, ответить на все вопросы кандидата и рассказать о предстоящих этапах.
Секция Welcome — часть нашего процесса, в которой мы хотим познакомиться с кандидатом, как с будущим коллегой: как человек думает, принимает решения и взаимодействует с другими в рабочем процессе. Во время этой беседы мы не оцениваем технические знания или компетенции, а стараемся понять, насколько подходы к работе и взаимодействию совпадают с нашими ценностями.
Вопросы «поведенческие»: мы просим рассказывать реальные ситуации из опыта:
как решались задачи,
что предпринимал, сталкиваясь с трудностями,
как принимал решения и т.д.
Мы не ищем «правильных» ответов — нам интересен способ мышления, принятия решений и извлечения уроков.
Как подготовиться:
Вспомнить конкретные примеры из практики
Здесь предлагаем кандидатам порефлексировать о ситуациях, которые показывают разные стороны работы: как человек разбирался в сути задачи, как принимал решения, где и как брал на себя ответственность, как выстраивал взаимодействие с другими, как реагировал на сложности или разногласия. Важно, чтобы это были реальные случаи, а не абстрактные рассуждения.
Подумать, как рассказывать эти истории
Для каждой ситуации коротко для себя отметьте: что это была за ситуация и контекст, какая цель или задача стояла, что именно ты делал и почему принял такие решения, каков был результат и какие выводы ты сделал для себя. Так будет проще держать мысль и не теряться в деталях.
Настроиться на диалог
Не нужно искать «идеальные» примеры — нам интересны живые, настоящие ситуации из опыта, чтобы мы могли хорошо понять логику и то, как человек смотрит на работу и взаимодействие с коллегами.
Вместе с нашими инженерами кандидату предстоит провести ревью кода REST-сервиса. Мы заранее даем возможность ознакомиться с кодом, а на встрече просим кандидата подготовить удобную IDE и быть готовым продемонстрировать свой экран. В процессе беседы наши инженеры могут попросить реализовать какие-то из предложений кандидата по улучшению кода или запрототипировать какую-то новую фичу.
Кроме обсуждения непосредственно самого кода, можем поговорить и о более общих вещах, таких как:
значения и указатели, многопоточность, интерфейсы и каналы в Go;
базы данных и транзакции;
шины данных и паттерны работы с ними.
Приведи пример своей самой сложной задачи, за которую отвечал именно ты. За что конкретно ты отвечал и какого результата добился?
Расскажи как бы структурировал сервис бронирования отелей на примере ручки оформления брони, какие слои бы выделил?
Как реализуешь счетчик количества запросов к ручке сервиса средствами самого языка?
С какими базами данных, кешами и очередями сообщений работал? Как будешь делать выбор между ними?
Расскажи как работает паттерн Transactional Outbox?
Что нужно: удобная IDE и возможность показать экран.
Наши инженеры на встрече опишут задачу на проектирование некоторой распределённой системы, а кандидату нужно будет предложить её решение с точки зрения описания алгоритма работы системы, контрактов взаимодействия между компонентами, выбора баз данных и очередей сообщений.
Вопросы в первую очередь касаются надёжности и корректности работы итогового решения, технических компромиссов, связанных с выбором той или иной технологии.
Что нужно: возможность пошарить экран и спроектировать систему в любом удобном инструменте (например, Draw.io, Miro, Excalidraw и т.п.)
Основная цель финального интервью заключается в том, чтобы определить уровень зрелости кандидата и его соответствие нашим культурным ценностям. Оцениваем то, как кандидат работает в коллективе и решает конфликты, как он видит свою ответственность за результат и в чём она проявляется, как видит своё влияние на продукт и пользователей, какой вклад привносит в общую инженерную культуру команды.
С новым подходом у нас стало больше шансов найти по-настоящему сильного инженера — по тому, как он рассуждает, решает задачи, отвечает на неожиданные вопросы.
Для кандидатов это тоже плюс: вместо формального «экзамена» они получают возможность просто поговорить с командой, обсудить реальные инженерные задачи и лучше понять, как устроена работа в 2ГИС.