SignalR и WebSocket — общий принцип действия, отличия, когда применять?
Можно ли привязать переменную к потоку/таске так, чтобы каждая таска хранила своё значение? Что такое ThreadLocal и AsyncLocal?
Другие способы передачи данных — REST API, gRPC, SSE, Webhooks и т.д.?
Аббревиатура ACID — что значит, расскажи про каждое свойство.
Расскажи про разницу между интерфейсами и абстрактными классами. Для чего придумали реализацию по умолчанию в интерфейсах?
Можно ли использовать оператор lock для блокирования доступа в асинхронном коде?
Что такое инверсия зависимостей (принцип SOLID)?
Вычислительная сложность операций: анализ сложности цикла с HashSet и List (Contains + Add). Почему List не просто массив? Как List управляет размером? Амортизированная сложность добавления в List.
Что происходит внутри SQL сервера при выполнении запроса? Как из текста запроса получается результат?
Какова сложность вставки в List и Dictionary? Что такое коллизии в словарях?
Форматы и способы межсервисного взаимодействия.
Горутины — что такое, почему эффективнее процессов ОС?
Расскажи про модификаторы параметров ref, in, out и их отличия. Что такое readonly ref и ref readonly?
Медленно работает SELECT — в чём может быть причина и что делать?
Dependency Injection — как работает? Чем отличаются времена жизни сервисов?
Что такое LINQ? Разница между IEnumerable и IQueryable?
Что такое async/await, зачем нужно, во что разворачивается?
Чем асинхронное программирование отличается от многопоточного?
Когда будет вызвана отложенная функция defer? При выходе из локального блока, при выходе из функции или при завершении приложения?
Основные структуры данных в C#, которыми пользуетесь?