fa
Feedback
Библиотека собеса по Java | вопросы с собеседований

Библиотека собеса по Java | вопросы с собеседований

رفتن به کانال در Telegram

Вопросы с собеседований по Java и ответы на них. По рекламе: @proglib_adv Учиться у нас: clc.to/3wECtA Для обратной связи: @proglibrary_feeedback_bot

نمایش بیشتر
6 488
مشترکین
اطلاعاتی وجود ندارد24 ساعت
+27 روز
+830 روز
جذب مشترکین
ژوئیه '26
ژوئیه '26
+1
در 0 کانال‌ها
ژوئن '26
+73
در 2 کانال‌ها
Get PRO
مه '26
+83
در 3 کانال‌ها
Get PRO
آوریل '26
+87
در 2 کانال‌ها
Get PRO
مارس '26
+81
در 2 کانال‌ها
Get PRO
فوریه '26
+121
در 4 کانال‌ها
Get PRO
ژانویه '26
+93
در 1 کانال‌ها
Get PRO
دسامبر '25
+96
در 5 کانال‌ها
Get PRO
نوامبر '25
+112
در 2 کانال‌ها
Get PRO
اکتبر '25
+94
در 1 کانال‌ها
Get PRO
سپتامبر '25
+95
در 1 کانال‌ها
Get PRO
اوت '25
+78
در 3 کانال‌ها
Get PRO
ژوئیه '25
+98
در 0 کانال‌ها
Get PRO
ژوئن '25
+70
در 0 کانال‌ها
Get PRO
مه '25
+78
در 0 کانال‌ها
Get PRO
آوریل '25
+133
در 1 کانال‌ها
Get PRO
مارس '25
+283
در 52 کانال‌ها
Get PRO
فوریه '25
+176
در 31 کانال‌ها
Get PRO
ژانویه '25
+207
در 35 کانال‌ها
Get PRO
دسامبر '24
+179
در 35 کانال‌ها
Get PRO
نوامبر '24
+326
در 37 کانال‌ها
Get PRO
اکتبر '24
+284
در 35 کانال‌ها
Get PRO
سپتامبر '24
+299
در 35 کانال‌ها
Get PRO
اوت '24
+289
در 35 کانال‌ها
Get PRO
ژوئیه '24
+275
در 35 کانال‌ها
Get PRO
ژوئن '24
+272
در 31 کانال‌ها
Get PRO
مه '24
+429
در 37 کانال‌ها
Get PRO
آوریل '24
+474
در 37 کانال‌ها
Get PRO
مارس '24
+299
در 29 کانال‌ها
Get PRO
فوریه '24
+373
در 29 کانال‌ها
Get PRO
ژانویه '24
+392
در 24 کانال‌ها
Get PRO
دسامبر '23
+900
در 26 کانال‌ها
Get PRO
نوامبر '23
+229
در 3 کانال‌ها
Get PRO
اکتبر '23
+369
در 22 کانال‌ها
Get PRO
سپتامبر '23
+1 761
در 0 کانال‌ها
تاریخ
رشد مشترکین
اشارات
کانال‌ها
01 ژوئیه+1
پست‌های کانال
🔴 Завтра тестовое собеседование с Java-разработчиком 1 июля(уже завтра!) в 19:00 по мск приходи онлайн на открытое собеседов
🔴 Завтра тестовое собеседование с Java-разработчиком 1 июля(уже завтра!) в 19:00 по мск приходи онлайн на открытое собеседование, чтобы посмотреть на настоящее интервью на Middle Java-разработчика. Как это будет: 📂 Виктор Анохин, старший разработчик из WildBerries, будет задавать реальные вопросы и задачи разработчику-добровольцу 📂 Виктор будет комментировать каждый ответ респондента, чтобы дать понять чего от вас ожидает собеседующий на интервью 📂 В конце можно будет задать любой вопрос Виктору Это бесплатно. Эфир проходит в рамках менторской программы от ШОРТКАТ для Java-разработчиков, которые хотят повысить свой грейд, ЗП и прокачать скиллы. Переходи в нашего бота, чтобы получить ссылку на эфир → @shortcut_sh_bot Реклама. О рекламодателе.

2
❓ Чем композиция отличается от наследования? Наследование — это отношение «is-a», поведение родителя достаётся подклассу статически на этапе компиляции. Композиция — отношение «has-a», объект делегирует работу вложенным объектам. Проблемы наследования: сильная связанность с деталями реализации родителя (fragile base class), нарушение инкапсуляции, негибкость (только один родитель), лёгкость нарушить принцип Лисков. Композиция более гибкая: поведение можно менять в рантайме (паттерн «Стратегия»), зависимости легко подменять в тестах, нет хрупкой иерархии. Отсюда принцип «предпочитай композицию наследованию». Наследование оправдано при настоящем «is-a» и стабильной иерархии. 🐸 Библиотека собеса по Java #core
457
3
💬 Обратная связь Текущий уровень сложности вопросов? 🔥 — Слишком просто, хочу сложнее 👍🏼 — В самый раз ❤️ — Иногда сложновато 😁 — Часто не понимаю 🐸 Библиотека собеса по Java
517
4
⭐️ Dream Team 5-го потока: научитесь строить ИИ-агентов у практиков из BigTech 14 июля стартует новый поток курса по разработ
⭐️ Dream Team 5-го потока: научитесь строить ИИ-агентов у практиков из BigTech 14 июля стартует новый поток курса по разработке ИИ-агентов, и в этот раз мы собрали по-настоящему звездный состав менторов. Это эксперты, которые прямо сейчас определяют развитие AI в России: Yandex Cloud, Avito AI Lab, cloud․ru и НИУ ВШЭ. Чтобы ваш вход в ИИ-инженерию был максимально мощным, мы подготовили специальное предложение: до 30 июня при покупке курса по ИИ-агентам вы получаете еще 2 любых курса Академии в подарок! 🔥 Как это работает: вы оставляете заявку на курс по разработке ИИ-агентов и указываете менеджеру ещё два курса, которые хотите забрать бесплатно. 👉Заберите 3 курса по цене 1 на звездном потоке по ИИ-агентам
557
5
❓ Что такое идемпотентность и почему она важна? Идемпотентная операция при многократном выполнении даёт тот же результат, что и при однократном. В HTTP идемпотентны GET, PUT, DELETE, а POST — нет. Почему это критично: в распределённых системах сетевые сбои и таймауты приводят к автоматическим повторам (retry). Если операция не идемпотентна — например, «снять 100 рублей» — повтор спишет деньги дважды. Подходы к идемпотентности: → идемпотентные ключи (idempotency key) для дедупликации повторных запросов; → проектирование операций как «установить состояние X», а не «изменить на дельту»; → отслеживание уже обработанных id запросов. Особенно важно для платежей и очередей сообщений с гарантией at-least-once. 🐸 Библиотека собеса по Java
609
6
🎬 Где ломаются архитектуры ИИ-агентов и как этого избежать: запись урока от Proglib.Academy и cloud․ru Proglib.аcademy вмест
🎬 Где ломаются архитектуры ИИ-агентов и как этого избежать: запись урока от Proglib.Academy и cloud․ru Proglib.аcademy вместе с cloud․ru провели вебинар, где разобрали реальные боли проектирования автономных систем. Вы просили запись встречи — она уже в открытом доступе! Что внутри: — критерии выбора между одним агентом и мультиагентной системой; — разбор популярных архитектурных ошибок; — реальные ограничения современных ИИ-агентов; — практические рекомендации по проектированию агентных систем. 👉 Посмотреть запись можно тут: ● VK ● YouTube
646
7
✔️ Spring-тест: рассылка ушла клиентам трижды Подняли 3 реплики в k8s, и клиенты получили одно и то же письмо три раза 👇 📦 Задание — code review Ежедневная рассылка счетов через @Scheduled. @Component @RequiredArgsConstructor public class BillingScheduler { private final InvoiceService invoiceService; @Scheduled(cron = "0 0 9 * * *") public void sendDailyInvoices() { List<Invoice> due = invoiceService.findDueToday(); due.forEach(invoiceService::sendAndMarkSent); } } ▪️ Объясни — Почему @Scheduled выполняется на каждой реплике и приводит к дублирующим отправкам. — Почему «сначала проверим флаг isSent, потом отправим» не спасает от гонки между подами. — Какие есть решения и их трейд-оффы. Ставьте → 🔥, если нравится формат. Если нет → 🌚 💬 Решения под спойлер. Сравним, какое будет лучше. 🐸 Библиотека собеса по Java #practise
1 807
8
✔️ Spring-тест: рассылка ушла клиентам трижды Подняли 3 реплики в k8s — и клиенты получили одно и то же письмо три раза 👇 📦 Задание — code review Ежедневная рассылка счетов через @Scheduled. @Component @RequiredArgsConstructor public class BillingScheduler { private final InvoiceService invoiceService; @Scheduled(cron = "0 0 9 * * *") public void sendDailyInvoices() { List<Invoice> due = invoiceService.findDueToday(); due.forEach(invoiceService::sendAndMarkSent); } } ▪️ Объясни — Почему @Scheduled выполняется на каждой реплике и приводит к дублирующим отправкам. — Почему «сначала проверим флаг isSent, потом отправим» не спасает от гонки между подами. — Какие есть решения (ShedLock, распределённая блокировка, отдельный воркер, выборка с FOR UPDATE SKIP LOCKED) и их трейд-оффы. Ставьте → 🔥, если нравится формат. Если нет → 🌚 💬 Решения под спойлер. Сравним, какое будет лучше. 🐸 Библиотека собеса по Java #practise
1
9
❓ Что такое идемпотентность и почему она важна в API и распределённых системах? **Ответ:** идемпотентная операция при многократном выполнении даёт тот же результат, что и при однократном. В HTTP идемпотентны `GET`, `PUT`, `DELETE`, а `POST` — нет. Почему это критично: в распределённых системах сетевые сбои и таймауты приводят к автоматическим повторам (retry). Если операция не идемпотентна — например, «снять 100 рублей» — повтор спишет деньги дважды. Подходы к идемпотентности: - идемпотентные ключи (idempotency key) для дедупликации повторных запросов; - проектирование операций как «установить состояние X», а не «изменить на дельту»; - отслеживание уже обработанных id запросов. Особенно важно для платежей и очередей сообщений с гарантией at-least-once. 🐸 Библиотека собеса по Java
1
10
❓ В чём разница между связанностью (coupling) и сцепленностью (cohesion)? Cohesion (сцепленность) — насколько элементы внутри одного модуля подчинены общей цели. Высокая сцепленность — это хорошо: модуль делает одну вещь и делает её хорошо. Coupling (связанность) — насколько модули зависят друг от друга. Низкая связанность — это хорошо: изменение в одном модуле не вынуждает переписывать другие. Цель проектирования — high cohesion, low coupling. Такой код легче читать, тестировать, переиспользовать, а изменения в нём локализованы. Инструменты достижения — разделение ответственности, программирование на интерфейсах, внедрение зависимостей и принципы SOLID. 🐸 Библиотека собеса по Java
681
11
🚀 Освойте разработку AI-агентов и получите доступ ещё к двум курсам Академии бесплатно! В 2026 году просто писать код мало.
🚀 Освойте разработку AI-агентов и получите доступ ещё к двум курсам Академии бесплатно! В 2026 году просто писать код мало. Компании ищут инженеров, умеющих проектировать автономные системы и закрывать задачи бизнеса в разы быстрее. Чтобы вы вышли на рынок с максимальным преимуществом, мы подготовили специальное предложение: покупаете курс по AI-агентам и ещё 2 курса Академии получаете бесплатно! Соберите свой стек под оффер: 🔹 AI-агенты + AgentOps + Архитектура — комбо для бэкендеров и техлидов, чтобы внедрять ИИ без боли для прода. 🔹 AI-агенты + Математика + ML — для тех, кто хочет войти в Data Science. 🔹 AI-агенты + Алгоритмы — чтобы уверенно проходить хардкорные технические собесы. Как это работает: вы оставляете заявку на курс по разработке AI-агентов и указываете еще два курса, которые хотите открыть в подарок. Старт обучения — уже в июле. Количество мест ограничено, выбирайте зрелый подход к карьере. 👉 Забрать предложение и освоить ИИ-агентов
691
12
❓ Что такое нормализация и когда оправдана денормализация? Нормализация — устранение избыточности через декомпозицию таблиц и связи между ними (нормальные формы 1NF–3NF/BCNF). Цель — целостность: данные хранятся в одном месте, нет аномалий вставки, обновления и удаления. Минус — много JOIN'ов при чтении. Денормализация — намеренное дублирование данных ради скорости чтения, чтобы избежать дорогих соединений и агрегаций. Типична в аналитике, отчётах и read-heavy системах. Это компромисс: денормализация ускоряет чтение, но усложняет поддержание согласованности при записи (одни и те же данные надо обновлять в нескольких местах). Выбор зависит от профиля нагрузки — что преобладает, чтение или запись. 🐸 Библиотека собеса по Java
754
13
❓ Чем INNER JOIN отличается от LEFT JOIN? INNER JOIN возвращает только те строки, для которых нашлось совпадение в обеих таблицах. Если связи нет — строка не попадёт в результат. LEFT JOIN возвращает все строки из левой таблицы плюс совпадающие из правой. Там, где совпадения нет, в столбцах правой таблицы будут NULL. RIGHT JOIN — то же самое, но «главная» правая таблица. 🐸 Библиотека собеса по Java
846
14
👩‍💻 Алгоритмическая сложность коллекций в Java Приглашаем на открытый урок. 🗓 01 июля в 20:00 МСК 🆓 Бесплатно. Урок в рам
👩‍💻 Алгоритмическая сложность коллекций в Java Приглашаем на открытый урок. 🗓 01 июля в 20:00 МСК 🆓 Бесплатно. Урок в рамках старта курса «Java-разработчик». Программа урока: ✔️Основы алгоритмической сложности и принцип работы о-нотации; ✔️Влияние сложности операций на выбор подходящих коллекций; ✔️Сравнение популярных коллекций Java по эффективности выполнения различных операций; ✔️Практическая демонстрация, в которой будет показано, как эффективно использовать коллекции; ✔️Рекомендации по выбору коллекций для решения задач разного уровня сложности. 🔗 Ссылка на регистрацию: https: https://clc.to/ZUqYAg Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576
651
15
❓ Чем WHERE отличается от HAVING? Оба фильтруют, но на разных этапах выполнения запроса. 🔹 WHERE отсекает строки до группировки (GROUP BY) и не может работать с агрегатными функциями. 🔹 HAVING отсекает уже сгруппированные данные после агрегации и умеет работать с агрегатами (COUNT, SUM, AVG). Логический порядок выполнения: WHERE → GROUP BY → HAVING → SELECT → ORDER BY. 🐸 Библиотека собеса по Java
884
16
❓ Какие бывают уровни изоляции транзакций? От слабого к строгому: → READ UNCOMMITTED — видны незакоммиченные изменения других транзакций (грязное чтение). → READ COMMITTED — видны только закоммиченные данные, но при повторном чтении строки значение может измениться (неповторяющееся чтение). → REPEATABLE READ — одна и та же строка читается стабильно в рамках транзакции, но возможны фантомы (новые строки, подходящие под условие). → SERIALIZABLE — полная изоляция, транзакции выполняются как будто строго последовательно. Чем выше уровень, тем меньше аномалий, но больше блокировок и ниже пропускная способность. Выбор — это компромисс между корректностью и производительностью. 🐸 Библиотека собеса по Java
937
17
🤖 Какие задачи можно действительно доверить ИИ? Уже завтра разберём это на открытом уроке «AI-инструменты в разработке: как писать код быстрее с помощью ассистентов». Спикер — Ольга Лукьянова, руководитель команды поиска и навигации по коду в SourceCraft от Яндекса. После урока вы: 🔹 поймёте, какие задачи стоит делегировать AI уже сегодня; 🔹 научитесь быстрее разбираться в новых проектах и кодовой базе; 🔹 увидите, как выглядит современный workflow разработки с AI; 🔹 узнаете, где AI помогает экономить время, а где всё ещё нужен контроль разработчика. На практике разберём путь от получения задачи до готового Pull Request с использованием AI-инструментов и AI-ревью. 🗓️ 23 июня, 19:00 (МСК) ⏱️ 90 минут 👉 Зарегистрироваться и получить рабочий AI-workflow для своих задач
888
18
✔️ Java-тест: медленный сервис кладёт всё приложение Внешний API затупил на 30 секунд и наш сервис перестал отвечать целиком 👇 📦 Задание — code review Ходим во внешний платёжный шлюз через RestTemplate. @Configuration public class HttpConfig { @Bean public RestTemplate restTemplate() { return new RestTemplate(); } } @Service @RequiredArgsConstructor public class PaymentGatewayClient { private final RestTemplate restTemplate; public GatewayResponse charge(ChargeRequest request) { return restTemplate.postForObject( "https://gateway.example.com/charge", request, GatewayResponse.class ); } } ▪️ Объясни — Что происходит с пулом потоков Tomcat, когда внешний шлюз отвечает медленно или висит. — Почему «ложится» всё приложение, хотя тормозит только один внешний вызов. — Как настроить таймауты правильно (connect / read), зачем connection pool и где здесь место для timeout + circuit breaker / bulkhead. Ставьте → 🔥, если нравится формат. Если нет → 🌚 💬 Решения под спойлер. Сравним, какое будет лучше. 🐸 Библиотека собеса по Java #practise
2 487
19
🤖 AI пишет код за вас? Это самое скучное, что он умеет Основное время разработчик тратит на другое: разобраться в чужой кодо
🤖 AI пишет код за вас? Это самое скучное, что он умеет Основное время разработчик тратит на другое: разобраться в чужой кодовой базе, найти нужный участок проекта, проверить решение, собрать Pull Request. Вот где AI реально экономит часы — если знать, как им пользоваться. 23 июня Ольга Лукьянова покажет это на практике: как с помощью современных AI-инструментов быстро погружаться в незнакомый проект, находить нужный код, реализовывать задачи и проверять результат до ревью коллег. В итоге вы увидите не отдельные приёмы и промпты, а целостный workflow, который можно встроить в свою работу уже на следующий день 🔥 Чтобы лучше погрузиться в тему: 📺 Выступление про SourceCraft 📖 Статья на Хабре 🗓️ Когда: 23 июня, 19:00 (МСК) 👉 Занять место на открытом уроке
898
20
❓ Что такое индекс в БД и почему он ускоряет поиск? Индекс — это отдельная структура данных (чаще всего B-дерево), которая хранит отсортированные значения столбца со ссылками на соответствующие строки таблицы. Благодаря сортировке поиск идёт за O(log n) вместо полного сканирования таблицы O(n). Это как алфавитный указатель в книге: не нужно читать всё подряд. Цена: индекс занимает место на диске и замедляет INSERT/UPDATE/DELETE, потому что его тоже нужно поддерживать в актуальном состоянии. Поэтому индексируют столбцы, которые часто используются в WHERE, JOIN, ORDER BY, а не всё подряд. 🐸 Библиотека собеса по Java #sql
941