В этой подборке вопросы сгруппированы по формату «Поведенческие вопросы», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: backend, database, async.
Как volatile обеспечивает видимость изменений в многопоточной программе? многопоточность, память и оптимизации указывает, что переменная не должна кешироваться потоками не допускает инструкции reordering со стороны…
управление конкурентным доступом (Concurrency Control) уровни изоляции (Read Uncommitted → Serializable) блокировки (Locking): shared и exclusive мультиверсионность (MVCC) — хранение версий данных для чтения…
Почему асинхронность повышает число запросов, обрабатываемых одним потоком? Асинхронность — это модель выполнения, при которой операции могут идти без блокировки потока Пока I/O-операция не завершена, поток не…
Контекст: Java, коллекции и итерация ConcurrentModificationException появляется, если структурно изменить коллекцию не через используемый итератор Для удаления во время обхода применяйте Iterator.remove() Ещё один…
Защита конфиденциальных данных при хранении Размещение секретов за пределами исходного кода: например, в переменных окружения или конфигурационных файлах с ограниченными правами доступа Применение специализированных…
Надёжное хранение ключей необходимо для поддержания доверия к JWT Применение секретного менеджера: AWS KMS, HashiCorp Vault или Azure Key Vault Доступ предоставляется только согласно правам и ролевой модели (RBAC)…
многозадачность Go поток блокируется корутиной, если она не передаёт управление через yield (например, отсутствует усыпление C) бесконечный цикл без операций ввода-вывода или вызова runtime.Gosched() полностью…
Как блокирующие операции влияют на Event Loop Event Loop — основа обработки асинхронных событий в JS Блокирующие операции приостанавливают цикл и замедляют выполнение задач Такие блокировки вызывают задержки UI и…
Браузер загружает и визуализирует веб-страницы По URL он отправляет серверу HTTP/HTTPS-запрос В ответ получает HTML, CSS, JS и прочие ресурсы Разбирает HTML и формирует DOM-дерево Обрабатывает CSS и создаёт…
TypeScript представляет собой супермножество JavaScript, дополненное типами Браузеры не поддерживают TypeScript непосредственно Перед загрузкой исходный TS-код транспилируется в JS посредством tsc или сборщика,…
Сервисы Android можно привязывать (bound) к компонентам приложения, включая Activity и Service, чтобы они могли взаимодействовать друг с другом. Метод bindService() создаёт соединение между клиентом и сервисом. После…
Как в C# устроено замыкание (closure) с внешней переменной замыкание — это сохранённый контекст окружения лямбды внешняя переменная (например, counter) захватывается по ссылке, а не копируется все обращения к этой…