Тестовое собеседование C# ASP.NET Core | Junior .NET Developer
Пробное техническое интервью по C# и ASP.NET Core с подробным разбором ответов кандидата без коммерческого опыта. Интервьюер фиксирует пробелы и формулирует план подготовки к Junior-собеседованиям.
Excalib
Открыть на YouTube- Опубликовано на YouTube:
- Просмотры на YouTube: 13,9 тыс.
- Лайки на YouTube: 383
Таймлайн
Коротко о видео
Это мок-интервью Junior .NET-разработчика, который сообщает о полугоде некоммерческого опыта и обсуждает предложение ментора подготовить резюме на Middle-позицию. Интервьюер проверяет знания C#, ООП, SOLID, типов, строк, многопоточности, ASP.NET Core, EF Core, LINQ, RabbitMQ, Redis и SignalR, по ходу исправляя неточные ответы. В финале интервьюер считает, что до уровня Middle кандидату пока далеко, и рекомендует сначала повторить базу, подготовить примеры и затем пробовать Junior-вакансии.
Затронутые темы
Что взять на заметку
- Перед реальным интервью нужно уметь чётко различать Liskov Substitution Principle и Dependency Inversion Principle и иметь для них собственные примеры.
- Следует повторить классификацию типов C#, различия value/reference types, делегаты и события, а также иммутабельность и интернирование строк.
- Нужно объяснять выбор между абстрактным классом и интерфейсом через смысл модели: общий состояние и базовая реализация против контракта возможностей; полезно заранее подготовить примеры Animal и способов доставки.
- Важно не утверждать, что async/await всегда создаёт новый поток: надо разобраться в state machine, блокировках, lock и конкурентных коллекциях.
- Для ASP.NET Core стоит изучить порядок middleware, Action Pipeline и фильтры, включая назначение OnActionExecuting и OnActionExecuted.
- Нужно практическое понимание EF Core: migrations, scaffolding существующей БД, отложенное выполнение LINQ-запросов и отсутствие SQL-запроса до фактического обращения к данным или SaveChanges.
- Следует разобрать назначение RabbitMQ и AMQP, Redis и двухуровневого кэша, а также различия SignalR, gRPC, long polling и WebSocket.