Подборка помогает системно подготовиться к интервью на позицию Backend-разработчик: проверить теорию, потренировать практические задачи и объяснение решений. В подборке чаще встречаются темы: backend, database, api.
Для чего нужен S3-подобный storage и в чём его преимущество перед сервером? Облачное объектное хранилище Масштабирование до экзабайт без остановки работы Совместимость API с AWS S3 делает интеграцию простой.…
Асинхронный обмен данными: вызов не блокируется Надёжная доставка с помощью очередей и подтверждений Простое масштабирование при увеличении нагрузки Поддержка сложных коммуникационных паттернов (pub/sub,…
Kotlin — современный язык JVM, полностью совместимый с Java Выразительный лаконичный синтаксис уменьшает шумовой код и количество ошибок Корутин обеспечивают удобную асинхронность и конкурентное выполнение Механизм…
Почему исключения сравнивают с оператором goto и чем это опасно Исключение прекращает стандартное выполнение программы и немедленно передаёт управление обработчику. В этом оно напоминает оператор goto, меняющий…
сложная архитектура и высокие затраты на управление нуждается в развитых процессах автоматизации и DevOps-практиках сложно обеспечить согласованность данных и корректную работу транзакций межсервисное взаимодействие…
архитектура: система из независимых сервисов масштабируемость: каждый компонент можно масштабировать отдельно развертывание: автономные обновления без остановки всей системы гибкость: в одном приложении можно…
Индексы увеличивают объём БД и требуют дополнительного дискового пространства Замедляют выполнение операций записи и обновления (INSERT, UPDATE, DELETE), поскольку при них необходимо изменять и индексы Большое…
Почему одну DTO не следует передавать через все слои и как разделять модели Многослойная архитектура строится так, чтобы каждый слой выполнял свою специализированную задачу DTO предназначены для транспортировки данных…
Почему context.Background() не следует передавать вглубь бизнес-логики и как правильно работать с контекстами context.Background() представляет собой корневой пустой контекст: его нельзя отменить, и в нём нет значений…
Асинхронность и блокировка: конструкция await приостанавливает выполнение метода и позволяет другим задачам продолжить работу, тогда как lock синхронно блокирует общий ресурс. Риск deadlock: после await поток…
горутины — лёгкие, однако они всё же расходуют память и CPU создание без ограничений → увеличение потребления RAM и расходы на планирование способно вызвать истощение ресурсов и привести к остановке приложения для…
Почему «отправка в брокер до коммита» не обеспечивает транзакционность с двумя очередями? область: распределённые транзакции и messaging «отправка в брокер до коммита» означает, что сообщение попадает в очередь до…