Senior Kotlin Backend Developer (сервис интеграции с ФНС)
Описание
Мы в VentraGo создаём маркетплейс подработок, где люди находят задания, выполняют их и получают быстрые выплаты. Наш сервис помогает компаниям оперативно закрывать кадровые потребности, а исполнителям — зарабатывать удобным способом. Сейчас мы находимся в поиске человека, который уже делал интеграцию с ПП НПД ФНС, знаетпротокол и его подводные камни и может взять на себя сервис интеграции целиком: откода до общения с ФНС через СПП. Чем предстоит заниматься: Владеть сервисом интеграции с ФНС; Довести обмен до полного соответствия протоколу v0.37 и чек-листу ФНС для типа «ЭП-посредник»; Завершить переход на тип Партнёра 3: подключение набора методов, демонстрация программного продукта на КТИР, получение мастер-токена КПЭ. Реализовать офлайн-режим чеков по Приложению № 10 протокола: пул одноразовых ключей на ИНН, решение «онлайн/офлайн» на каждом чеке, хеш и досылка, публичная страница чека; Развивать сценарии привязки и проверки НП: привязка по ИНН и телефону, статусы, права, снятие с учёта, лицевой счёт (начисления, задолженность, налоговый бонус), справки о доходах; Обеспечивать надёжность: общий ограничитель к ФНС между репликами, ShedLock на регламентных задачах, outbox для отметок уведомлений, метрики, алерты, разбор инцидентов; Взаимодействовать с ФНС: обращения в СПП, запросы в «Методологию», трактовка спорных пунктов протокола, участие в демонстрациях; Работать в связке с мобильной командой и командой платформы. Наш стек:Kotlin 2.4, Java 25, Spring Boot 4.1 (MVC, Data JPA, WS), PostgreSQL, Liquibase, Redis, Kafka, ShedLock, Testcontainers, OpenTelemetry, Prometheus, Pyroscope, Gradle Kotlin DSL, GitHub, Kubernetes.Что мы ожидаем: 5+ лет backend-разработки на JVM. Уверенный Kotlin, Spring Boot 3.x/4.x, Spring Data JPA/Hibernate, PostgreSQL, Liquibase, Redis, Kafka; Опыт интеграции с ПП НПД ФНС (API Партнёров «Мой налог» / СМЗ): SOAP-сервис SmzIntegrationService, асинхронный обмен SendMessage / GetMessage / GetMessages, AuthService и мастер-токен, контуры КТИР и КПЭ; Знание протокола информационного обмена (версии 0.35–0.37) на уровне методов и регламента: PostBindPartnerWithInn / WithPhone, GetBindPartnerStatus, GetTaxpayerStatus, GetGrantedPermissions, PostIncome / PostCancelReceipt, GetNotifications / Ack / Arch, GetNewlyUnboundTaxpayers, GetTaxpayerAccountStatus, GetIncomeReference, GetKeys; лимиты частоты, ночные окна, коды ошибок SmzPlatformError; Проходили демонстрацию программного продукта и чек-лист ФНС (Приложения № 5–6 Правил) хотя бы один раз; понимаете разницу между типами Партнёров («заказчик работ/услуг» vs «посредник») и их матрицами проверок; Spring WS / JAXB / SAAJ: генерация моделей из XSD, маршаллинг, работа с версионированными схемами; Понимание фискализации доходов НПД: чек, аннулирование, офлайн-ключи, лицевой счёт, налоговый бонус, ограничения 422-ФЗ; Умение читать нормативный документ (протокол, Правила, разъяснения ФНС) и превращать его в проверяемые правила в коде. Что мы предлагаем: Достойную заработную плату и прозрачную систему мотивации. Мягкий гибридный формат работы (3 дня офис, 2 дня дома). Официальное оформление по ТК РФ. Социальные программы (ДМС, оплата больничного, программы матпомощи, обучения и др.). Дополнительные оплачиваемые выходные дни. Корпоративный доступ к образовательным платформам. Программу корпоративных привилегий PrimeZone. У тебя будет возможность прокачать свои скиллы, поработать с интересным продуктом и командой, которая ценит качество. Понравилась наша вакансия? Оставляйте отклик, будем рады рассказать о нашем продукте подробнее :)