Подборка объединяет вопросы, отмеченные на этапах интервью в Sunlight. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: backend, async, database.
Как устроен сборщик мусора в Python? управление памятью основано на подсчёте ссылок (reference counting) для каждого объекта ведётся счётчик ссылок; когда он становится равен 0, объект удаляется освобождение памяти…
Как работает формат соединения WebSocket? протокол для двунаправленного обмена данными поверх TCP соединение начинается с HTTP/HTTPS рукопожатия (handshake) клиент отправляет HTTP-запрос с заголовком Upgrade:…
Виды соединений (JOIN) в PostgreSQL основы SQL: объединение таблиц по заданному условию INNER JOIN: возвращает исключительно строки с совпадениями в обеих таблицах LEFT JOIN (LEFT OUTER JOIN): сохраняет все строки…
Преимущества и недостатки многопоточности в Python реализуется с помощью threading из стандартной библиотеки GIL не позволяет одновременно выполнять Python-байткод в нескольких потоках преимущество: эффективна для…
Основные принципы ООП в Python В Python применяются четыре классических принципа объектно-ориентированного программирования: инкапсуляция, наследование, полиморфизм и абстракция Суть инкапсуляции — скрыть детали…
Сложность поиска в B-tree и Hash-индексе B-tree: сбалансированная структура с отсортированными ключами асимптотическая сложность поиска: O(log n) — определяется высотой дерева поиск выполняется переходами между…
Почему колоночные БД, включая ClickHouse, эффективнее PostgreSQL В отличие от PostgreSQL, данные хранятся в колоночном формате, а не построчно Такая архитектура оптимальна для аналитических запросов, включая агрегацию…
GIL (Global Interpreter Lock) — механизм блокировки на уровне интерпретатора CPython Он ограничивает одновременное выполнение CPU-bound задач только одним потоком Во время I/O поток передаёт управление, поэтому GIL…
Отличия select_related и prefetch_related оба метода оптимизируют обращения Django ORM к связанным моделям select_related: применяет SQL JOIN и получает связанные объекты одним составным запросом лучше всего подходит…
Стек (stack) структура данных, использующая принцип LIFO (Last In, First Out) операции push (добавление) и pop (удаление последнего элемента) выполняются за O(1) применяется для отката состояний, рекурсивных вызовов и…
Как устроены хэш-таблицы, словари и множества в Python: хэш, коллизии и открытая адресация? структура данных формата ключ → значение для dict либо набор уникальных элементов для set в основе лежит хэш-таблица, а хэш…