Interview guides · Wise
Wise Software Engineer Interview Guide
Wise Software Engineer interview guide: reported rounds, questions and how candidates describe the process.
The 60-second brief
A Software Engineer at Wise plays a pivotal role in executing the company's core mission: making international money transfers instant, convenient, transparent, and eventually free. Unlike traditional financial institutions, Wise operates on a high-scale, cloud-native global payments network that moves billions of dollars across dozens of currencies every single day. As an engineer here, you do not just write code; you build and scale the very infrastructure that challenges legacy banking systems and directly impacts over 16 million active customers worldwide. The engineering culture at Wise is defined by extreme ownership, high autonomy, and cross-functional collaboration. You will be embedded in autonomous product teams—such as FinCrime, Core Payments, Platform, or Wise Platform—where you will work alongside product managers, analysts, and designers to define your own roadmap.
This guide is scoped to a Software Engineer candidate at Wise.
Focus areas
- Algorithms & Data Structures
- Pair Programming
- Coding Interviews
The Wise interview process
Wise candidates report 3 rounds over 3-5 weeks. The stages below are what candidates describe, not a published process.
Initial Screening
The process begins with initial screening and automated tests to establish a baseline of technical and cultural alignment.
What to demonstrate
- The process begins with initial screening and automated tests to establish a baseline of technical and cultural alignment
- Depth in Algorithms & Data Structures
How to prepare
- Be able to walk your CV end to end in two minutes, and say why this company specifically.
- Have your salary expectations, notice period and location constraints ready, and ask for the rest of the loop in writing.
Live Technical Rounds
Candidates participate in live, highly interactive technical rounds to assess their coding skills.
What to demonstrate
- Candidates participate in live, highly interactive technical rounds to assess their coding skills
- Depth in Algorithms & Data Structures
How to prepare
- Answer aloud and timed: Design and implement a classic Tic-Tac-Toe game, focusing on clean object-oriented design and edge-case validation.
- Answer aloud and timed: Refactor a currency conversion and money transfer pipeline to correctly handle validation edge cases and routing.
Behavioral Rounds
Deep-dive conversational rounds focus on cultural fit and collaboration skills.
What to demonstrate
- Deep-dive conversational rounds focus on cultural fit and collaboration skills
- Depth in Algorithms & Data Structures
How to prepare
- Prepare three examples from your own work, each with a decision you made and an outcome you can quantify.
- Re-read the description of the behavioral rounds above and write down what you would ask to confirm before it.
Where candidates lose points
Master the Circuit Breaker Pattern
This is a classic Wise technical question. Be comfortable implementing a basic circuit breaker using standard language libraries, focusing on state transitions (Closed, Open, Half-Open) and thread safety.
Prepare for the Maki Video Assessment
The Maki assessment includes rapid-fire cognitive questions and one-way video recordings. Treat the video recordings seriously; use the STAR method and explicitly reference how your actions align with Wise values like customer advocacy and extreme ownership.
The Maki assessment includes rapid-fire attention-to-detail questions
Ensure you are in a quiet environment with zero distractions before starting, as these tests are strictly timed and cannot be paused.
Questions & practice
Implement a resilient Circuit Breaker pattern for an HTTP client to handle downstream service failures.
Medium · Practical Coding & Algorithms
Approach
- Restate the input: its shape, its size, and what is guaranteed about it.
- Name the brute-force solution and its complexity before improving on it.
- Choose the data structure from the access pattern, not from familiarity.
- State the target complexity and say which constraint rules the naive version out.
Follow-up
- How does this change if the input no longer fits in memory?
- What is the worst case, and how likely is it on real data?
Build a thread-safe Token Manager that handles token expiration, renewals, and concurrent access.
Medium · Practical Coding & Algorithms
Approach
- Say what the runtime actually does before reasoning about the code.
- Name what is shared across threads and what owns each piece of state.
- Identify the window where an invariant is briefly untrue.
- Distinguish a value from a reference to it, and say which one you handed out.
Follow-up
- What happens if two callers reach this at the same time?
- Where could this allocate more than you expect?
Refactor a currency conversion and money transfer pipeline to correctly handle validation edge cases and routi
Medium · Practical Coding & Algorithms
Refactor a currency conversion and money transfer pipeline to correctly handle validation edge cases and routing.
Approach
- Restate the input: its shape, its size, and what is guaranteed about it.
- Name the brute-force solution and its complexity before improving on it.
- Choose the data structure from the access pattern, not from familiarity.
- State the target complexity and say which constraint rules the naive version out.
Follow-up
- How does this change if the input no longer fits in memory?
- What is the worst case, and how likely is it on real data?
Solve a medium-difficulty data structures question involving array manipulation and sliding windows within a s
Medium · Practical Coding & Algorithms
Solve a medium-difficulty data structures question involving array manipulation and sliding windows within a strict time limit.
Approach
- Restate the input: its shape, its size, and what is guaranteed about it.
- Name the brute-force solution and its complexity before improving on it.
- Choose the data structure from the access pattern, not from familiarity.
- State the target complexity and say which constraint rules the naive version out.
Follow-up
- How does this change if the input no longer fits in memory?
- What is the worst case, and how likely is it on real data?
Why do you want to join Wise, and how do you personally align with our mission of borderless, low-cost finance
Medium · Product Mindset & Behavioral
Why do you want to join Wise, and how do you personally align with our mission of borderless, low-cost finance?
Approach
- Name the grain you start from and join outward from it.
- Check whether any join is one-to-many before aggregating, or the sums inflate.
- Say which index the query would use, and what makes it unusable.
- Handle the rows that do not match: that is usually the actual question.
Follow-up
- How does the query change if that join becomes one-to-many?
- What happens to this when the table is ten times larger?
Write a SQL query utilizing complex joins and aggregations to calculate the total transaction volume per user
Medium · SQL & Data Querying
Write a SQL query utilizing complex joins and aggregations to calculate the total transaction volume per user within a specific timeframe.
Approach
- Name the grain you start from and join outward from it.
- Check whether any join is one-to-many before aggregating, or the sums inflate.
- Say which index the query would use, and what makes it unusable.
- Handle the rows that do not match: that is usually the actual question.
Follow-up
- How does the query change if that join becomes one-to-many?
- What happens to this when the table is ten times larger?
Optimize a slow-performing database query that retrieves active compliance screening records.
Medium · SQL & Data Querying
Approach
- Name the grain you start from and join outward from it.
- Check whether any join is one-to-many before aggregating, or the sums inflate.
- Say which index the query would use, and what makes it unusable.
- Handle the rows that do not match: that is usually the actual question.
Follow-up
- How does the query change if that join becomes one-to-many?
- What happens to this when the table is ten times larger?
Design and implement a classic Tic-Tac-Toe game, focusing on clean object-oriented design and edge-case valida
Medium · Practical Coding & Algorithms
Design and implement a classic Tic-Tac-Toe game, focusing on clean object-oriented design and edge-case validation.
Approach
- Fix the scope first: who calls this, how often, and what they do when it fails.
- Name the read and write paths separately; they rarely have the same bottleneck.
- Choose a partition key and say what query it makes expensive.
- State the consistency you need, and where you are willing to be stale.
Follow-up
- What breaks first when traffic grows ten times?
- How does this behave when that dependency is down for an hour?
Design a scalable, distributed Rate Limiter to protect public-facing APIs from abuse while ensuring low latenc
Medium · System Design & Architecture
Design a scalable, distributed Rate Limiter to protect public-facing APIs from abuse while ensuring low latency.
Approach
- Fix the scope first: who calls this, how often, and what they do when it fails.
- Name the read and write paths separately; they rarely have the same bottleneck.
- Choose a partition key and say what query it makes expensive.
- State the consistency you need, and where you are willing to be stale.
Follow-up
- What breaks first when traffic grows ten times?
- How does this behave when that dependency is down for an hour?
Architect a client support chat widget distribution system that dynamically routes user conversations to avail
Medium · System Design & Architecture
Architect a client support chat widget distribution system that dynamically routes user conversations to available agents.
Approach
- Fix the scope first: who calls this, how often, and what they do when it fails.
- Name the read and write paths separately; they rarely have the same bottleneck.
- Choose a partition key and say what query it makes expensive.
- State the consistency you need, and where you are willing to be stale.
Follow-up
- What breaks first when traffic grows ten times?
- How does this behave when that dependency is down for an hour?
Design an end-to-end payment processing flow that guarantees eventual consistency across multiple microservice
Medium · System Design & Architecture
Design an end-to-end payment processing flow that guarantees eventual consistency across multiple microservices.
Approach
- Fix the scope first: who calls this, how often, and what they do when it fails.
- Name the read and write paths separately; they rarely have the same bottleneck.
- Choose a partition key and say what query it makes expensive.
- State the consistency you need, and where you are willing to be stale.
Follow-up
- What breaks first when traffic grows ten times?
- How does this behave when that dependency is down for an hour?
Design a relational schema for a simple payment ledger, ensuring appropriate indexes and constraints are in pl
Medium · SQL & Data Querying
Design a relational schema for a simple payment ledger, ensuring appropriate indexes and constraints are in place.
Approach
- Fix the scope first: who calls this, how often, and what they do when it fails.
- Name the read and write paths separately; they rarely have the same bottleneck.
- Choose a partition key and say what query it makes expensive.
- State the consistency you need, and where you are willing to be stale.
Follow-up
- What breaks first when traffic grows ten times?
- How does this behave when that dependency is down for an hour?
Explain how you would scale a database schema to handle massive write volumes while avoiding deadlocks and per
Medium · System Design & Architecture
Explain how you would scale a database schema to handle massive write volumes while avoiding deadlocks and performance degradation.
Approach
- Establish what changed and when, before forming any theory.
- Pick a bisection that eliminates candidates whichever way it turns out.
- Check the instrumentation before believing the symptom.
- Separate the trigger from the cause; the deploy is rarely the bug.
Follow-up
- What would you look at first, and what would it rule out?
- How would you tell a cause from a coincidence here?
Suggested practice checklist
Built from the rounds and topics Wise candidates report.
Day 1 — Map the Wise loop
- Write out the reported sequence: Initial Screening, Live Technical Rounds, Behavioral Rounds.
- For each round, write one sentence on what it is judging, from the description above, and mark the one you are least ready for.
Deliverable: A one-page map of the 3 reported rounds, with the weakest marked.
Day 2 — Work Algorithms & Data Structures
- Spend the session on Algorithms & Data Structures, which Wise candidates report being tested on.
- Write one worked example in Algorithms & Data Structures and time yourself on it.
Deliverable: One timed worked example in Algorithms & Data Structures.
Day 3 — Work Pair Programming
- Spend the session on Pair Programming, which Wise candidates report being tested on.
- Write one worked example in Pair Programming and time yourself on it.
Deliverable: One timed worked example in Pair Programming.
Day 4 — Work Coding Interviews
- Spend the session on Coding Interviews, which Wise candidates report being tested on.
- Write one worked example in Coding Interviews and time yourself on it.
Deliverable: One timed worked example in Coding Interviews.
Day 5 — Answer out loud: Practical Coding & Algorithms
- Answer aloud, timed: Implement a resilient Circuit Breaker pattern for an HTTP client to handle downstream service failures.
- Answer aloud, timed: Build a thread-safe Token Manager that handles token expiration, renewals, and concurrent access.
Deliverable: Spoken answers to 2 reported Practical Coding & Algorithms question(s), under time.
Day 6 — Answer out loud: System Design & Architecture
- Answer aloud, timed: Design a scalable, distributed Rate Limiter to protect public-facing APIs from abuse while ensuring low latency.
- Answer aloud, timed: Architect a client support chat widget distribution system that dynamically routes user conversations to available agents.
Deliverable: Spoken answers to 2 reported System Design & Architecture question(s), under time.
Day 7 — Answer out loud: Product Mindset & Behavioral
- Answer aloud, timed: Describe a situation where you made a technical decision that had a direct, measurable impact on the end-user experience.
- Answer aloud, timed: Tell me about a time you made a significant technical mistake or failed at a project. What did you learn, and how did you rectify it?
Deliverable: Spoken answers to 2 reported Product Mindset & Behavioral question(s), under time.
Behavioural preparation
Behavioural rounds judge the decision you made and what it cost.
Describe a situation where you made a technical decision that had a direct, measurable impact on the end-user
Medium · Product Mindset & Behavioral
Describe a situation where you made a technical decision that had a direct, measurable impact on the end-user experience.
Approach
- Pick a story where you made the decision, not one where you watched it.
- State the situation in two sentences and spend the rest on the reasoning.
- Give the blast radius: what could have broken, and what you measured.
- Name the disagreement and how you resolved it with evidence.
Follow-up
- What would you do differently if you ran that again?
- How did you know your change caused the improvement?
Tell me about a time you made a significant technical mistake or failed at a project. What did you learn, and
Medium · Product Mindset & Behavioral
Tell me about a time you made a significant technical mistake or failed at a project. What did you learn, and how did you rectify it?
Approach
- Pick a story where you made the decision, not one where you watched it.
- State the situation in two sentences and spend the rest on the reasoning.
- Give the blast radius: what could have broken, and what you measured.
- Name the disagreement and how you resolved it with evidence.
Follow-up
- What would you do differently if you ran that again?
- How did you know your change caused the improvement?
How do you handle a situation where a product manager proposes a feature that introduces significant technical
Medium · Product Mindset & Behavioral
How do you handle a situation where a product manager proposes a feature that introduces significant technical debt?
Approach
- Pick a story where you made the decision, not one where you watched it.
- State the situation in two sentences and spend the rest on the reasoning.
- Give the blast radius: what could have broken, and what you measured.
- Name the disagreement and how you resolved it with evidence.
Follow-up
- What would you do differently if you ran that again?
- How did you know your change caused the improvement?
Describe a time when you had to give difficult, direct feedback to a peer or lead, and how you navigated that
Medium · Product Mindset & Behavioral
Describe a time when you had to give difficult, direct feedback to a peer or lead, and how you navigated that conversation.
Approach
- Pick a story where you made the decision, not one where you watched it.
- State the situation in two sentences and spend the rest on the reasoning.
- Give the blast radius: what could have broken, and what you measured.
- Name the disagreement and how you resolved it with evidence.
Follow-up
- What would you do differently if you ran that again?
- How did you know your change caused the improvement?