Вопросы на собеседовании C++-разработчика
143 вопроса с реальных собеседований, чаще всего — в компаниях Московский метрополитен, OpenSolutions и Цифровые решения.
Все вопросы
Нашлось 108 вопросов
- В чем разница между std::map и std::unordered_map и кто быстрее работаетSenior×9Lesta Games, Цифровые решения
- Какой опыт работы с LinuxSenior×9OpenSolutions, Московский метрополитен
- Зачем в C++ объявлять деструктор виртуальнымSenior×9Lesta Games, Цифровые решения
- Какие рекомендации по выбрасыванию исключений из конструкторов и деструкторов в C++Senior×9Lesta Games, OpenSolutions
- Какие способы запуска потока существуют в C++Senior×4Lesta Games, Цитадель
- Как работают виртуальные методы в C# и для чего они используютсяSenior×4OpenSolutions, Московский метрополитен
- Какие механизмы синхронизации существуют для решения проблем многопоточностиSenior×4Цифровые решения
- Приведите пример интерфейса из жизниSeniorЦитадель
- Как вызвать метод базового класса из класса наследника в C++SeniorLesta Games
- Какие основные виды памяти процесса существуютSeniorLesta Games
- Ответь на такие вопросы вслухMock-интервью с ИИ: вопросы голосом и разбор каждого ответа.Попробовать
- Для чего нужен weak_ptr в C++ и какую задачу без него не решитьSeniorЦифровые решения
- В чем разница между статической и динамической библиотекойSeniorМосковский метрополитен
- Какой опыт у вас есть в программировании под микроконтроллерыSeniorDelta_Solutions
- В чем отличие разных стандартов C++SeniorDelta_Solutions
- Существуют ли указатели и ссылки на функции в C++SeniorLesta Games
- На каком стандарте C++ вы работали больше всегоSeniorЦифровые решения
- Какие алгоритмы вы использовали, например бинарный поиск, алгоритмы на графах (Дейкстра, поиск в глубину и ширину)SeniorDelta_Solutions
- Какие интерфейсы и протоколы вы использовали в Linux и WindowsSeniorDelta_Solutions
- В каких случаях unique_ptr предпочтительнее shared_ptrSenior
- Как достигается эффект переопределения виртуальной функции в дочернем классе в C++SeniorLesta Games
Как проходит собеседование
Собеседование на C++-разработчика обычно состоит из скрининга, одного или двух технических интервью и встречи с командой. На многих позициях обязательна задача на код с разбором сложности. Рекрутер обычно уточняет область: игры, финансы, встраиваемые системы или высоконагруженные сервисы, — потому что вопросы на техническом этапе сильно зависят от неё. Стоит заранее вспомнить, какой стандарт языка ты использовал в работе.
Больше всего вопросов про управление памятью и ресурсами: стек и куча, RAII, умные указатели и их отличия, правило пяти, семантика перемещения. Часто спрашивают про виртуальные функции и таблицу виртуальных методов, неопределённое поведение, шаблоны. По стандартной библиотеке — контейнеры, их устройство и сложность операций, инвалидация итераторов. Для системных и высоконагруженных позиций добавляются многопоточность, атомарные операции и модель памяти.
Чтобы готовиться прицельно, отфильтруй вопросы по своему уровню и начни с тех, что спрашивали чаще всего: счётчик стоит у каждого вопроса. Ответь на несколько из них вслух в mock-интервью, так видно, где ответ разваливается, ещё до настоящего созвона.
Другие направления
Прорепетируй собеседование C++-разработчика
Голосовой ИИ-интервьюер задаст вопросы твоего стека, переспросит и разберёт каждый ответ.