Forwarded from Библиотека задач по Java | тесты, код, задания
Что будет результатом кода?
👍🏼 — Parent
🔥 — Child
👾 — ParentChild
⚡️ — RuntimeException
🐸 Библиотека задач по Java
👍🏼 — Parent
🔥 — Child
👾 — ParentChild
⚡️ — RuntimeException
Please open Telegram to view this post
VIEW IN TELEGRAM
Java-разработчик — от 220 000 ₽, удалёнка (Москва)
Java Tech Lead — от 400 000 ₽, удаленно (Москва)
Java разработчик (middle) — от 270 000 до 300 000 ₽, удалёнка (Москва)
Java разработчик (команда Supermarket) — от 350 000 ₽, гибрид (Москва)
Java Developer with AWS Cloud Expertise — от $2000, удалёнка (Сербия)
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Уверены, что знаете Java на отлично? Проверьте себя на этих 10 каверзных вопросах, которые могут встретиться на собеседовании или просто сломать код.
Пройдите тест и узнайте, насколько знаете тонкости языка.
🔗 Пройти тест
Please open Telegram to view this post
VIEW IN TELEGRAM
🎯 Как быстро настроить распределённую трассировку в Spring Boot с OpenTelemetry
Дебажить без трейсинга — как ловить баги с завязанными глазами. Но Spring Boot и тут не подвёл: подключаем, настраиваем — и уже можно видеть, что происходит внутри сервиса (и между сервисами тоже).
1️⃣ Добавляем зависимости
Плюс агент (нужно будет передать при запуске JAR-а):
2️⃣ Настраиваем экспорт в Jaeger / Zipkin / OTEL Collector
Добавляем конфигурацию в application.yml:
Можно слать трейсинг напрямую в Jaeger или Zipkin, или в OTEL Collector для гибкости.
3️⃣ Автоматическая трассировка веб-запросов и JDBC
Ничего руками писать не нужно. Всё, что проходит через @RestController и JdbcTemplate — уже обвешано спанами. Нужно только запустить приложение с агентом:
Сразу работают:
— Спаны на все входящие HTTP-запросы
— Спаны на SQL-запросы
— Привязку логов к трейсам (если логгер поддерживает traceId)
4️⃣ Кастомные спаны
Нужно залезть в середину метода и обернуть свою логику? Без проблем:
5️⃣ Визуализация трассировок
Установите Jaeger UI или Zipkin — и смотрите в реальном времени, что делает сервис и как долго.
💬 Что вы используете для трейсинга?
🐸 Библиотека джависта #буст
Дебажить без трейсинга — как ловить баги с завязанными глазами. Но Spring Boot и тут не подвёл: подключаем, настраиваем — и уже можно видеть, что происходит внутри сервиса (и между сервисами тоже).
<dependency>
<groupId>io.opentelemetry.instrumentation</groupId>
<artifactId>opentelemetry-spring-boot-starter</artifactId>
<version>2.1.0</version>
</dependency>
ИЛИ
implementation 'io.opentelemetry.instrumentation:opentelemetry-spring-boot-starter:2.1.0'
Плюс агент (нужно будет передать при запуске JAR-а):
-javaagent:opentelemetry-javaagent.jar
Добавляем конфигурацию в application.yml:
otel:
exporter:
otlp:
endpoint: http://localhost:4317
resource:
attributes:
service.name: my-service
instrumentation:
spring-web:
enabled: true
jdbc:
enabled: true
Можно слать трейсинг напрямую в Jaeger или Zipkin, или в OTEL Collector для гибкости.
Ничего руками писать не нужно. Всё, что проходит через @RestController и JdbcTemplate — уже обвешано спанами. Нужно только запустить приложение с агентом:
java -javaagent:opentelemetry-javaagent.jar -jar myapp.jar
Сразу работают:
— Спаны на все входящие HTTP-запросы
— Спаны на SQL-запросы
— Привязку логов к трейсам (если логгер поддерживает traceId)
Нужно залезть в середину метода и обернуть свою логику? Без проблем:
@Autowired
private Tracer tracer;
public void doSomething() {
Span span = tracer.spanBuilder("custom-operation").startSpan();
try (Scope scope = span.makeCurrent()) {
// какая-то магия
} finally {
span.end();
}
}
Установите Jaeger UI или Zipkin — и смотрите в реальном времени, что делает сервис и как долго.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Устали копаться в логах или ловить баги методом “на авось”? Попробуйте вот этот промпт — он сэкономит вам часы мучений:
📝 Промпт:
Debug the following code and identify potential issues or anti-patterns. Suggest fixes, explain the root cause of errors, and recommend tools or techniques to prevent such bugs in the future.
// Вставьте глючный код сюда
— Добавьте
Simulate expected vs actual output behavior
если не понимаете, почему оно работает не так, как вы думаете— Добавьте
Point out hidden performance issues or memory leaks
если подозреваете, что код ест больше, чем должен— Добавьте
Suggest logging or monitoring strategies
чтобы ловить баги ещё до того, как они вас поймаютPlease open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Библиотека питониста | Python, Django, Flask
На собеседовании важно уметь выделить главное — свои сильные стороны, мышление и ценности. Это помогает справляться со стрессом, неожиданными вопросами и субъективной оценкой.
• Как работает PCA
• Зачем он нужен
• Как применять его на практике — например, для анализа доходностей акций S&P 500
Библиотека питониста
Please open Telegram to view this post
VIEW IN TELEGRAM
Надоело тратить время на создание шаблонных тестов вручную? IntelliJ IDEA поможет и с этим. С помощью Ctrl + Shift + T можно сгенерировать структуру тестов для классов и методов.
🔹 Зачем это нужно
— Вместо того, чтобы вручную писать шаблон тестов, IDEA сгенерирует базовую структуру тестов для классов или методов.
— Особенно полезно, когда проект растет, а тестов слишком много, чтобы каждый раз выдумывать тестовую структуру с нуля.
🔹 Как использовать
— Поместите курсор на класс или метод, для которого нужен тест.
— Нажмите
Ctrl + Shift + T
(на Windows/Linux) или Cmd + Shift + T
(на macOS).— Выберите, какой тестовый фреймворк использовать (JUnit, TestNG и т.д.), и IDEA предложит создать тестовый класс с нужной структурой.
IDE автоматически создаст тестовый класс с методами для проверки каждого (или выбранного) публичного метода.
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Библиотека шарписта | C#, F#, .NET, ASP.NET
🤔📝 Псевдокод: когда преподы не шарят, а ты в тупике
Псевдокод может быть настоящим головняком, особенно если требования к нему кажутся непонятными или не совпадают с тем, что вы видите в реальной практике программирования.
Узнайте, как сделать псевдокод полезным инструментом, а не дополнительной нагрузкой.
➡️ Читать статью
🐸 Библиотека шарписта
Псевдокод может быть настоящим головняком, особенно если требования к нему кажутся непонятными или не совпадают с тем, что вы видите в реальной практике программирования.
Узнайте, как сделать псевдокод полезным инструментом, а не дополнительной нагрузкой.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
💼🚫 Собес провален? 8 советов, как извлечь пользу из каждого отказа
Отказы на собеседованиях — явление крайне неприятное и даже демотивирующее. Особенно если вы действительно готовились к интервью, вложили много усилий и личного времени в подготовку.
Однако отказ — это всего лишь один из этапов в поиске работы и не стоит воспринимать его как конец света.
➡️ Читать статью
🐸 Библиотека программиста
Отказы на собеседованиях — явление крайне неприятное и даже демотивирующее. Особенно если вы действительно готовились к интервью, вложили много усилий и личного времени в подготовку.
Однако отказ — это всего лишь один из этапов в поиске работы и не стоит воспринимать его как конец света.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔹 10 Java-инструментов, которые стоит освоить в 2025 году
Отличная подборка свежих тулов от команды JavaRevisited. Автор рассказывает, почему IntelliJ IDEA по-прежнему топ, как Maven и Gradle делят рынок сборщиков, зачем подключать SonarQube к CI/CD, и как JaCoCo помогает не пускать баги в прод.
🔹 16 лучших инструментов для анализа покрытия кода в Java
LambdaTest собрали отличную коллекцию тулов для code coverage. JaCoCo, Cobertura, Emma и другие инструменты с реальными примерами, плюс — рекомендации, как интерпретировать отчёты и не уплыть в графиках.
🔹 Spring Tools 4.29.0: новые возможности
В марте вышел свежий релиз Spring Tools с обновлённой поддержкой Spring Boot 3.x, быстрой навигацией и улучшенной автоподстановкой. Плюс, разработчики поработали над интеграцией с IDE (включая Eclipse и VS Code).
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Библиотека задач по Java | тесты, код, задания
Forwarded from Библиотека задач по Java | тесты, код, задания
Что будет результатом запуска кода?
Anonymous Quiz
19%
Executing MyService
63%
NoUniqueBeanDefenitionException
4%
MyService
6%
BeanNotFoundException
7%
Ошибка компиляции
Java-разработчик (junior+/middle) — от 200 000 до 250 000 ₽, гибрид (Москва, Санкт-Петербург)
Java-разработчик (Платёжная инфраструктура) — 300 000 — 370 000 ₽, гибрид (Москва, Санкт-Петербург)
Senior Java Developer — от 400 000 ₽, удалёнка (Москва, Астрахань, Екатеринбург)
Java разработчик с нуля (стажер) — от 70 000 до 80 000 ₽, удалённо (Москва, Астрахань, Екатеринбург)
Java разработчик (middle) — от 270 000 до 300 000 ₽, удалёнка (Москва)
Please open Telegram to view this post
VIEW IN TELEGRAM
Forwarded from Библиотека собеса по Java | вопросы с собеседований
—
—
—
—
—
—
Please open Telegram to view this post
VIEW IN TELEGRAM
📈 Как «ленивая разработка» захватывает IT-рынок
Пока мы выстраиваем архитектуру, пишем тесты и спорим о лучших практиках, рынок всё активнее обживают те, кто вообще не пишет код. Low-code и no-code решения не просто живы — они становятся нормой для бизнеса.
Порог входа минимальный, скорость разработки — бешеная, а заказчику всё равно, написано ли это на Java или накликано в визуальном редакторе. Вопрос: как долго останется актуальной классическая разработка?
🔗 Подробнее в статье
🐸 Библиотека джависта
Пока мы выстраиваем архитектуру, пишем тесты и спорим о лучших практиках, рынок всё активнее обживают те, кто вообще не пишет код. Low-code и no-code решения не просто живы — они становятся нормой для бизнеса.
Порог входа минимальный, скорость разработки — бешеная, а заказчику всё равно, написано ли это на Java или накликано в визуальном редакторе. Вопрос: как долго останется актуальной классическая разработка?
🔗 Подробнее в статье
Please open Telegram to view this post
VIEW IN TELEGRAM
Когда сроки горят, а разработчиков не хватает
Нехватка квалифицированных разработчиков, срывы дедлайнов и перегруз команды — эти проблемы знакомы большинству IT-руководителей. В условиях растущей конкуренции найти баланс между качеством реализации, сроками и бюджетом становится всё сложнее, особенно когда проект требует редких компетенций или быстрого масштабирования.
Решение проблемы — задействовать дополнительные ресурсы на аутсорсе или аутстаффе. Например, обратиться в Proglib. Да-да, мы запустили свою студию веб-разработки!
Что мы предлагаем:
• Опытные специалисты для аутстаффа (frontend, backend, DevOps, UI/UX, PM, BA)
• Полноценная разработка проектов под ключ
• Гибкое масштабирование команды под потребности клиента
• Прозрачная коммуникация и регулярная отчетность
Для каждого проекта формируется индивидуальная команда, исходя из конкретных потребностей заказчика.
Заполните форму, чтобы ускорить свою разработку 👉 https://forms.yandex.ru/u/67e548a4eb614622efa0bcb2/
Нехватка квалифицированных разработчиков, срывы дедлайнов и перегруз команды — эти проблемы знакомы большинству IT-руководителей. В условиях растущей конкуренции найти баланс между качеством реализации, сроками и бюджетом становится всё сложнее, особенно когда проект требует редких компетенций или быстрого масштабирования.
Решение проблемы — задействовать дополнительные ресурсы на аутсорсе или аутстаффе. Например, обратиться в Proglib. Да-да, мы запустили свою студию веб-разработки!
Что мы предлагаем:
• Опытные специалисты для аутстаффа (frontend, backend, DevOps, UI/UX, PM, BA)
• Полноценная разработка проектов под ключ
• Гибкое масштабирование команды под потребности клиента
• Прозрачная коммуникация и регулярная отчетность
Для каждого проекта формируется индивидуальная команда, исходя из конкретных потребностей заказчика.
Заполните форму, чтобы ускорить свою разработку 👉 https://forms.yandex.ru/u/67e548a4eb614622efa0bcb2/
🔹 Что это
— Java Flight Recorder (JFR) — низкоуровневый инструмент для профилирования, встроенный в JVM начиная с Java 11.
— Java Mission Control (JMC) — утилита для визуального анализа и работы с результатами JFR-записей.
🔹 Возможности
— Сбор информации о производительности с минимальным overhead.
— Анализ CPU, памяти, событий GC, блокировок, Thread dumps и других внутренних событий JVM.
— Отслеживание аллокаций, задержек, пауз и узких мест в приложении.
— Подходит для использования как в разработке, так и в продакшене.
🔹 Как использовать
1. Запустите приложение с параметрами, активирующими запись:
java -XX:StartFlightRecording=duration=60s,filename=recording.jfr ...
2. После завершения записи, откройте файл .jfr в JMC.
3. Используйте интерфейс для анализа производительности и поиска узких мест.
🔹 Преимущества
— Нативная поддержка в JVM.
— Низкий overhead (подходит для продакшн-сценариев).
— Не требует внешних агентов или дополнительных библиотек.
— Удобный интерфейс для анализа.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM