ScoutGet started
XsollaWeb3

Middle/Senior Backend Engineer

SeniorRemote · RussiaFull time
The role
About the project Xsolla ZK is building a cross-game infrastructure that empowers gamers to freely trade and use their digital assets without barriers. The backend team develops services for: * Xsolla Bazaar — NFT marketplace for trading digital assets across Ethereum, Polygon, and Xsolla ZK chains * Web3 Backpack — Smart wallet backend with account abstraction (ZK SSO 4337) * Blockchain Services — Event scanners, transaction processors, and Web3 connectors * BFF Layer — Backend-for-Frontend services orchestrating complex Web3 operations Tech Stack: * Language: Go (go-ethereum, ethkit, idiomatic concurrency patterns) * Databases: MongoDB, PostgreSQL, Redis * Message Queue: NATS, RabbitMQ, Kafka * API: REST, WebSocket, gRPC, OpenAPI (Swagger) * Blockchain Infrastructure: * ZK Stack / ZKsync Era: EraVM, zksolc/zkvyper compilers, system contracts, bootloader, native Account Abstraction on zkSync-family chains * Account Abstraction (ERC-4337): EntryPoint (v0.6–v0.8), UserOperation lifecycle (prepare→sign→submit→confirm), bundler and paymaster roles, ERC-7562 validation rules, ERC-6492 signature validation for undeployed accounts * Ethereum L1: go-ethereum, abigen for smart contract bindings, RPC and indexer semantics * Smart Contracts: Solidity, ERC-20/721/1155, modular account standards (ERC-7579 / ERC-6900), session keys (ERC-7710 / ERC-7715) * Signature Schemes: EIP-712 typed data, ERC-1271 contract signatures, WebAuthn/passkey (P-256) * Infrastructure: Docker, Kubernetes, GitLab CI/CD, Graylog Key Technical Challenges: * ZK Stack Integration: Working with EraVM execution environment, native Account Abstraction on zkSync-family chains, double resource accounting (EE gas + native computational resources), L1↔L2 communication via ZKsync Gateway, finality and reorg behavior * Account Abstraction Backend Services: Implementing the ERC-4337 UserOperation lifecycle, integrating with bundlers and paymasters, handling gas estimation failure modes and counterfactual deployment * Smart Contract Interaction: Generating Go bindings via abigen, handling factory dependencies for contract deployment, implementing EIP-712 transaction signing and ERC-1271 signature verification * Session Keys & Delegated Permissions: Supporting scoped, time-limited, contract-allowlisted authority (ERC-7710 / ERC-7715) for gasless, prompt-free gameplay transactions * Event Processing: Building blockchain event scanners for multiple chains (Ethereum, Polygon, Xsolla ZK), implementing reorg handling and transaction finality tracking * High-Availability Architecture: Designing resilient microservices for NFT marketplace and wallet backends with real-time WebSocket updates Responsibilities * Develop backend services using Go with ethkit and go-ethereum for Ethereum interactions and RPC integration * Integrate with ZK Stack infrastructure: work with EraVM, system contracts, and L1↔L2 messaging * Build and maintain wallet backend indexing integrations for real-time token balance tracking and webhooks (via internal indexer or third-party providers) * Design and implement APIs for NFT marketplace and orderbook services, including on-chain order matching and settlement flows * Implement smart contract interaction layer using abigen-generated Go bindings for ERC-20/721/1155 tokens * Build Account Abstraction (ERC-4337) backend support: UserOperation submission and monitoring, paymaster gas-sponsorship logic, session-key issuance and revocation * Develop blockchain event scanners with reorg handling for Ethereum, Polygon, and Xsolla ZK chains * Implement BFF (Backend-for-Frontend) services orchestrating complex multi-chain operations * Design efficient caching and indexing strategies for on-chain data using Redis and MongoDB * Write comprehensive tests including integration tests with local ZKsync test environment * Document APIs using OpenAPI/Swagger specification * Monitor and troubleshoot production systems, handle blockchain-specific edge cases (stuck transactions, gas estimation) Nice to Have Required: * 2+ years of commercial experience with Go * Strong understanding of MongoDB and PostgreSQL (query optimization, indexing) * Experience with Redis for caching and session management * Knowledge of message queues (NATS, RabbitMQ, or similar) * Experience designing and implementing REST APIs with OpenAPI/Swagger * Understanding of microservices architecture patterns * Experience with Docker and container orchestration basics * Proficiency with Git and GitLab CI/CD * Solid understanding of distributed systems concepts Preferred: * Experience with Ethereum/EVM blockchain integration: * Working with go-ethereum library and RPC nodes * Smart contract interaction via ABI bindings (abigen) * Understanding of transaction lifecycle, gas estimation, nonce management * Knowledge of ZK Stack / ZKsync Era: * EraVM execution model and differences from EVM, including native Account Abstraction on zkSync-family chains * System contracts (ContractDeployer, NonceHolder, etc.) * L1↔L2 communication, bridging, and finality/reorg behavior * Working knowledge of ERC-4337 Account Abstraction: * EntryPoint contract and the UserOperation lifecycle * Bundler and paymaster roles, gas estimation failure modes * Session keys and delegated permissions (ERC-7710 / ERC-7715) * Familiarity with signature schemes: EIP-712 typed data, ERC-1271 contract signatures, WebAuthn/passkey signers * Exposure to AA infrastructure providers (any of: Sequence, thirdweb, Privy, Dynamic, Turnkey, Pimlico, Alchemy, Biconomy, ZeroDev, Safe{Core}) for wallet, indexer, or transaction-relay integrations * Knowledge of token standards (ERC-20, ERC-721, ERC-1155) and their implementation details * Experience with blockchain event processing: event scanning, reorg handling, finality * Understanding of DeFi concepts and NFT marketplace mechanics * Experience with Kubernetes for container orchestration