Подборка объединяет вопросы, отмеченные на этапах интервью в Гринатом. Здесь можно понять структуру технической проверки и заранее повторить связанные темы. В подборке чаще встречаются темы: backend, database, microservices.
Зачем в SQL используется EXISTS? SQL-конструкция для проверки того, что строки существуют возвращает TRUE, если подзапрос содержит хотя бы одну строку позволяет выполнить быструю проверку без полного получения данных…
Как работают generics в TypeScript? язык программирования TypeScript инструмент обобщённого программирования позволяет создавать функции и классы, использующие параметры типов конкретный тип указывается во время…
Виды тестов и их различия Unit-тесты: изолированно проверяют отдельные функции или модули; могут использовать подход черного или белого ящика Integration-тесты: оценивают взаимодействие модулей, уделяя внимание API и…
Транспорты между микросервисами: синхронный и асинхронный обмен Синхронные: клиент отправляет API-запрос и ожидает получения ответа REST: HTTP/JSON, простая интеграция и широкая совместимость gRPC: HTTP/2 и бинарный…
Уровни изоляции транзакций: принцип работы область: базы данных, управление транзакциями цель: контроль конкурентного доступа и защита от аномалий уровни определены стандартом SQL ANSI: Read Uncommitted
Виды соединений (JOIN) в PostgreSQL основы SQL: объединение таблиц по заданному условию INNER JOIN: возвращает исключительно строки с совпадениями в обеих таблицах LEFT JOIN (LEFT OUTER JOIN): сохраняет все строки…
Преимущества и недостатки TypeScript Статическая типизация: позволяет обнаруживать ошибки во время компиляции и делает код надёжнее Улучшенная автодополнение и рефакторинг: типы расширяют возможности IDE Совместимость…
Преимущества и недостатки микросервисов архитектура на основе автономных сервисов позволяет отдельно масштабировать нужные компоненты увеличивает отказоустойчивость благодаря изоляции сбоев усложняет управление и…
Типы индексов PostgreSQL и сценарии их применения B-tree: универсальный вариант для равенств и диапазонов Hash: эффективен при точных равенствах, однако имеет ограниченные возможности GIN: подходит для мультивалютных…
Какие бывают основные типы Streams? Поток представляет собой последовательность данных в Node.js и других средах Readable — источник, из которого можно читать данные, например файл или сеть Writable — получатель…
Worker threads — преимущества, передача данных и эффективность при I/O Worker threads — механизм Node.js для выполнения задач параллельно, позволяющий обойти ограничение однопоточности V8 С их помощью CPU-интенсивные…
Event-loop. Когда выполняется SetImmediate Event-loop — механизм обработки событий в Node.js Он управляет очередями timers, I/O callbacks, idle, poll, check (SetImmediate) и close callbacks SetImmediate помещает…