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

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

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

Для связи: @ruslan_kuyanets
Download Telegram
#Собес #ci/cd #automation #testing
🤔 Каковы преимущества CI/CD?

💬 Кратко:

CI/CD ускоряет процесс разработки за счёт автоматизации тестирования и развертывания. Это уменьшает вероятность ошибок, повышает стабильность системы и позволяет быстрее доставлять новые функции пользователям.

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

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

Русскоязычный канал, на котором вы найдете видеозаписи лекций и короткие тематические ролики на интересные темы о компьютерных науках и программировании. Материал публикуется для ИТ-специалистов, студентов и школьников, интересующихся программированием и математикой.

Помимо роликов о программировании на Rust канал публикует уроки по Python, алгоритмизации, анализу изображений, C/C++, Java, Kotlin и прочему. Лекторы разные: в основном нескучные и отвечающие на вопросы аудитории.

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

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

💬 Кратко:
Batch insert в JDBC позволяет отправлять несколько SQL-запросов INSERT одной операцией, что значительно ускоряет вставку данных. Вместо выполнения каждого INSERT отдельно, вы добавляете их в batch через addBatch() у PreparedStatement, а затем выполняете все разом методом executeBatch(). Это уменьшает сетевые накладные расходы и нагрузку на СУБД. Для максимальной эффективности стоит также отключить auto-commit и выполнить commit после всего batch.

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

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

🤔 Middle Java Backend в компанию ТБанк

Техническое собеседование. Лето 2024. Вилка: 250к+. Опыт в резюме: 4 года. Было много технических вопросов, код ревью.

💬 Вопросы:

- В чем разница между == и equals()?

- Какие типы индексов существуют?

- В чём разница между ArrayList и LinkedList? Какие операции эффективны для каждой из них?

- Как частичные/покрывающие индексы (partial indexes) оптимизируют производительность?

- Чем пессимистичные блокировки отличаются от оптимистичных? В каких сценариях каждая предпочтительна?

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

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

💬 Кратко:

Backend-API масштабируют горизонтально и вертикально. Используют балансировщики нагрузки и stateless-сервисы. Применяют кеширование и асинхронную обработку. Вводят лимиты и деградацию. Масштабирование всегда сопровождается мониторингом.

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

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

онлайн-тренажёр для практики программирования на Java. Он предлагает короткие задачи, сгруппированные по темам — условия, циклы, строки, массивы и рекурсия. Решения проверяются автоматически, поэтому можно сразу увидеть результат и отточить базовые навыки без лишней теории.

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

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

🤔 Middle Java Backend в компанию ТБанк

Техническое собеседование. Лето 2024. Вилка: 250к+. Опыт в резюме: 4 года. Было много технических вопросов, код ревью.

💬 Вопросы:

- В чем разница между == и equals()?

- Какие типы индексов существуют?

- В чём разница между ArrayList и LinkedList? Какие операции эффективны для каждой из них?

- Как частичные/покрывающие индексы (partial indexes) оптимизируют производительность?

- Чем пессимистичные блокировки отличаются от оптимистичных? В каких сценариях каждая предпочтительна?

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

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

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

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

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#book #задачи #практика
📚 Программирование на Python в примерах и задачах, Васильев А. Н.

Книга знакомит читателя с базовыми методами, подходами и конструкциями, которые критически важны для изучения языка. В частности, для понимания принципов его использования на практике. Написана книга таким образом, чтобы быть понятной начинающему разработчику. Сложные (относительно) вещи тоже есть, но и они подробно разъясняются

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

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
❤‍🔥1
#Собес #Spring_Boot #profiles #application_properties
🤔 Как задаются активные профили при запуске приложения?

💬 Кратко:
Активные профили в Spring Boot определяют, какая конфигурация приложения должна использоваться. Их можно задать через системные свойства (например, -Dspring.profiles.active=dev), переменные окружения (SPRING_PROFILES_ACTIVE), или в файле application.properties (spring.profiles.active). При запуске приложения Spring Boot активирует указанные профили и загружает соответствующие файлы конфигурации, такие как application-dev.properties.

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

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

🤔 Middle Java Backend разработчик в Сбер

Техническое собеседование. Лето 2025. Опыт в резюме: 4.2. года. Вилка: 250-280к. Был лайвкодинг, задачи на SQL.

💬 Вопросы:

- Что такое JVM, JDK, JRE?

- Дайте краткую характеристику immutable object. Зачем они нужны?

- Что такое EXPLAIN в PostgreSQL?

- Что такое индекс в базе данных?

- Как протестировать сервис, который обращается к базе и внешним системам?

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

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

💬 Кратко:

Постоянное WebSocket-соединение потребляет ресурсы сервера и клиента. Оно чувствительно к сетевым сбоям и нестабильному интернету. Также возрастает риск утечки авторизационных данных. Требуется сложная логика переподключения и контроля состояния. Без этого приложение становится нестабильным.

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

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

Podcast by IT-компания Kolesa Group. В целом он обо всём и вся. Интересно для прослушивания на досуге

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

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

💬 Кратко:
Аннотация @Async в Spring помечает метод для асинхронного выполнения. При вызове такого метода Spring запускает его в отдельном потоке, управляемом TaskExecutor, что позволяет основному потоку продолжить работу без ожидания завершения метода. Это полезно для выполнения длительных операций, таких как вызовы внешних API или обработка файлов, без блокировки пользовательского интерфейса или основного потока приложения. Для работы необходимо включить поддержку асинхронности с помощью @EnableAsync в конфигурации.

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

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

🤔 Middle Java Backend Developer в компанию Тбанк

Техническое собеседование. Осень 2024. Вилка: 300-350к. Опыт в резюме: 5 лет. Было код-ревью, обсуждали теорию и оптимизацию БД.

💬 Вопросы:

- Что делать, если SQL-запрос выполняется слишком долго?

- Почему не стоит ставить индексы на все поля таблицы?

- Как ThreadLocal используется для передачи параметров, привязанных к потоку?

- В чём разница между ArrayList и LinkedList? Какие операции эффективны для каждой из них?

- Как избежать ConcurrentModificationException при удалении элементов из коллекции во время итерации?

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

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #tcp #three #way
🤔 Как устанавливается TCP-соединение и где в этом процессе используется HTTP/HTTPS?

💬 Кратко:

TCP-соединение устанавливается с помощью трехэтапного рукопожатия между клиентом и сервером. Сначала клиент и сервер договариваются о параметрах соединения, и только после этого можно передавать данные. HTTP работает поверх TCP и использует уже установленное соединение. HTTPS добавляет этап шифрования с помощью TLS перед началом передачи HTTP-данных. TCP отвечает за доставку, HTTP — за формат и смысл сообщений.

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

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
❤‍🔥1
#course #openway #computerscience #лекториум
📚 Алексей Владыкин

Алексей Владыкин, в качестве исключения, не имеет канала на Youtube, но ведёт очень содержательные лекции на проекте "Лекториум". Его лекции отлично подойдут программистам, которые желают познакомиться с языком Java, но уже имеют какой-то опыт программирования. Лекции крайне содержательны, но в силу того, что выходили они достаточно давно, Алексей не попал в топ-3.

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

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #spring_boot #annotation
🤔 Какие основные аннотации Spring Boot используются в backend-приложениях?

💬 Кратко:

Spring Boot предоставляет набор аннотаций, которые упрощают конфигурацию приложения и работу с компонентами. Основные из них отвечают за запуск приложения, объявление бинов и обработку HTTP-запросов. Они позволяют отказаться от ручной настройки и XML-конфигураций. Знание этих аннотаций показывает, что разработчик понимает, как Spring собирает и запускает приложение.

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

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

🤔 Middle+ Java Backend-разработчик в Сбербанк

Техническое собеседование. Год 2024. Вилка от 240к+

💬 Вопросы:

- Что означает ключевое слово final?

- Какие есть типы соединений (JOIN) в PostgreSQL?

- Что делать, если SQL-запрос выполняется слишком долго?

- Что означает ACID?

- Когда использование индексов неэффективно?

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

📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
#Собес #rest #kafka #asynchronous
🤔 Какие способы взаимодействия между микросервисами существуют и в чём их различия (например, REST, Kafka)?

💬 Кратко:

Микросервисы могут взаимодействовать синхронно через REST API (HTTP-запросы) или асинхронно через системы обмена сообщениями, например Kafka. REST удобен для простых запросов с немедленным ответом, а Kafka — для обработки больших потоков данных и событий с высокой надёжностью и масштабируемостью.

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

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