Вопросы на собеседовании C#-разработчика
817 вопросов с реальных собеседований, чаще всего — в компаниях ПочтаТех, Ozon и RedLab.
Все вопросы
- Что такое сборщик мусора и как он работает в .NETJunior×132Lesta Games, Aviasales
- Зачем нужны ключевые слова async и await в C#Senior×90Bemaister, Lesta Games
- Что такое Dependency Injection (DI)Junior×64Bemaister, Aviasales
- Что такое индексы в базах данных и в чем разница кластерного и некластерного индексовJunior×64Промсвязьбанк, БрэндМонитор
- Что такое LINQ и для чего он используется в C#Junior×49КодГринИнжиниринг, Kvando Technologies
- Что такое IDisposable и зачем он используетсяJunior×48Lesta Games, БКС IT & Digital
- Что такое lock в C# и как его использовать?Junior×48Aviasales, AXELOT_SOFT
- В чем разница ссылочных и значимых типов в C# и как они работают с памятью?Senior×42Lesta Games, БКС IT & Digital
- В чем разница класса и структуры в C# и когда использовать структуруSenior×42AXELOT_SOFT, Промсвязьбанк
- Как работают async и await в C#?Senior×36Lesta Games, Aviasales
- Ответь на такие вопросы вслухMock-интервью с ИИ: вопросы голосом и разбор каждого ответа.Попробовать
- Как оптимизировать производительность SQL-запроса при правильных планах и индексах?Senior×36БрэндМонитор, PravoTech
- Что такое синхронизация потоков, для чего она нужна и как решается в C#Junior×35AXELOT_SOFT, Выберу.ру
- В чем разница между ссылочными и значимыми типами в C# и для чего они нужныSenior×35КодГринИнжиниринг, Выберу.ру
- Как работает синхронность и что происходит с потоками во время ожидания в async/await?Senior×25AXELOT_SOFT, БКС IT & Digital
- В чем разница между кластерными и некластерными индексамиSenior×25Bemaister, Промсвязьбанк
- Какие плюсы и минусы перехода от монолита к микросервисам и обратно?Senior×25Bemaister, Rostic’sIT
- В чем разница между параметрами ref и out в C#Senior×20Lesta Games, КодГринИнжиниринг
- Какие уровни изоляции транзакций существуют и как они помогают избежать проблем с конкурентным доступом?Senior×18Промсвязьбанк, Ozon
- Расскажите про концепции асинхронности и параллелизмаSenior×18Aviasales, Ozon
- Какие способы хранения значимых типов в C# существуютSenior×16Альфа-банк, Выберу.ру
Как проходит собеседование
Собеседование на C#-разработчика обычно включает разговор с рекрутером, техническое интервью и встречу с командой. Иногда между ними бывает задача на код или домашнее задание. Рекрутер обычно уточняет, писал ли ты на современном .NET или поддерживал старый .NET Framework, а команда спрашивает про проекты, которые ты переводил с одного на другой.
Чаще всего спрашивают основы языка и платформы: значимые и ссылочные типы, упаковку, сборку мусора и поколения, IDisposable. Почти всегда проверяют асинхронность: async/await, Task, контекст синхронизации и типичные взаимоблокировки. По LINQ — отложенное выполнение и разницу между IEnumerable и IQueryable. Для бэкенда добавляются ASP.NET Core, внедрение зависимостей и время жизни сервисов, Entity Framework и работа с базой данных. На старших позициях обсуждают архитектуру и производительность.
Чтобы готовиться прицельно, отфильтруй вопросы по своему уровню и начни с тех, что спрашивали чаще всего: счётчик стоит у каждого вопроса. Ответь на несколько из них вслух в mock-интервью, так видно, где ответ разваливается, ещё до настоящего созвона.
Другие направления
Прорепетируй собеседование C#-разработчика
Голосовой ИИ-интервьюер задаст вопросы твоего стека, переспросит и разберёт каждый ответ.