1:39:49Техническое собеседование .NET-разработчика
Кандидат проходит интервью по .NET, миграциям, микросервисам, асинхронности, базам данных и архитектуре сервиса книг. Вопросы связывают технологические решения с нагрузкой и релизами.
Кандидат проектирует систему кэширования для приложения: выбирает данные и хранилище, обсуждает инвалидацию и согласованность в микросервисной архитектуре. Ведущий разбирает его решения и подход к неопределённым требованиям.
Источник: DotNet Interview Preparation
Открыть на YouTubeВ практической части мок-собеседования кандидат получает задачу разработать механизм кэширования для существующего приложения. Он рассуждает о том, какие редко изменяющиеся данные стоит хранить, когда их удалять и как избежать ненужного расхода памяти. Интервьюер просит выбрать инструмент, описать инвалидацию при изменениях и учесть несколько экземпляров сервиса. Участники разбирают проблему локального файлового кэша в микросервисной среде, холодный старт и ситуацию cache stampede, когда много запросов одновременно обращаются к базе. В обратной связи ведущий отмечает хорошие примеры кандидата, но советует яснее формулировать механизм инвалидации, обсуждать ограничения раньше реализации и принимать ответственность за выбор решения.
1:39:49Кандидат проходит интервью по .NET, миграциям, микросервисам, асинхронности, базам данных и архитектуре сервиса книг. Вопросы связывают технологические решения с нагрузкой и релизами.
59:53Кандидат, оценивающий себя как Middle .NET-разработчик, отвечает на вопросы о самостоятельности, C#/.NET, памяти и освобождении ресурсов, SQL, Redis, API и архитектуре. Есть кейсы о поиске причины роста потребления памяти при обработке Excel-файлов и о точности чисел с плавающей точкой.
1:35:59Кандидат рассказывает о сервисе электронной очереди и отвечает на вопросы о rich domain models, конкурентном доступе к состоянию и чистых функциях. Во второй части он моделирует сервис заказов и оплаты с событиями, Saga и компенсациями, затем обсуждает микросервисы и тестирование.