От языков программирования к Developer Experience
Из чего состоит работа программиста, где в ней неэффективности и возможности оптимизации, что такое когнитивная нагрузка и как мы ней боремся.
Роман Елизаров
Яндекс
Время в программе указано для вашего часового пояса .
Программа предварительная, в ней возможны изменения.
Из чего состоит работа программиста, где в ней неэффективности и возможности оптимизации, что такое когнитивная нагрузка и как мы ней боремся.
Яндекс
Прослежу путь ретраев от повторных попыток в реальной жизни до их воплощения в микросервисных архитектурах. Расскажу, как ретраи эволюционировали в жизни, программировании и Java-экосистеме. Какие стратегии и инструменты помогают добиться надежности, а какие — всё ломают.
Т-Банк
Часто построение своего облачного решения считается чем-то на уровне ядерной физики. Покажу, что все не так страшно.
MWS Cloud Platform
С появлением виртуальных потоков ThreadLocal перестал быть единственным решением для передачи контекста — в Java 21 появился ScopedValue. Но когда что использовать? Что быстрее и занимает меньше памяти?
Если Ваше "hello world"-приложение на Spring потребляет 512 MB RAM и запускается за 10 секунд, то это не настоящее Spring Boot приложение, это memory leak с набором REST эндпоинтов.
Сбер
Rich Errors: переизобретение Checked Exceptions. Расскажу предысторию появления Rich Errors, какие есть альтернативы в других экосистемах и почему у нас никогда не будет настоящих Union-типов.
Individual Contributor
Рассмотрим разные подходы к загрузке объектов из PostgreSQL.
WorkMe.io
Как внедрить нативный движок на Rust в Java-приложение через Project Panama (FFI). Практика и подводные камни.
На примерах покажу, какие метрики рекомендую собирать с абстрактного веб-приложения (для каждого компонента, включая API, базы данных и очереди), чтобы проще и быстрее расследовать инциденты и различные проблемы перформанса.
Яндекс 360
Обсудим вопрос разработки на Spring в связке c JPA, связанную с этим проблему производительности, а также подскажем ее решение.
Axiom JDK
OpenIDE
JDK Flight Recorder — не новая технология, претерпевшая несколько перерождений за свою историю. Очередной релиз JDK 25 также не обошел стороной JDK Flight Recorder и принес с собой новые возможности.
Повышаем эффективность написания кода в IntelliJ IDEA с помощью Vim.
Unison
Почему сервисный слой должен возвращать Entity, а не DTO. Почему fetching небольших коллекций может привести к миллионным датасетам. Стоит ли вытаскивать deep-nested-сущности. Как выключение autocommit может разительно увеличить пропускную способность приложения.
Разработка высоконагруженных систем требует особых подходов. Расскажу, как мы создали платформу расчета признаков для сервисов машинного обучения с полностью асинхронным ядром на CompletableFuture для обработки тысяч событий в секунду.
Разберу подводные камни при взаимодействии с Cassandra и покажу реализацию эффективного консьюмера для множества топиков Kafka в одном потоке.
Koronatech
Современный senior-разработчик на Spring просто обязан разбираться в Kubernetes, без этих знаний уже никуда. Что необходимо знать, какие есть подводные камни, на что обратить внимание и как применять инструменты деплоя в Kubernetes — узнаете в докладе.
Amplicode
Как удалось почти втрое уменьшить потребление CPU, а заодно снизить время ответа на пользовательские запросы и фактическую интенсивность аллокаций.
Ozon
Когда речь заходит про OAuth 2 и работу с JWT, во время написания кода возникает масса вопросов и приходится вспоминать множество нюансов. В докладе — все, о чем чаще всего спрашивают Google. Для любителей и понимателей security в одном повествовании на примере Spring.
Amplicode
На примере классической задачи на многопоточность рассмотрю некоторые заблуждения, связанные с виртуальными потоками, — для этого применю инженерный подход, основанный на измерениях.
01.tech
Расскажу про устройство и работу основных инструментов дебаггинга в JVM. Приведу примеры отладки распределенных приложений, а также расскажу про другие нетривиальные способы отладки в JVM.
Яндекс
API часто приходится проверять вручную — Postman, curl, Insomnia, HTTP-клиенты в IDE, каждый со своими ограничениями. Connekt объединяет эти сценарии и превращает ручные проверки в живой код, пригодный для повторного использования. В докладе — сравнение подходов и взгляд «под капот» инструмента.
Haulmont
Как пережить стихийный наплыв пользователей с новыми сценариями использования, как быстро диагностировать проблемы производительности внутри JVM, с чем вообще можно столкнуться и как избежать проблем.
Расскажу и покажу на примерах реального кода, как мы в SberDevices используем корутины и flow для решения нестандартных задач. Рассмотрим проблему перехода между миром коллбеков и миром корутин. Покажу, как мы реализовали ленивые подписки на сообщения нашего бэкенда и с помощью них решили проблему backpressure для общей очереди обмена сообщениями с бэком.
SberDevices
Представляю разработанную мной библиотеку, позволяющую произвольно управлять системным временем в JVM. Она помогает тестировать поведение компонентов, работающих на Java, в различное время.
Газпромбанк
Посмотрим на Quarkus, Panache, gRPC и другие «неочевидные» вещи. Обсудим, где они могут пригодиться, какие грабли встречаются и как расширить профессиональные горизонты.
Yandex Infrastructure
Расскажу, как некоторые старые (compressed oops и compressed class pointers) и новые (compact object headers) настройки влияют на реальное использование памяти, и что делать, если ваше приложение приближается к границе в 32 GB.
Yandex Cloud
Как исходный код превращается в графы, как это используют компиляторы и как это может пригодиться разработчику? Наглядно разберем внутренние представления фронтенда компилятора на практическом примере taint-анализа.
PVS-Studio
Мы активно дополняем программу. Подписывайтесь на нашу рассылку, чтобы быть в курсе.