В этой подборке вопросы сгруппированы по формату «Лайвкодинг», чтобы подготовку можно было вести от базовых тем к практическим задачам. В подборке чаще встречаются темы: backend, optimization, algorithms.
Как устроена балансировка нагрузки в gRPC? взаимодействие поверх HTTP/2 с поддержкой мультиплексирования клиентская балансировка с подключаемыми load balancer, например round-robin применение DNS-based discovery для…
PostgreSQL — реляционная БД с поддержкой репликации В режиме master-slave репликация бывает асинхронной или синхронной WAL (Write-Ahead Log) передаётся на слейв Слейв доступен для чтения, но не принимает запись данных…
Хранение weak-ссылок в массиве, например на UIViewControllers context: iOS/Swift, память и ARC стандартные коллекции не хранят weak-ссылки напрямую, поскольку для них требуется специальный тип-обертка слабую ссылку…
Сложность вставки элемента в массив структура данных: массив (статический или динамический) добавление в конец динамического массива: амортизированная сложность — O(1) добавление в начало либо середину: необходимо…
HTTP-методы создания и изменения ресурсов В REST API HTTP-методы позволяют управлять ресурсами и выполнять операции над ними. POST — предназначен для создания нового ресурса: данные передаются на сервер, который часто…
Сетевой уровень: TCP устанавливает соединение, обеспечивает надежность и контролирует поток данных; UDP работает без установления соединения, отличается высокой скоростью, но не гарантирует доставку. HTTP — текстовый…
Коллекции в .NET: назначение разных типов Массив имеет фиксированный размер, обеспечивает быстрый доступ по индексу и служит базовой структурой данных. List<T> представляет собой динамический массив, который при…
Promise — объект JavaScript, описывающий результат асинхронной операции. Основные методы экземпляра: then(onFulfilled, onRejected) — назначает обработчики успешного или ошибочного завершения и возвращает новый…
Недостатки пагинации через LIMIT OFFSET при больших offset производительность снижается, поскольку приходится просматривать множество строк при изменении данных смещение становится нестабильным: добавленные и…
Ключевые методы массивов в JavaScript push() — добавляет один или несколько элементов в конец массива и изменяет его длину pop() — удаляет последний элемент массива и возвращает его shift() — убирает первый элемент,…
Преимущества микросервисной архитектуры по сравнению с монолитом Масштабируемость: отдельные сервисы можно масштабировать независимо, рационально распределяя ресурсы Независимая разработка: команды автономно…