Node.js Backend | YeaHub
468 subscribers
232 photos
15 videos
588 links
Теория, подготовка к интервью и курсы для Node.js разработчиков

YeaHub — это платформа для IT-специалистов, объединяющая обучение, карьерный рост, развитие и сообщество единомышленников.

Платформа: https://yeahub.ru

Для связи: @ruslan_kuyanets
Download Telegram
#Собес #git_branch
🤔 Что такое ветка в репозитории Git?

💬 Кратко:

Ветка — это независимая линия разработки в Git. Она позволяет работать над новой функциональностью или исправлениями, не затрагивая основную версию проекта. После завершения работы изменения из ветки можно объединить с основной веткой.

 

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#course #ии
📚 Мини-курс о применении ИИ в разработке

Он рассчитан на начинающих, пройти его можно всего за час. Конспекты доступны на русском языке

Перейти к материалу

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #ооп #полиморфизм #инкапсуляция
🤔 Расскажите о принципах ООП в JavaScript?

💬 Кратко:

В JavaScript ООП основывается на таких принципах, как инкапсуляция, наследование, полиморфизм и абстракция. Инкапсуляция заключается в том, чтобы объединить данные и методы в одном объекте. Наследование позволяет одному классу наследовать свойства и методы другого. Полиморфизм позволяет использовать один и тот же метод в разных контекстах, а абстракция скрывает сложные детали реализации от пользователя.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #module #system #import
🤔 Как работает механизм импорта и экспорта функций между файлами?

💬 Кратко:

Импорт и экспорт позволяют явно определять, какие части модуля доступны снаружи. Экспортируемые сущности объявляются в одном файле, а импортируются в другом. Связь между модулями создаётся на этапе загрузки, а не во время выполнения функций. Модули выполняются один раз и кэшируются. Это делает код предсказуемым и структурированным.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #integration_testing #test_database #test_environment
🤔 Как запускаются интеграционные тесты (какая БД используется)?

💬 Кратко:
Интеграционные тесты проверяют взаимодействие нескольких компонентов, например, приложения и базы данных. Для их запуска обычно используется отдельная тестовая база данных, чтобы не затронуть продакшен-данные. Часто применяют легковесные in-memory БД (H2 для Java, SQLite) или управляемые контейнерами экземпляры (PostgreSQL в Docker). Процесс включает настройку тестового окружения, миграцию схемы и очистку данных перед/после каждого теста.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#tool #инструменты
📚 IT-Tools

IT-Tools — это веб-приложение с набором инструментов для разработчиков и ИТ-специалистов!

Оно предлагает функции для обработки текста, кодирования и декодирования данных, работы с хешами, базами данных, а также инструменты для работы с сетью, JSON и другими форматами.

Перейти к материалу

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #frontend #backend #debugging
🤔 Как frontend взаимодействует с backend при поиске багов?

💬 Кратко:
При поиске багов frontend и backend взаимодействуют через HTTP-запросы. Разработчик проверяет, какие данные отправляются и приходят, используя инструменты разработчика в браузере. Если ошибка на стороне сервера, смотрят логи и статус-коды ответов. Это помогает определить, где именно произошла проблема.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #методы #объекты
🤔 Перечислите основные методы объектов?

💬 Кратко:

Основные методы объектов включают Object.keys(), который возвращает массив ключей объекта, Object.values(), который возвращает массив значений объекта, и Object.entries(), который возвращает массив пар ключ-значение. Также есть Object.assign(), который используется для копирования объектов, и Object.freeze(), который "замораживает" объект, предотвращая его дальнейшее изменение.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #Docker #layer_caching #Dockerfile_optimization
🤔 Почему зависимости в Docker обычно устанавливаются раньше копирования проекта?

💬 Кратко:
Docker кэширует каждый слой образа. Если зависимости устанавливать до копирования кода, то слой с зависимостями пересобирается только при изменении файлов зависимостей (например, package.json). Это ускоряет сборку, так как код меняется чаще, чем зависимости.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#video #архитектура
📚 Road to Highload: видеопроект о проектировании архитектуры высоконагруженных систем

Инженеры Яндекс 360 накопили значительный опыт в проектировании и разработке систем, которыми ежедневно пользуются больше 95 миллионов человек ежемесячно.

В этом видеопроекте разработчики на практических примерах рассказывают, как создают архитектуру систем, которые держат 1 000 000 RPS и хранят петабайты мета-данных.

Перейти к материалу

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #Strangler_Fig #migration #legacy_system
🤔 Что такое паттерн Strangler Fig?

💬 Кратко:
Strangler Fig (инжир-удушитель) — это паттерн постепенной замены частей старой системы новыми. Вместо полной перезаписи вы создаёте новую систему рядом, постепенно перенаправляя на неё функциональность. Старая система отмирает сама, как дерево, обвитое инжиром. Это снижает риски и позволяет мигрировать без остановки сервиса.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤯1
#Собес #async #error_handling #try_catch
🤔 Почему важно использовать try/catch при асинхронных запросах?

💬 Кратко:
try/catch позволяет перехватывать и обрабатывать ошибки, возникающие при выполнении асинхронных операций, таких как запросы к серверу. Без него необработанные исключения могут привести к падению приложения или непредсказуемому поведению. Это ключевой механизм для создания стабильного и отказоустойчивого кода.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #cherry_pick
🤔 Как перенести коммит из одной ветки в другую?

💬 Кратко:

Есть два основных способа:

- git cherry-pick — копирует конкретный коммит в текущую ветку.
- Интерактивный rebase (git rebase -i) — позволяет переупорядочивать или переносить несколько коммитов.

Пример через cherry-pick:
git checkout target-branch       # Переключаемся на ветку, куда переносим
git cherry-pick abc123 # abc123 — хеш коммита, который нужно перенести


📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#course #ии
📚 Мини-курс о применении ИИ в разработке

Он рассчитан на начинающих, пройти его можно всего за час. Конспекты доступны на русском языке

Перейти к материалу

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #stoppropagation #всплытие #event
🤔 Как остановить всплытие события в JavaScript и для чего это нужно?

💬 Кратко:

Для остановки всплытия события в JavaScript используется метод event.stopPropagation(). Это предотвращает дальнейшее "всплытие" события к родительским элементам, тем самым ограничивая его обработку только на текущем элементе. Например, если у вас есть вложенные кнопки, это поможет избежать ненужного срабатывания обработчиков на родительских элементах.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #React #Redux #state_management
🤔 Что такое React и для чего используется Redux?

💬 Кратко:
React — это библиотека JavaScript для создания пользовательских интерфейсов, основанная на компонентах. Redux — это инструмент для управления состоянием приложения, который помогает централизованно хранить данные и предсказуемо их изменять. React отвечает за рендеринг UI, а Redux — за логику работы с данными, особенно в больших приложениях.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #rollback #compensation
🤔 Какие данные необходимо сохранять, чтобы обеспечить возможность отката или компенсации операций?

💬 Кратко:

Для отката или компенсации нужно сохранять исходное состояние и контекст операции. Важно знать, что именно было изменено, кем и когда. Также требуется идентификатор операции и её статус. Без этих данных невозможно корректно восстановить систему.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#trainer #sql
📚 SQL Academy

Сайт предоставляет SQL-тренажёр с упражнениями, которые приближены к реальным профессиональным задачам. Пользователи могут решать задания разной сложности и по различным тематикам

Перейти к материалу

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #RAG #retrieval_augmented_generation #vector_database
🤔 Опишите полный пайплайн RAG-архитектуры от входящего запроса до финального ответа модели.

💬 Кратко:
RAG (Retrieval-Augmented Generation) — это архитектура, которая улучшает ответы языковых моделей, добавляя этап поиска релевантной информации из внешнего источника. Сначала запрос пользователя преобразуется в векторное представление (эмбеддинг). Затем этот вектор используется для поиска похожих документов в векторной базе данных. Найденные документы объединяются с исходным запросом в промпт, который передается LLM для генерации финального ответа. Это позволяет модели отвечать на вопросы, используя актуальные и специфичные данные, не хранящиеся в её весах.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
🤯1
#Собес #microfrontends #shared_libraries #monorepo
🤔 Что такое shared-библиотеки между микрофронтами и как их правильно использовать?

💬 Кратко:
Shared-библиотеки — это пакеты с общим кодом (компоненты, утилиты, типы), которые используются несколькими микрофронтами. Их правильно использовать через централизованное управление версиями, например, в монорепозитории с помощью инструментов вроде Lerna или Nx. Это позволяет синхронизировать обновления и избегать конфликтов версий. Ключевой принцип — библиотеки должны быть максимально независимыми и стабильными, чтобы изменения в них не ломали микрофронты.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #database #cqrs
🤔 Что можно сделать, если в базе данных очень большая нагрузка на запись (OLTP) и маленькая на чтение, но чтение происходит большими объёмами?

💬 Кратко:

Основное решение — реализовать паттерн CQRS (Command and Query Responsibility Segregation). Он разделяет модель для записи (Command) и модель для чтения (Query). Для разгрузки основной базы (OLTP) от тяжёлых запросов на чтение создаётся отдельная реплика (читаемая), оптимизированная под конкретные запросы (денормализованные представления, индексы). Данные в реплику синхронизируются асинхронно

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа