Вопросы на собеседовании C++-разработчика
143 вопроса с реальных собеседований, чаще всего — в компаниях Московский метрополитен, OpenSolutions и Цифровые решения.
Все вопросы
- Расскажите о своем опыте и обязанностях на текущем месте работыMiddleLoudplay
- Почему нельзя все сделать на потокахSeniorЦифровые решения
- Для чего используется ключевое слово mutable в C++ и в каких контекстахSeniorOpenSolutions
- Может ли шаблонный метод быть виртуальным или виртуальный метод быть шаблонным в C++SeniorOpenSolutions
- Какой размер команды на последнем месте работы?MiddleLoudplay
- Как delete[] знает сколько элементов нужно удалитьSeniorOpenSolutions
- Что такое сериализация и десериализацияJuniorМосковский метрополитен
- Будут ли валидны сохранённые итераторы после добавления большого количества элементов в std::vectorSeniorМосковский метрополитен
- Что изменится при замене std::list на std::vector в контексте работы алгоритма remove_ifSeniorЦитадель
- Используете ли вы исключения в работе и проектах?SeniorLoudplay
- Ответь на такие вопросы вслухMock-интервью с ИИ: вопросы голосом и разбор каждого ответа.Попробовать
- Насколько хорошо вы знаете LinuxMiddleМосковский метрополитен
- Использовали ли вы Boost coroutines?SeniorLoudplay
- В чем преимущество std::async по сравнению с использованием std::thread в C++SeniorOpenSolutions
- Как вы разрабатываете и тестируете задачиSeniorЦифровые решения
- Какие методы с квалификатором const существуют и зачем они нужны в C++SeniorЦифровые решения
- Какие библиотеки для сериализации вы знаетеSeniorМосковский метрополитен
- Как вы относитесь к исследовательским задачам по реализации проброса системы локального компьютера на удаленный?SeniorLoudplay
- Какие инструменты использовали для качества кода (линтеры, форматтеры)SeniorЦифровые решения
- Приведите пример кода для очистки ресурсовSenior
- Какие способы межпроцессного взаимодействия существуют на одной машинеSeniorOpenSolutions
Как проходит собеседование
Собеседование на C++-разработчика обычно состоит из скрининга, одного или двух технических интервью и встречи с командой. На многих позициях обязательна задача на код с разбором сложности. Рекрутер обычно уточняет область: игры, финансы, встраиваемые системы или высоконагруженные сервисы, — потому что вопросы на техническом этапе сильно зависят от неё. Стоит заранее вспомнить, какой стандарт языка ты использовал в работе.
Больше всего вопросов про управление памятью и ресурсами: стек и куча, RAII, умные указатели и их отличия, правило пяти, семантика перемещения. Часто спрашивают про виртуальные функции и таблицу виртуальных методов, неопределённое поведение, шаблоны. По стандартной библиотеке — контейнеры, их устройство и сложность операций, инвалидация итераторов. Для системных и высоконагруженных позиций добавляются многопоточность, атомарные операции и модель памяти.
Чтобы готовиться прицельно, отфильтруй вопросы по своему уровню и начни с тех, что спрашивали чаще всего: счётчик стоит у каждого вопроса. Ответь на несколько из них вслух в mock-интервью, так видно, где ответ разваливается, ещё до настоящего созвона.
Другие направления
Прорепетируй собеседование C++-разработчика
Голосовой ИИ-интервьюер задаст вопросы твоего стека, переспросит и разберёт каждый ответ.