Java Portal | Программирование
12.6K subscribers
1.08K photos
86 videos
35 files
926 links
Присоединяйтесь к нашему каналу и погрузитесь в мир для Java-разработчика

Связь: @devmangx

РКН: https://clck.ru/3H4WUg
Download Telegram
🔍Тестовое собеседование с Java-разработчиком из МТС уже завтра

1 октября (уже завтра!) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Java-разработчика.

Как это будет:
📂 Илья Аров, старший разработчик в МТС, будет задавать реальные вопросы и задачи разработчику-добровольцу
📂 Илья будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью
📂 В конце можно будет задать любой вопрос Илье

Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Java-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы.

Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_sh_bot

Реклама.
О рекламодателе.
Please open Telegram to view this post
VIEW IN TELEGRAM
1
This media is not supported in your browser
VIEW IN TELEGRAM
Держите репозиторий на GitHub где собрана отличная подборка бесплатных материалов по программированию.

Здесь собраны сотни книг по самым разным направлениям: от веб-разработки и геймдева до AI, блокчейна, создания приложений и даже prompt engineering. 😎

👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍43
Вопрос из Java-собеседования (сценарный):

Ты используешь @Autowired для field injection в Spring-проекте. Это просто и работает.

@Component
public class UserService {

@Autowired
private UserRepository userRepository;
}


Тимлид просит тебя отрефакторить это, так как field injection часто считается плохой практикой.

Подумай о минусах field injection:

→ Visibility: скрывает обязательные зависимости класса.
→ Testability: усложняет unit-тестирование, часто требует рефлексии.
→ Runtime Issues: может привести к NullPointerException, если зависимость отсутствует.
→ Design: поощряет классы с чрезмерной ответственностью (нарушение SRP).

Какой рекомендуемый вариант?

→ Constructor Injection.

Зависимости явно передаются при создании объекта, делая их обязательными.

@Component
public class UserService {
private final UserRepository userRepo; // final!

public UserService(UserRepository userRepo) {
this.userRepo = userRepo;
}
}


Почему Constructor Injection лучше?

→ Explicit: явно показывает, что нужно классу для работы.
→ Guaranteed: приложение не поднимется, если зависимости нет.
→ Immutable: final-поля безопаснее и дружелюбнее к многопоточности.
→ Testable: легко замокать и прокинуть зависимости в тестах.

Это приводит к более надежному и поддерживаемому коду.

👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍3💊1
Please open Telegram to view this post
VIEW IN TELEGRAM
😁179
Топ-53 задач на Java для подготовки к собеседованиям

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

👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥43
Подготовка к собеседованию по Java Microservices

Без понимания ключевых концепций микросервисов сложно успешно пройти собеседование на backend-разработчика. Даже если вы не реализовывали их на практике, базовое знание даст серьёзное преимущество. Сохрани себе этот список как краткий гид или план подготовки.

Монолит vs Микросервисы → масштабирование отдельных функций независимо
Проектирование микросервиса → изоляция управления профилем пользователя
Паттерн API Gateway → единая точка входа для клиентов
Взаимодействие сервисов (REST vs Messaging) → асинхронная очередь обработки заказов
Паттерн Circuit Breaker → предотвращение каскадных сбоев сервисов
Spring Cloud Load Balancer → распределение трафика между инстансами
Spring Cloud Config → управление внешними конфигурационными параметрами
Service discovery (Eureka/Consul) → автоматический поиск сервисов друг другом
Feign Client vs WebClient → блокирующие и неблокирующие вызовы
Event-driven архитектура и Kafka → обработка потоков данных в реальном времени
Отдельная база для сервиса vs общая база → разделение уровня хранения данных
Паттерн Saga → согласованность распределённых транзакций
Аутентификация на основе JWT и OAuth2 → безопасные stateless API
Безопасность в API Gateway → централизованная аутентификация и авторизация запросов
Observability (логи, трассировка, метрики) → отладка проблем в продакшене
Prometheus и Grafana → мониторинг состояния системы и дашборды
Стратегии деплоя в Kubernetes → авто-масштабирование и самовосстановление приложений
Blue-Green и Canary-деплой → нулевой даунтайм и минимальные риски при релизах
Когда использовать WebFlux → высоконагруженные и низколатентные API
CQRS и Event Sourcing → разделение моделей чтения и записи при сложных сценариях


👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
🔥Прими участие в Хакатоне от ИТ-холдинга Т1 в Новосибирске и поборись за призовой фонд 800 000 рублей!

Когда: 23–26 октября
Формат: онлайн + финал на площадке

Участвуй, если ты:
🔹обучаешься на технической или ИТ-специальности;
🔹развиваешься в направлении разработки, аналитики, CV, ML или DevOps;
🔹сможешь быть в Новосибирске 26 октября.

Выбери свой кейс:

✴️Цифровой дресс-код: фон, который выделяет вас. Создай локальный ML-модуль сегментации видео и генератор персонализированных фонов.

✴️CodeMetrics: метрики, которые помогают расти. Разработай систему автооценки эффективности команд через анализ Git-метрик.


Почему стоит участвовать:
🔘Кейс в портфолио и полезная обратная связь от менторов Т1;
🔘Шанс проявить себя, чтобы начать карьеру в одной из крупнейших ИТ-компаний;
🔘Реальный опыт командной работы;
🔘Мерч и атмосфера сильного комьюнити — в Т1 более 5 000 джунов из 580+ вузов России и Беларуси.

Регистрация открыта!
➡️ Успей до 21 октября по ссылке.

erid: 2Vtzqwmd32u
Please open Telegram to view this post
VIEW IN TELEGRAM
Как тестировать Spring Boot приложения в Java?

Статья объясняет, как использовать @SpringBootTest, разницу между юнит- и интеграционными тестами, а также даёт советы по ускорению тестов. Полезно для разработчиков любого уровня, работающих со Spring Boot и микросервисами.

👉 Java Portal
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4