Mock Interview

Timed practice with real interview questions. Write your answer first, then compare.

System Design

Design the backend architecture for Gnosis Pay that handles card payments, locks stablecoins, settles on-chain, supports retries, and handles 50k transactions per day. Walk me through components, data model, failure handling, and blockchain interaction layer.

EXPERT20 min time limit
NOT TRIED

Backend Engineering

How would you prevent double settlement in a payment system connected to a blockchain?

HARD10 min time limit
NOT TRIED

Blockchain

How do you handle blockchain reorgs in a production system that indexes on-chain events?

HARD10 min time limit
NOT TRIED

Smart Contracts

How do you design an upgradeable smart contract system? What are the tradeoffs between different proxy patterns?

HARD10 min time limit
NOT TRIED

Explain how account abstraction (ERC-4337) improves the Gnosis Pay user experience. What components are involved and how would you implement gasless card settlements?

HARD10 min time limit
NOT TRIED

DDD / Architecture

How would you model the payments domain using Domain-Driven Design? What are your aggregates, entities, and value objects?

HARD10 min time limit
NOT TRIED

Production Engineering

Your settlement service is processing payments 10x slower than normal. How do you investigate and resolve this in production?

HARD10 min time limit
NOT TRIED

Architecture

How would you design Gnosis Pay v2 as a B2B2C platform? Walk through multi-tenancy, partner isolation, API design, and the transition from the current B2C model.

EXPERT20 min time limit
NOT TRIED

Testing & Quality

How would you test a payment settlement pipeline end-to-end? Cover both the Go backend and Solidity smart contracts.

HARD15 min time limit
NOT TRIED

Distributed Systems (Milan)

You're building an idempotent payment authorization API. A Visa auth request arrives, but your response must be sent within 2 seconds. How do you design for reliability when the blockchain call might take longer?

EXPERT10 min time limit
NOT TRIED

Account Abstraction (Milan)

Compare ERC-4337 account abstraction with what Gnosis Pay actually uses. Milan co-founded an AA+MPC wallet — show depth here. When would you use one vs the other?

EXPERT15 min time limit
NOT TRIED

SIWE & Authentication (Milan)

Walk me through how Sign-In with Ethereum (SIWE) works for a payment API. Milan built a SIWE app — expect follow-ups on nonce management, session security, and replay protection.

HARD10 min time limit
NOT TRIED

Go Migration (Milan)

Gnosis Pay is actively migrating from TypeScript to Go. How would you approach this migration for a production payment system that can't have downtime?

HARD15 min time limit
NOT TRIED

Event-Driven Architecture (Milan)

Design an event indexer for Gnosis Pay that processes EURe transfer events, handles reorgs, and feeds the settlement pipeline. Milan built a swap-event-parser — he knows this domain.

EXPERT15 min time limit
NOT TRIED

DDD & Architecture (Milan)

Model the Gnosis Pay payment domain using DDD. Define your bounded contexts, aggregates, domain events, and show how the on-chain world maps to domain concepts.

HARD15 min time limit
NOT TRIED

Go Deep Dive (Milan)

Write a Go service that manages transaction nonces for concurrent blockchain submissions. How do you prevent nonce gaps and handle failures?

EXPERT15 min time limit
NOT TRIED

Safe Modules Deep Dive (Milan)

Explain how the Zodiac Roles Module v2 works at the smart contract level. How does it scope permissions, and how would you extend it for a B2B2C platform where each partner needs different spending rules?

EXPERT15 min time limit
NOT TRIED

B2B2C Platform (Mattia)

Gnosis Pay is transitioning from B2C to B2B2C. How would you design the partner API that lets fintechs issue their own stablecoin-powered cards on top of Gnosis Pay's infrastructure?

HARD15 min time limit
NOT TRIED

Product Communication (Mattia)

A potential fintech partner asks: 'Why should we build on Gnosis Pay instead of just issuing our own crypto card with a custodial solution?' How do you respond?

HARD10 min time limit
NOT TRIED

Production Reliability (Milan)

It's 3 AM. Settlements are failing — transactions are being submitted but reverting on-chain. Walk me through your incident response and debugging process.

EXPERT15 min time limit
NOT TRIED

Concurrency Patterns (Milan)

Design a Go-based Gelato Relay client that submits transactions with retry, backoff, rate limiting, and circuit breaking. Show me the interfaces and key implementation details.

EXPERT15 min time limit
NOT TRIED