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

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

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

Для связи: @ruslan_kuyanets
Download Telegram
#полезное
👋 А что если Java-приложение могло бы запускаться за миллисекунды и потреблять совсем немного памяти, как программы на Go или C++

GraalVM решает эту задачу. Он компилирует Java и Spring Boot напрямую в нативный исполняемый файл. Это происходит заранее на этапе сборки в отличие от стандартной JVM, которая компилирует код во время выполнения. В результате получается бинарь, который запускается без JVM

Преимущества заметные, почти мгновенный старт, сокращенное потребление памяти, меньший размер пакета. Такой подход особенно удобен для микросервисов и облачных приложений

Есть и минусы, время сборки увеличивается, а итоговый бинарь зависит от платформы. Для Linux и Windows нужны отдельные файлы в отличие от переносимого JAR

По производительности GraalVM нативные образы близки к C++. Старт сопоставим по скорости. При тяжелых вычислительных задачах преимущество может быть у C++ благодаря управлению памятью на низком уровне. Но для большинства сценариев GraalVM выводит Java в ту же лигу, что и C++, сохраняя при этом безопасность и удобство разработки

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3
#новости
🤯 Java25 уже на подходе!

В свежем релизе — важные улучшения, о которых стоит знать каждому Java-разработчику:

🟠JEP 502: Stable Values — новый способ работы со значениями, который делает код надёжнее и эффективнее.
🟠JEP 514/515: Project Leyden — фокус на время запуска приложений и оптимизацию старта JVM.
Подробный разбор

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
#полезное
😱 MethodHandles.
lookup().findVirtual()


MethodHandles.lookup().findVirtual() позволяет динамически получать и вызывать методы классов без рефлексии, обеспечивая лучшую производительность и безопасность. Это полезно для метапрограммирования и динамических вызовов.
Документация

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
🖥 Middle Java Backend Developer в компанию Тбанк

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

Вопросы:
- Решение проблемы N+1 для связанных сущностей
- Использование DTO вместо сущностей
- Почему внедрение зависимостей через конструктор (@RequiredArgsConstructor) предпочтительнее, чем @Autowired в поле? Какие проблемы решает?
- Как избежать перегрузки внешнего сервиса при синхронных вызовах из
высоконагруженной системы?

Все вопросы можно посмотреть на нашей платформе

#собес #коллекции
Please open Telegram to view this post
VIEW IN TELEGRAM
2
#статьи
😘 Java движется вперёд и готовится к выпуску версии 25

В новом релизе уменьшили количество шаблонного кода, переработали работу с конструкторами и полностью отказались от поддержки старых систем.

Все ключевые изменения и полезные фишки версии 25 — в этой статье

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
2
#статьи
😜 Пять эффективных схем кэширования, которые ускорят ваш микросервис

В современных микросервисных архитектурах кэширование играет ключевую роль в обеспечении высокой скорости работы, масштабируемости и устойчивости систем. Грамотное использование схем кэширования позволяет существенно снизить нагрузку на базы данных, сократить время отклика и повысить общую производительность системы.
Читать habr

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #git
🤔 Что делает команда git stash?

💬 Кратко:
Команда git stash сохраняет текущие незавершённые изменения в специальное место (стек), чтобы вы могли переключиться на другую ветку или выполнить другие действия. Эти изменения можно позже восстановить с ПОМОЩЬЮ git stash apply или git stash pop .

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

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😬 Stateful vs Stateless дизайн

Stateless-дизайн сделал возможным простые, но при этом масштабируемые и быстрые приложения. Вместо хранения состояния в памяти сервера, каждый запрос несет все данные для своей обработки. Это убрало лишние накладные расходы и позволило легко масштабировать системы.

Stateful-приложения работают иначе. Они хранят данные вроде user ID, сессий и настроек, что дает персонализацию и избавляет от передачи повторяющейся информации. Но из-за этого тяжело масштабироваться горизонтально.

Stateless-подход стал основой для микросервисов, serverless и REST API. Он ускоряет работу CDN и повышает эффективность сервисов. Но у него есть минусы - - большие размеры запросов, избыточная передача данных и сложности в сценариях, где состояние критично.

На практике чаще выбирают гибрид — сочетание stateful и stateless. Баланс позволяет сделать систему масштабируемой, простой и быстрой, не жертвуя функциональностью

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #git
🤔 Перечислите команды для удаления ветки git

💬 Кратко:
Для удаления локальной ветки:
git branch -d ‹ branch_name>

Если ветка содержит незавершённые изменения:
git branch -D ‹ branch_name>

Для удаления удалённой ветки:
git push origin --delete ‹branch_name>


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

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
1
This media is not supported in your browser
VIEW IN TELEGRAM
GPU обрабатывают тысячи пикселей параллельно, но что происходит, когда мы записываем всего один пиксель в буфер кадра? Как это реализуется?

Посмотри, как CPU "рисует" каждый пиксель в этом наглядном визуальном симуляторе RISC-V (загрузи пример с bitmap):

https://eseo-tech.github.io/emulsiV/

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1
Да можно уже заранее на Java 29

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#полезное
😵‍💫 VarHandle.
compareAndExchange()


VarHandle.compareAndExchange() позволяет атомарно обновлять значения переменной, только если текущее значение соответствует ожидаемому. Это полезно для реализации lock-free структур данных и многопоточной синхронизации.
Документация

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
1😇1
🖥 Middle Java Backend developer в компанию Сбер

Техническое собеседование. Лето 2025. Вилка: 240к+. Опыт в резюме: 3.9 года. Проект: разработка высоконагруженных систем для Сбербанк Онлайн

Вопросы:
- Какой жизненный цикл Spring Beans?
- Для чего используются BeanPostProcessor и BeanFactoryPostProcessor?
- Как достать бин из ApplicationContext?
- Стандартные способы управления потоками (ExecutorService, Future)

Все вопросы можно посмотреть на нашей платформе

#собес #коллекции
Please open Telegram to view this post
VIEW IN TELEGRAM
1
#Собес #java
🤔 Какие типы данных в Java? Чем отличается объект от простых типов данных?

💬 Кратко:
В Java есть 8 примитивных типов данных (byte, short, int, long, float, double, char, boolean ), которые хранят значения в стеке. Объекты же создаются на основе классов, хранятся в куче и обладают методами. Примитивные типы проще, быстрее и используют меньше памяти, в то время как объекты более функциональны, но требуют больше ресурсов.

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

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
1
#полезное
😊 Бесплатный кроссплатформенный обозреватель кода. Это опенсорс-инструмент, который работает автономно без интернета. Поддерживает C, C++, Java и Python. Может быть полезен для изучения чужого кода или анализа своих проектов.

GitHub: Sourcetrail

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from YeaHub
😎 Реальные собеседования + тренажёр = комплексная подготовка

На нашей платформе мы собираем собеседования вместе с сообществом: Guru, участниками, менторами и партнёрами.

Один из наших партнёров — Аня и её проект «Авось Прорвёмся», экосистема чатов для кандидатов, которые ищут работу и готовятся к собеседованиям.

Прорвёмся вместе — анонимный канал для самостоятельной подготовки:
- 1000+ записей реальных собеседований с разбором задач и вопросов;
- контакты рекрутеров;
- гайды по резюме, трудоустройству и стратегиям поиска работы.
- задачи и вопросы с собеседований

📚 Сначала смотри записи реальных собеседований, а потом изучай эти же вопросы в нашем тренажёре.
Мы цифровизуем все собесы из чатов «Авось Прорвёмся» и добавляем их в текстовом виде в коллекцию. Так можно не только услышать, как это проходит вживую, но и отработать те же самые вопросы уже в интерактивном формате.

📌 Направления, которые доступны в чатах:
iOS, Android, Frontend, Python, Go, Java, C#, QA, Analytics.

Подключение — только по инвайту от действующего участника, или YeaHub.


👉 Обучайтесь, общайтесь, растите вместе с YeaHub и Авось Прорвемся
2👍2🔥1
Полный список самых важных и часто спрашиваемых аннотаций Spring Boot с точки зрения собеседований и их функциональное назначение.

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
#Собес #java
🤔 Назовите все методы класса Object.

💬 Кратко:
Класс object содержитметоды: equals(), hashCode(), toString(), getClass(), clone(), finalize(), wait(), notify() , notifyAll() и методы для синхронизации потоков (wait(long timeout), wait(long timeout, int nanos) ). Эти методы предоставляют базовый функционал, доступный для всех объектов в Java.

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

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥1
#полезное
🤯 FileDenoscriptor.sync()

FileDenoscriptor.sync() в Java позволяет принудительно записать все несохранённые данные из буфера операционной системы на диск. Это полезно для обеспечения целостности данных в случае сбоя или отключения питания.
Документация

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
14 алгоритмов сортировки в одной минуте!

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
#полезное
❤️‍🔥 Репозиторий Zalando RESTful API Guidelines - это рекомендации по проектированию REST API, разработанные компанией Zalando!

Он охватывает лучшие практики по организации ресурсов, кодам ответов, обработке ошибок, версионированию и безопасности API. Документ основан на реальном опыте компании и помогает создавать согласованные и масштабируемые API.
Github

👉Новости 👉База вопросов
Please open Telegram to view this post
VIEW IN TELEGRAM