#Собес #Docker #layer_caching #Dockerfile_optimization
🤔 Почему зависимости в Docker обычно устанавливаются раньше копирования проекта?
💬 Кратко:
Docker кэширует каждый слой образа. Если зависимости устанавливать до копирования кода, то слой с зависимостями пересобирается только при изменении файлов зависимостей (например, package.json). Это ускоряет сборку, так как код меняется чаще, чем зависимости.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Почему зависимости в Docker обычно устанавливаются раньше копирования проекта?
💬 Кратко:
Docker кэширует каждый слой образа. Если зависимости устанавливать до копирования кода, то слой с зависимостями пересобирается только при изменении файлов зависимостей (например, package.json). Это ускоряет сборку, так как код меняется чаще, чем зависимости.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#video #архитектура
📚 Road to Highload: видеопроект о проектировании архитектуры высоконагруженных систем
Инженеры Яндекс 360 накопили значительный опыт в проектировании и разработке систем, которыми ежедневно пользуются больше 95 миллионов человек ежемесячно.
В этом видеопроекте разработчики на практических примерах рассказывают, как создают архитектуру систем, которые держат 1 000 000 RPS и хранят петабайты мета-данных.
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
📚 Road to Highload: видеопроект о проектировании архитектуры высоконагруженных систем
Инженеры Яндекс 360 накопили значительный опыт в проектировании и разработке систем, которыми ежедневно пользуются больше 95 миллионов человек ежемесячно.
В этом видеопроекте разработчики на практических примерах рассказывают, как создают архитектуру систем, которые держат 1 000 000 RPS и хранят петабайты мета-данных.
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #Strangler_Fig #migration #legacy_system
🤔 Что такое паттерн Strangler Fig?
💬 Кратко:
Strangler Fig (инжир-удушитель) — это паттерн постепенной замены частей старой системы новыми. Вместо полной перезаписи вы создаёте новую систему рядом, постепенно перенаправляя на неё функциональность. Старая система отмирает сама, как дерево, обвитое инжиром. Это снижает риски и позволяет мигрировать без остановки сервиса.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Что такое паттерн Strangler Fig?
💬 Кратко:
Strangler Fig (инжир-удушитель) — это паттерн постепенной замены частей старой системы новыми. Вместо полной перезаписи вы создаёте новую систему рядом, постепенно перенаправляя на неё функциональность. Старая система отмирает сама, как дерево, обвитое инжиром. Это снижает риски и позволяет мигрировать без остановки сервиса.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤯1
#Собес #async #error_handling #try_catch
🤔 Почему важно использовать try/catch при асинхронных запросах?
💬 Кратко:
try/catch позволяет перехватывать и обрабатывать ошибки, возникающие при выполнении асинхронных операций, таких как запросы к серверу. Без него необработанные исключения могут привести к падению приложения или непредсказуемому поведению. Это ключевой механизм для создания стабильного и отказоустойчивого кода.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Почему важно использовать try/catch при асинхронных запросах?
💬 Кратко:
try/catch позволяет перехватывать и обрабатывать ошибки, возникающие при выполнении асинхронных операций, таких как запросы к серверу. Без него необработанные исключения могут привести к падению приложения или непредсказуемому поведению. Это ключевой механизм для создания стабильного и отказоустойчивого кода.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #cherry_pick
🤔 Как перенести коммит из одной ветки в другую?
💬 Кратко:
Есть два основных способа:
-
- Интерактивный rebase (
Пример через
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Как перенести коммит из одной ветки в другую?
💬 Кратко:
Есть два основных способа:
-
git cherry-pick — копирует конкретный коммит в текущую ветку.- Интерактивный rebase (
git rebase -i) — позволяет переупорядочивать или переносить несколько коммитов.Пример через
cherry-pick:git checkout target-branch # Переключаемся на ветку, куда переносим
git cherry-pick abc123 # abc123 — хеш коммита, который нужно перенести
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#course #ии
📚 Мини-курс о применении ИИ в разработке
Он рассчитан на начинающих, пройти его можно всего за час. Конспекты доступны на русском языке
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
📚 Мини-курс о применении ИИ в разработке
Он рассчитан на начинающих, пройти его можно всего за час. Конспекты доступны на русском языке
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #stoppropagation #всплытие #event
🤔 Как остановить всплытие события в JavaScript и для чего это нужно?
💬 Кратко:
Для остановки всплытия события в JavaScript используется метод
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Как остановить всплытие события в JavaScript и для чего это нужно?
💬 Кратко:
Для остановки всплытия события в JavaScript используется метод
event.stopPropagation(). Это предотвращает дальнейшее "всплытие" события к родительским элементам, тем самым ограничивая его обработку только на текущем элементе. Например, если у вас есть вложенные кнопки, это поможет избежать ненужного срабатывания обработчиков на родительских элементах.📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #React #Redux #state_management
🤔 Что такое React и для чего используется Redux?
💬 Кратко:
React — это библиотека JavaScript для создания пользовательских интерфейсов, основанная на компонентах. Redux — это инструмент для управления состоянием приложения, который помогает централизованно хранить данные и предсказуемо их изменять. React отвечает за рендеринг UI, а Redux — за логику работы с данными, особенно в больших приложениях.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Что такое React и для чего используется Redux?
💬 Кратко:
React — это библиотека JavaScript для создания пользовательских интерфейсов, основанная на компонентах. Redux — это инструмент для управления состоянием приложения, который помогает централизованно хранить данные и предсказуемо их изменять. React отвечает за рендеринг UI, а Redux — за логику работы с данными, особенно в больших приложениях.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #rollback #compensation
🤔 Какие данные необходимо сохранять, чтобы обеспечить возможность отката или компенсации операций?
💬 Кратко:
Для отката или компенсации нужно сохранять исходное состояние и контекст операции. Важно знать, что именно было изменено, кем и когда. Также требуется идентификатор операции и её статус. Без этих данных невозможно корректно восстановить систему.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Какие данные необходимо сохранять, чтобы обеспечить возможность отката или компенсации операций?
💬 Кратко:
Для отката или компенсации нужно сохранять исходное состояние и контекст операции. Важно знать, что именно было изменено, кем и когда. Также требуется идентификатор операции и её статус. Без этих данных невозможно корректно восстановить систему.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#trainer #sql
📚 SQL Academy
Сайт предоставляет SQL-тренажёр с упражнениями, которые приближены к реальным профессиональным задачам. Пользователи могут решать задания разной сложности и по различным тематикам
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
📚 SQL Academy
Сайт предоставляет SQL-тренажёр с упражнениями, которые приближены к реальным профессиональным задачам. Пользователи могут решать задания разной сложности и по различным тематикам
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #RAG #retrieval_augmented_generation #vector_database
🤔 Опишите полный пайплайн RAG-архитектуры от входящего запроса до финального ответа модели.
💬 Кратко:
RAG (Retrieval-Augmented Generation) — это архитектура, которая улучшает ответы языковых моделей, добавляя этап поиска релевантной информации из внешнего источника. Сначала запрос пользователя преобразуется в векторное представление (эмбеддинг). Затем этот вектор используется для поиска похожих документов в векторной базе данных. Найденные документы объединяются с исходным запросом в промпт, который передается LLM для генерации финального ответа. Это позволяет модели отвечать на вопросы, используя актуальные и специфичные данные, не хранящиеся в её весах.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Опишите полный пайплайн RAG-архитектуры от входящего запроса до финального ответа модели.
💬 Кратко:
RAG (Retrieval-Augmented Generation) — это архитектура, которая улучшает ответы языковых моделей, добавляя этап поиска релевантной информации из внешнего источника. Сначала запрос пользователя преобразуется в векторное представление (эмбеддинг). Затем этот вектор используется для поиска похожих документов в векторной базе данных. Найденные документы объединяются с исходным запросом в промпт, который передается LLM для генерации финального ответа. Это позволяет модели отвечать на вопросы, используя актуальные и специфичные данные, не хранящиеся в её весах.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤯1
#Собес #microfrontends #shared_libraries #monorepo
🤔 Что такое shared-библиотеки между микрофронтами и как их правильно использовать?
💬 Кратко:
Shared-библиотеки — это пакеты с общим кодом (компоненты, утилиты, типы), которые используются несколькими микрофронтами. Их правильно использовать через централизованное управление версиями, например, в монорепозитории с помощью инструментов вроде Lerna или Nx. Это позволяет синхронизировать обновления и избегать конфликтов версий. Ключевой принцип — библиотеки должны быть максимально независимыми и стабильными, чтобы изменения в них не ломали микрофронты.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Что такое shared-библиотеки между микрофронтами и как их правильно использовать?
💬 Кратко:
Shared-библиотеки — это пакеты с общим кодом (компоненты, утилиты, типы), которые используются несколькими микрофронтами. Их правильно использовать через централизованное управление версиями, например, в монорепозитории с помощью инструментов вроде Lerna или Nx. Это позволяет синхронизировать обновления и избегать конфликтов версий. Ключевой принцип — библиотеки должны быть максимально независимыми и стабильными, чтобы изменения в них не ломали микрофронты.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #database #cqrs
🤔 Что можно сделать, если в базе данных очень большая нагрузка на запись (OLTP) и маленькая на чтение, но чтение происходит большими объёмами?
💬 Кратко:
Основное решение — реализовать паттерн CQRS (Command and Query Responsibility Segregation). Он разделяет модель для записи (Command) и модель для чтения (Query). Для разгрузки основной базы (OLTP) от тяжёлых запросов на чтение создаётся отдельная реплика (читаемая), оптимизированная под конкретные запросы (денормализованные представления, индексы). Данные в реплику синхронизируются асинхронно
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Что можно сделать, если в базе данных очень большая нагрузка на запись (OLTP) и маленькая на чтение, но чтение происходит большими объёмами?
💬 Кратко:
Основное решение — реализовать паттерн CQRS (Command and Query Responsibility Segregation). Он разделяет модель для записи (Command) и модель для чтения (Query). Для разгрузки основной базы (OLTP) от тяжёлых запросов на чтение создаётся отдельная реплика (читаемая), оптимизированная под конкретные запросы (денормализованные представления, индексы). Данные в реплику синхронизируются асинхронно
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#video #архитектура
📚 Road to Highload: видеопроект о проектировании архитектуры высоконагруженных систем
Инженеры Яндекс 360 накопили значительный опыт в проектировании и разработке систем, которыми ежедневно пользуются больше 95 миллионов человек ежемесячно.
В этом видеопроекте разработчики на практических примерах рассказывают, как создают архитектуру систем, которые держат 1 000 000 RPS и хранят петабайты мета-данных.
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
📚 Road to Highload: видеопроект о проектировании архитектуры высоконагруженных систем
Инженеры Яндекс 360 накопили значительный опыт в проектировании и разработке систем, которыми ежедневно пользуются больше 95 миллионов человек ежемесячно.
В этом видеопроекте разработчики на практических примерах рассказывают, как создают архитектуру систем, которые держат 1 000 000 RPS и хранят петабайты мета-данных.
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #lexical #scope #module
🤔 Имеет ли импортированная функция доступ к своей лексической области видимости?
💬 Кратко:
Да, импортированная функция полностью сохраняет доступ к своей лексической области видимости. Импорт не влияет на окружение, в котором функция была объявлена. Функция всегда работает с теми переменными, которые были доступны ей в момент создания. Место вызова не имеет значения. Это следует из лексической модели JavaScript.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Имеет ли импортированная функция доступ к своей лексической области видимости?
💬 Кратко:
Да, импортированная функция полностью сохраняет доступ к своей лексической области видимости. Импорт не влияет на окружение, в котором функция была объявлена. Функция всегда работает с теми переменными, которые были доступны ей в момент создания. Место вызова не имеет значения. Это следует из лексической модели JavaScript.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #send #json #res
🤔 Назовите разницу между res.send() и res.json().
💬 Кратко:
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Назовите разницу между res.send() и res.json().
💬 Кратко:
res.send() отправляет ответ любого типа, автоматически устанавливая заголовок Content-Type в зависимости от данных. res.json() предназначен для отправки JSON-объектов и автоматически форматирует данные в JSON. Выбирайте res.json(), если работаете только с JSON-данными, и res.send(), если требуется гибкость в типах данных.📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #docker_build #dockerfile #image
🤔 Как создать Docker-образ с использованием Dockerfile?
💬 Кратко:
Чтобы создать Docker-образ, необходимо использовать команду
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Как создать Docker-образ с использованием Dockerfile?
💬 Кратко:
Чтобы создать Docker-образ, необходимо использовать команду
docker build, указав путь к каталогу, содержащему Dockerfile. Например, docker build -t myimage:tag . создаст образ с именем myimage и тегом tag из текущего каталога.📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#trainer #курсы #тренажеры
📚 CodeChef
Онлайн-платформа программирования, которая позволяет учащимся осваивать программирование с помощью структурированных курсов, тысяч практических задач и регулярных конкурсов
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
📚 CodeChef
Онлайн-платформа программирования, которая позволяет учащимся осваивать программирование с помощью структурированных курсов, тысяч практических задач и регулярных конкурсов
Перейти к материалу
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #debugging #algorithm_analysis #error_handling
🤔 Как анализировать ошибки в алгоритме?
💬 Кратко:
Анализ ошибок в алгоритме начинается с воспроизведения проблемы и сбора данных. Используйте отладчик для пошагового выполнения кода и проверки значений переменных. Добавьте логирование ключевых этапов и проверьте граничные случаи. Сравните ожидаемое и фактическое поведение, чтобы локализовать ошибку.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Как анализировать ошибки в алгоритме?
💬 Кратко:
Анализ ошибок в алгоритме начинается с воспроизведения проблемы и сбора данных. Используйте отладчик для пошагового выполнения кода и проверки значений переменных. Добавьте логирование ключевых этапов и проверьте граничные случаи. Сравните ожидаемое и фактическое поведение, чтобы локализовать ошибку.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #ts #microservices #nest.js
🤔 Middle Node.js Backend разработчик в компанию Uniteller
Техсобес. ЗП: от 220к. Август 2025. Проект: Uniteller. Опыт: 3 года. Стандартное собеседование на Node.js без глубоких вопросов, делали упор на вопросы, которые часто применяются на практике
💬 Вопросы:
- В чем особенность хранения объектов?
- Как работает сборщик мусора (garbage collector) в JavaScript? Какие есть стратегии для управления памятью?
- Какие методы использовали для оптимизации SQL-запросов (индексы, уменьшение JOIN, проверка на NULL)?
- В чем плюсы и минусы TS.
- Что такое pattern outbox?
👉 Все вопросы из этого собеседования (10)
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Middle Node.js Backend разработчик в компанию Uniteller
Техсобес. ЗП: от 220к. Август 2025. Проект: Uniteller. Опыт: 3 года. Стандартное собеседование на Node.js без глубоких вопросов, делали упор на вопросы, которые часто применяются на практике
💬 Вопросы:
- В чем особенность хранения объектов?
- Как работает сборщик мусора (garbage collector) в JavaScript? Какие есть стратегии для управления памятью?
- Какие методы использовали для оптимизации SQL-запросов (индексы, уменьшение JOIN, проверка на NULL)?
- В чем плюсы и минусы TS.
- Что такое pattern outbox?
👉 Все вопросы из этого собеседования (10)
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #Docker #layers #image_size
🤔 Что такое слои в Docker и как они влияют на размер образа?
💬 Кратко:
Docker-образ состоит из слоёв — неизменяемых файловых систем, каждый из которых соответствует инструкции в Dockerfile. Слои кэшируются, что ускоряет повторные сборки. Размер образа — это сумма размеров всех его слоёв. Чтобы уменьшить размер, нужно объединять команды, удалять временные файлы в одном слое и использовать многоэтапные сборки.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤔 Что такое слои в Docker и как они влияют на размер образа?
💬 Кратко:
Docker-образ состоит из слоёв — неизменяемых файловых систем, каждый из которых соответствует инструкции в Dockerfile. Слои кэшируются, что ускоряет повторные сборки. Размер образа — это сумма размеров всех его слоёв. Чтобы уменьшить размер, нужно объединять команды, удалять временные файлы в одном слое и использовать многоэтапные сборки.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа