Stage 1: HR Screening (30 min)
Intro to the company and the team
Questions about previous experience and projects
Availability, salary expectations, relocation/remote preferences
Stage 2: Technical Interview #1 — System Design (60 min)
Design a simplified banking transaction system (accounts, balances, transfers)
Focus on scalability, data consistency, error handling
Discuss choices: DB, caching, microservices vs monolith
Stage 3: Technical Interview #2 — Coding (60 min)
Live coding: REST API for basic account management (CRUD)
Use preferred language (Java, Go, Python, etc.)
Emphasis on clean code, error handling, tests