Инженер dxFeed Иван Федоренков с 20-летним опытом решил проверить, можно ли в одиночку реализовать сложный RPC-протокол на Java без команды и большого бюджета. За месяц работы по вечерам и выходным он создал реализацию протокола Connect RPC, которая полностью проходит все конформанс-тесты. Проект опубликован в открытом доступе на GitHub.

Для сбора и анализа информации Федоренков использовал модель Claude Opus Max с большим контекстным окном. Эта модель помогла ему погрузиться в проблематику, изучить официальную спецификацию, референсную реализацию на Go и набор конформанс-тестов. Для написания кода применялись ИИ-агенты Claude Code и Codex. Чтобы сделать работу моделей эффективнее, он подготовил локальную копию Go-реализации и выгрузил спецификации в формате Markdown в каталог docs проекта. Также был подключён LSP-плагин для Claude, что позволило агенту быстрее ориентироваться в кодовой базе.

Основой реализации стала библиотека Netty 4.2.x. Протокол выполнен в виде подключаемых Netty-хендлеров, взаимодействующих через сообщения. Библиотека не имеет сторонних зависимостей и поддерживает разные типы контента и кодировки. Федоренков выстроил процесс вокруг практик, снижающих непредсказуемость работы ИИ-моделей: декомпозиция задач на мелкие части, TDD, поэтапная реализация и валидация. По его словам, такой подход позволил получить результат, который можно выложить в open source и продолжать развивать до production-ready решения.

Для сбора спецификации использовалась модель Claude Opus Max, а для кодирования — Claude Code и Codex.

Проект доступен на GitHub под именем connect-java. Федоренков отмечает, что полной реализации Connect RPC на Java в открытом доступе он не нашёл, поэтому его работа может быть полезна Java-сообществу.