Подборка объединяет вопросы, отмеченные на этапах интервью в Balance Platform. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: backend, database, optimization.
Типы данных для представления чисел с двойной точностью float — тип числа с плавающей запятой, реализованный по стандарту IEEE 754 decimal.Decimal — десятичное число с фиксируемой точностью, позволяющее сохранять…
контекст: устройство словаря (dict) в CPython применяется метод открытой адресации с двойным хешированием при совпадении хешей новая позиция определяется с помощью вторичного хеша непредсказуемый шаг поиска помогает…
Многопоточность, асинхронность и мультипроцессинг в Python Многопоточность: одновременная работа нескольких потоков в рамках одного процесса. Потоки используют общую память и требуют сравнительно небольших ресурсов.…
Как реализован словарь (dict) в Python? dict представляет собой хеш-таблицу с открытой адресацией Для ключей вычисляется хеш, после чего сохраняются пары (ключ, значение) При коллизии выполняется поиск следующей…
Как ускорить запрос с фильтрацией по JSON-полю? JSON позволяет хранить в БД данные с гибкой структурой создать индексы для отдельных ключей JSON, например GIN в PostgreSQL применять специализированные операторы…
Версии Python начиная с 3.4: различия и обратная совместимость В работе использовал Python 3.4, 3.6, 3.7, 3.8, 3.9 и 3.10 3.4: появились asyncio, enum и pathlib 3.6: добавлены f-строки и асинхронные генераторы 3.7:…
Проблемы и исправления в Python 3.12–3.14 Ключевые улучшения связаны с оптимизацией исполнения и ускорением CPython, включая адаптивный интерпретатор, представленный в 3.12 Язык получает новые синтаксические…
Основные типы данных в Python примитивные: int, float, bool, str коллекции: list, tuple, set, dict изменяемость: list, set, dict являются изменяемыми, а tuple и str — неизменяемыми числа: int хранит целые значения,…
Типы индексов PostgreSQL и сценарии их применения B-tree: универсальный вариант для равенств и диапазонов Hash: эффективен при точных равенствах, однако имеет ограниченные возможности GIN: подходит для мультивалютных…
Индекс для диапазонной выборки по createdAt Обработка миллионов строк — это задача поиска по временной метке Оптимальный вариант — B-Tree, поскольку он предназначен для диапазонных запросов В B-Tree данные…
Какой протокол применяется в RabbitMQ? RabbitMQ представляет собой брокер сообщений Базовый протокол — AMQP (Advanced Message Queuing Protocol) AMQP — открытый стандартный и надежный протокол очередей Он поддерживает…
Как в Python корректно работать с денежными значениями и какой тип данных для этого выбрать? Денежные расчёты требуют высокой точности и исключения ошибок округления Типы float и double нежелательны из-за погрешностей…