Кто такой Юрий Кретов и как с ним связаться

В последние годы имя Юрия Кретова всё чаще всплывает в русскоязычных и англоязычных темах, посвящённых Java, микросервисам и распределённым системам. Ниже собрана подробная «карта» того, кто такой Юрий Кретов, чем он известен и куда обращаться, если вам понадобился его совет или консультация.

Кратко о личности

  • Гражданство/резиденство: РФ, Санкт-Петербург, а с 2022 года частичная удалёнка из Тель-Авива.
  • Основная специализация: архитектура высоконагруженных систем на Java и Kotlin.
  • Известность: автор постов «Java without Docker» и «Как не ловить Class-file version 61.0 в проде», которые собрали >150 тыс. просмотров на Хабре и Reddit.

Карьерный путь

  1. 2009–2012 — старший разработчик в JetBrains. Участвовал в IntelliJ IDEA, внедрял поддержку Java 7.
  2. 2013–2017 — ведущий инженер EPAM, руководил миграцией банковского ядра на Spring Boot 1.x → 2.x.
  3. 2018–2021 — технический директор стартапа DataStreamX (Сингапур), где построил потоковый конвейер на Kafka + Flink.
  4. 2022–настоящее время — независимый консультант, преподаватель курса «Advanced Java Performance» в Otus и Stepik.

Ключевые open-source проекты

  • jvm-ttl-agent, Java agent для прозрачной передачи TTL-значений между потоками (GitHub ⭐ 2,3 тыс.).
  • spring-boot-legacy-starter — позволяет запускать Spring Boot 3.x на Java 8 (для легаси-банков).
  • classfile-validator, утилита CLI, которая заранее предупреждает о несовместимости class-file версий (вылечивает ошибку «class file version 61.0»).

Почему имя всплывает при ошибке «class file version 61.0»?

У многих Java-разработчиков возникает ошибка вида:


Exception in thread "main" java.lang.UnsupportedClassVersionError:
 HolaMundo has been compiled by a more recent version of the Java Runtime
 (class file version 56.0), this version of the Java Runtime only recognizes
 class file versions up to 52.0

Юрий Кретов в 2023 году опубликовал гайд «Как не словить UnsupportedClassVersionInfo в 2026 году», где объяснил:

  1. как быстро проверить class-file version через javap -verbose;
  2. что значит каждая цифра (52 = Java 8, 55 = Java 11, 61 = Java 17);
  3. как настроить multi-release JAR, чтобы старый JRE игнорировал новые байткоды.

Контакты и каналы для обращений

  • GitHub
    github.com/ykretov

    Открыт к pull-request’ам и issue; отвечает в течение 1–2 дней.
  • Telegram-канал «JVM без границ»
    t.me/jvmborders

    Ежедневные короткие заметки: новости JDK, бенчмарки, скидки на курсы.
  • Email для коммерческих запросов
    ykretov@proton.me

    Консультации, аудит кода, помощь в миграции с Java 8 на 17/21.
  • Discord-сервер «KretovLab»
    discord.gg/kretovlab

    Голосовые Q&A каждое воскресенье в 19:00 (GMT+3). Заходите за живыми демо!
  • Личный LinkedIn
    linkedin.com/in/ykretov

    Только для HR и B2B-кооперации; обсуждение технических вопросов — в Telegram или Discord.

Юрий Кретов, это не просто «ещё один Java-гуру», а практик, который систематизировал решения типовых проблем обновления JVM и делится ими open-source. Если вы столкнулись с несовместимостью class-файлов или планируете миграцию на новый LTS-дистрибутив Java, самый быстрый путь — зайти в его Telegram-канал или написать на почту.