Подборка объединяет вопросы, отмеченные на этапах интервью в Lamoda. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: backend, database, scalability.
Порядок выполнения SQL-запроса Область: работа СУБД и оптимизация запросов FROM: определение таблиц, их объединение (JOIN) и фильтрация по ключам ON: условие, по которому выполняется соединение JOIN WHERE: отбор…
пакет для управления временем жизни операций передаёт таймауты, дедлайны и сигналы отмены обеспечивает распространение отмены между goroutines содержит кросс-сервисные метаданные (trace-id, auth) позволяет выполнять…
Конкуренция транзакций, финансовые системы Организовать конкурентный контроль доступа к балансу Использовать атомарные операции либо транзакции с подходящим уровнем изоляции Доступны два подхода: оптимистичная…
Параллельная обработка с ограничением числа горутин контекст: конкурентность в Go задача: контролировать количество одновременно выполняющихся горутин, чтобы рационально расходовать ресурсы решение: применить…
Палиндромом называют строку, которая одинаково читается в обоих направлениях — слева направо и справа налево Для проверки сопоставляют символы, расположенные в начале и в конце строки В зависимости от условий задачи…
Как применять JOIN, GROUP BY и HAVING в SQL JOIN: связывает строки двух или нескольких таблиц по общему ключу; доступны варианты INNER, LEFT, RIGHT и FULL GROUP BY: объединяет строки в группы по заданным столбцам для…
архитектурный паттерн для интеграции микросервисов сохранение изменений и событий в отдельной таблице (outbox) в рамках одной транзакции с бизнес-операцией асинхронная отправка событий из outbox в очередь или шину…
HTTP middleware представляет собой функцию, которая оборачивает http.Handler Она принимает http.Handler и возвращает другой http.Handler, добавляя логику до или после запуска основного обработчика На практике…
Чем горутины отличаются от потоков ОС и как работает планировщик Go? горутина — легковесный поток, которым управляет runtime Go, а не операционная система создание и завершение горутин требуют минимальных ресурсов:…
Что такое шардинг и репликация? Шардинг представляет собой горизонтальное масштабирование БД Весь массив данных распределяется между несколькими сегментами (шардами) При этом каждый шард содержит часть общего массива…