Java Backend | YeaHub
919 subscribers
359 photos
28 videos
3 files
603 links
Теория, подготовка к интервью и курсы для Java разработчиков

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

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

Для связи: @ruslan_kuyanets
Download Telegram
#Собес #flaky_tests #test_flakiness #unstable_tests
🤔 Что такое flaky tests?

💬 Кратко:
Flaky tests — это тесты, которые иногда проходят, а иногда падают без изменения кода. Они подрывают доверие к тестовому набору и замедляют разработку. Основные причины: гонка данных, нестабильное окружение, временные зависимости и неверные предположения о порядке выполнения.

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

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#article #spring #rest-api
📚 Как правильно обрабатывать ошибки в Spring Boot REST

В статье объясняется, как организовать централизованную обработку ошибок, какие статусы стоит использовать (400, 401, 404, 409, 500 и т.д.), и почему логирование играет ключевую роль в поддержке и быстром устранении проблем в проде.

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

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
❤1🔥1
#Собес #hashmap #collision
🤔 Превратится ли HashMap в связанный список или дерево, если hashCode() у ключей всегда возвращает одно и то же значение?

💬 Кратко:

При одинаковом hashCode() все элементы окажутся в одном bucket’е. Изначально они будут храниться в виде связанного списка. Начиная с Java 8, при превышении определенного порога список может быть преобразован в дерево. Это улучшает производительность поиска. Однако сам HashMap не превращается полностью в список или дерево.

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

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

💬 Кратко:
Аннотация @Qualifier в Spring используется для указания, какой конкретный бин должен быть внедрён, когда в контексте приложения существует несколько бинов одного типа (например, несколько реализаций одного интерфейса). Она позволяет разработчику явно задать имя бина или квалификатор, разрешая неоднозначность, которую контейнер не может разрешить автоматически. Это особенно полезно в сложных приложениях, где используются разные стратегии или реализации для одного сервиса.

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

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

💬 Кратко:
Нестабильность может быть вызвана несоответствием версий зависимостей, различиями в настройках ОС, переменных окружения или конфигурационных файлов. Также проблемы возникают из-за отсутствия изоляции окружений (например, dev и prod). Важно использовать инструменты вроде Docker для единообразия.

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

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

Онлайн-платформа программирования, которая позволяет учащимся осваивать программирование с помощью структурированных курсов, тысяч практических задач и регулярных конкурсов

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

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #singleton #bean #qualifier
🤔 Есть ли возможность создать два Singleton'а в Spring?

💬 Кратко:

В Spring можно создать два бина синглтона, если они имеют разные идентификаторы. Это можно сделать через явную регистрацию бинов с разными именами в конфигурации.

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

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
❤1
#Собес #replication #high_availability #failover
🤔 Что такое PostgreSQL replication?

💬 Кратко:

Репликация в PostgreSQL — это процесс создания копий данных из основной базы данных на другие серверы. Это повышает отказоустойчивость, позволяет балансировать нагрузку и обеспечивает резервное копирование. Существует несколько типов репликации: синхронная и асинхронная.

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

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

Платформа-задачник по популярным языкам. Все по классике: редактор кода+учебный материал+задания. Рассчитан на новичков и достаточно много бесплатных уровней

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

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

💬 Кратко:
При многопоточности возникают проблемы из-за одновременного доступа потоков к общим ресурсам. Основные из них — состояние гонки (race condition), когда результат работы зависит от порядка выполнения потоков, и взаимная блокировка (deadlock), когда потоки ждут ресурсы друг друга и не могут продолжить работу. Также возможны проблемы с видимостью изменений между потоками из-за кэширования процессором и сложности отладки таких программ.

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

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
❤1💘1
#Собес #oop #java #spring

🤔 Middle Java Backend разработчик в компанию Яндекс (Вертикали)

Техническое собеседование. Лето 2025. Зарплатная вилка: 250-280к. Опыт в резюме: 4.2 года. Проект: Разработка интеграционного слоя (микросервисы на Spring Boot) для системы расчета штрафов и оценки поставщиков для сети гипермаркетов. Был лайвкодинг.

💬 Вопросы:

- Что такое Spring Boot и в чём его основное преимущество?

- Как обрабатывать кэширование в распределенной среде с использованием Redis?

- Какие методы использовали для оптимизации SQL-запросов (индексы, уменьшение JOIN, проверка на NULL)?

- Как настроить CI/CD?

- Какие способы взаимодействия между микросервисами существуют и в чём их различия (например, REST, Kafka)?

👉 Все вопросы из этого собеседования (26)

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

💬 Кратко:
В проектах с LLM/RAG собирал метрики качества ответов (точность, полнота, F1, faithfulness), задержки (latency p50/p95/p99), стоимость токенов, количество ошибок и дрейф эмбеддингов. Для доставки в дашборды использовал Prometheus для сбора метрик и Grafana для визуализации. Также применял логирование в ELK-стек для анализа отдельных запросов.

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

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

Освойте ключевые темы — сортировки, графы, динамическое программирование и жадные алгоритмы — через учебник с примерами, заданиями и квизами. Идеальный старт для погружения в мир алгоритмов.

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

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
❤1
#Собес #bucket #hashmap
🤔 Что такое bucket в HashMap и что в нем хранится?

💬 Кратко:

Bucket — это ячейка внутреннего массива HashMap. В bucket хранятся все элементы, у которых совпал индекс после вычисления hashCode(). Если элементов несколько, они объединяются в структуру внутри bucket’а. Это может быть список или дерево. Bucket используется для локального поиска ключей.

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

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