Описание работы
1. Разработка сервисов взаимодействия со смарт-контрактами
- Проектирование и реализация высоконадежных Java-сервисов с низкой задержкой для взаимодействия со смарт-контрактами в EVM-совместимых блокчейнах (например, Ethereum, BNB Chain, Arbitrum), включая вызовы функций, прослушивание событий и синхронизацию состояний.
- Инкапсуляция операций на блокчейне для ключевых бизнес-процессов, таких как депозиты, выводы и переводы активов между цепочками.
2. Поддержка перехода от симуляции к реальной системе
- Оптимизация существующей логики бэкенда симуляции для максимального соответствия поведению будущей реальной торговой системы.
- Участие в нагрузочном тестировании, отработке отказов и планировании канареечных релизов перед развертыванием реальной системы.
3. Интеграция с системами активов и ордеров
- Тесное сотрудничество с механизмами сопоставления, системами учета и модулями управления рисками для обеспечения согласованности данных между контрактным и прикладным уровнями.
- Реализация критически важных механизмов, включая снимки активов, проверку балансов и откат при исключениях.
4. Обеспечение безопасности и высокой доступности
- Следование лучшим практикам безопасности Web3 (например, управление приватными ключами, предотвращение атак повторного воспроизведения, оптимизация Gas).
- Создание систем мониторинга и оповещения для оперативного реагирования на аномалии, такие как неудачные транзакции или задержки блоков.
5. Техническая документация и сотрудничество
- Подготовка четких технических проектных документов и спецификаций API.
- Помощь команде QA в разработке автоматизированных тестовых сценариев для взаимодействия с контрактами.
Требования к кандидату
- Опыт backend-разработки на Java от 5 лет с глубоким знанием Spring Boot, MyBatis, Redis и MySQL.
- Твердое понимание основ Web3: кошельки, приватные ключи, Gas, ABI, EVM и журналы событий.
- Практический опыт работы со смарт-контрактами.
- Понимание принципов работы нод блокчейна (например, Geth, Infura, Alchemy).
- Сильные навыки работы с конкурентностью, управлением транзакциями и восстановлением после исключений.
Условия
- Плоская организационная структура с небольшими командами — мы ценим вклад, а не просто выполнение задач.
- Должность: Java-разработчик (специализация на смарт-контрактах)