Вопросы на собеседовании C#-разработчика
817 вопросов с реальных собеседований, чаще всего — в компаниях ПочтаТех, Ozon и RedLab.
Все вопросы
- Какие коллекции существуют в C#?Senior×16Bemaister, Aviasales
- В чем разница между Dispose и финализатором в C# и зачем они нужныSenior×16Lesta Games, Ozon
- Какие проблемы возникают при использовании static в C#Senior×16КодГринИнжиниринг, Kvando Technologies
- Что такое принципы SOLID и как они помогают писать структурированный кодJunior×16Aviasales, БрэндМонитор
- Как работать с Entity Framework?Senior×16Aviasales, PravoTech
- Какие паттерны проектирования вы знаете и использовали в работеSenior×16БрэндМонитор, Протон (Gandiva)
- Почему внутри lock нельзя использовать асинхронный код в C#?Senior×15Kvando Technologies, Ozon
- Какие существуют времена жизни объектов в DI контейнере: transient, scoped, singletonMiddle×12Клеркгруп, Ozon
- Расскажите про опыт взаимодействия с базами данныхSenior×12Rostic’sIT, Клеркгруп
- Какие виды JOIN существуют в SQL и чем отличаются left join, right join и inner joinSenior×12Выберу.ру, ПочтаТех
- Ответь на такие вопросы вслухMock-интервью с ИИ: вопросы голосом и разбор каждого ответа.Попробовать
- В чем разница между IEnumerable и IQueryable в C#?Senior×9Aviasales, ПСБ
- Что такое паттерн Transactional Outbox и как он работаетJunior×9Клеркгруп, Ozon
- Какие примитивы синхронизации существуют и как они работаютSenior×9БрэндМонитор, Ozon
- Расскажите про опыт работы, предпочтения и изученные технологииSenior×9Rostic’sIT, PravoTech
- Что такое абстрактный класс и в чем отличие интерфейса от абстрактного класса?Junior×9Kvando Technologies, Выберу.ру
- В чем разница массива и списка?Senior×9Bemaister, КодГринИнжиниринг
- Как обрабатываются большие объекты в сборщике мусора .NETSenior×9Lesta Games, Выберу.ру
- Какова асимптотическая сложность доступа по ключу в хэш-таблице?Middle×9Bemaister, Промсвязьбанк
- Что такое принципы SOLID и примеры нарушения принципов C и DJunior×9Ozon, ПочтаТех
- Что такое делегаты и события в C#Junior×9КодГринИнжиниринг, Kvando Technologies
Как проходит собеседование
Собеседование на C#-разработчика обычно включает разговор с рекрутером, техническое интервью и встречу с командой. Иногда между ними бывает задача на код или домашнее задание. Рекрутер обычно уточняет, писал ли ты на современном .NET или поддерживал старый .NET Framework, а команда спрашивает про проекты, которые ты переводил с одного на другой.
Чаще всего спрашивают основы языка и платформы: значимые и ссылочные типы, упаковку, сборку мусора и поколения, IDisposable. Почти всегда проверяют асинхронность: async/await, Task, контекст синхронизации и типичные взаимоблокировки. По LINQ — отложенное выполнение и разницу между IEnumerable и IQueryable. Для бэкенда добавляются ASP.NET Core, внедрение зависимостей и время жизни сервисов, Entity Framework и работа с базой данных. На старших позициях обсуждают архитектуру и производительность.
Чтобы готовиться прицельно, отфильтруй вопросы по своему уровню и начни с тех, что спрашивали чаще всего: счётчик стоит у каждого вопроса. Ответь на несколько из них вслух в mock-интервью, так видно, где ответ разваливается, ещё до настоящего созвона.
Другие направления
Прорепетируй собеседование C#-разработчика
Голосовой ИИ-интервьюер задаст вопросы твоего стека, переспросит и разберёт каждый ответ.