Affirm
Mid
Build backend systems on the critical path of every Affirm Card transaction
Affirm is hiring a Software Engineer II for its Card Management & Transaction Processing team, which owns the issuing/processing infrastructure behind authorization, transaction processing, and card lifecycle management for the fast-growing Affirm Card. The role wants 1.5+ years of backend experience in Python or Kotlin, comfort with AWS/MySQL/Kubernetes-style distributed systems building blocks, and strong ownership of code quality and on-call operations, fully remote from Canada.
Step into this interview
Free · a live voice mock calibrated to this exact role
What this interview tests
- Backend system design in Python or Kotlin
- Distributed systems fundamentals: AWS, MySQL, Kubernetes
- Correctness in transaction systems (idempotency, concurrency, failure handling)
- Breaking ambiguous business problems into phased engineering delivery
- Operational ownership: metrics, on-call, 'keep the lights on'
- Code review practices and growth/feedback orientation
Common question themes
Design a backend service you built that spanned multiple components, and the tradeoffs you made
How would you ensure a payment/transaction isn't processed twice under retry or failure
Debugging a production issue in a system built on AWS/MySQL/Kubernetes
Breaking a vague business requirement into a phased engineering plan
A time you gave or received difficult feedback in a code review
Feedback that changed how you approach your own growth as an engineer