System Design Interviews
What is a system design interview?
Are you about to interview for a Full Stack or Backend Engineer position at Wise? If yes, you’re reading the right blog. Here’s a handy guide to help you prepare for our technical interview.
The Wise technical interview dives deep into two main areas:
1. Who you are as a developer and your technical skills that are relevant to the role
2. How experienced you are in system design - designing a performant, easy to maintain and extensible system to solve real-world problems.
The interview comprises two parts: a discussion about your experience with some technical questions and a technical (system design) task.
The interview typically lasts about an hour and a half, with the system design task taking up the majority of this time.
Before the interview
You’ll receive an email from Wise containing the details of the interview: when it’ll happen, who’ll the two engineers be and how it’ll be conducted. It can be an onsite interview where you get the opportunity to visit one of our offices (depending on your location), or a video interview via Zoom.
At the interview
Our interviewers will provide a quick introduction of themselves and tell you about their roles in Wise.
Then we’ll inquire about you – your projects, technical achievements and what you have worked on.
For the design task, we will present a product task or problematic area and we expect you to propose a high-level architecture approach. Additionally, we may also ask for further details and delve into lower-level aspects such as defining data structures, or clarifying a specific logic to cover usage scenarios.
How to prepare
Previous experience section
During the interview, expect some questions about your past experiences and projects. We would recommend to take a moment before the interview to consider:
- Your contributions to projects you’ve worked on and your role in the projects, what decisions you have taken
- Recent bugs you’ve fixed, problems you’ve solved and tech you’ve contributed towards
- Be prepared to use a whiteboard (we use Hackerrank) to communicate your thoughts effectively
For some engineering positions (for example iOS/Android), candidates may be asked to complete a take-home coding problem prior to the interview. If this applies to you, be prepared to walk us through your solution and thought process.
System design questions and task section
We won’t ask questions that are only found in university textbooks. Our focus lies more on practical application and understanding rather than memorization of certain concepts. We are not looking for the “right” answer, rather, we aim to solve problems and encourage you to articulate your thought process so that the interviewers understand your reasoning. Nevertheless, we encourage you to review the following technical topics:
- General software development life cycle topics
- SOLID principles, design patterns
- Microservices: designing, development, deployment, tracing, and monitoring
- Distributed systems, transactions
- Sync/async communication between services, client-service communication, eventual consistency
- Product thinking: As “product engineers” at Wise, we need to think from the customer’s perspective and understand the product needs - incorporate these considerations into your own design
- Problem solving: Your approach to solving a non-trivial problem within a set time and arriving at a working solution
- Communication: Your collaboration style in problem-solving as well as your ability to justify your decisions. We want to understand why you approach problems a certain way, how you design solutions and your openness to feedback
- Technical proficiency: Your level of knowledge in technical subjects that are relevant to Wise’s technical stack as well as those necessary for discussing and developing system designs
- Scalability and availability of your solution
- Testing and monitoring: Your strategy for instrumenting and observing services
- Error handling: Your approach to preparing the system for expected and unexpected errors
- Data storage/Databases
Additionally, don’t forget common algorithms and data structures – understanding their usage, complexity and general functionality. While we won’t expect you to implement a red-black tree, comprehending the complexity of data insertion can be beneficial.
You might also want to review role-specific topics if you’ve applied for a specific position. For example, if you are applying for our security team, take some time to cover security related topics in your preparation. Similarly, streaming-related roles should anticipate deeper questions around streaming technologies, and so forth.
When approaching any technical task, we suggest the following:
- Make sure you fully understand the question. If you are uncertain, don’t hesitate to ask for clarification.
- Begin with a simple solution and iterate to improve it. If time runs short, just explain to us how you would improve it. However, it is also acceptable to start with the best solution right away :)
- Talk us through your thought process and assumptions as you tackle the problem
Feel free to ask the interviewers for help - they are there to support you in completing the task and demonstrating your problem-solving abilities.
Tips – during your interview
- For remote interviews, a stable internet connection and a quiet environment are very important. Consider using a headset for better audio quality for both yourself and the interviewers.
- We recommend joining the interview via video, not just audio to establish clearer communication and reduce misunderstandings.
- Since you will be tasked with system design, having access to a computer is essential.
- Be ready to use an online collaborative whiteboard tool (e.g. Hackerrank).
Finally, at the conclusion of the system design interview at Wise, you will have the opportunity to ask questions. Whether about life at Wise, our global money transfer operations, or our technology stack, feel free to ask.
Good luck!
Jobs you might be interested in
Salary
120000 - 145000 GBP Annual
Location
London
Team
Technology
Locations
London
Description
About the role We are looking for a Senior Engineering Lead with a data security and privacy mindset to join our Data Governance team.It is imperative that we protect our customers’ money and data. In
Reference
892665c7-27b3-4cb4-a130-84ad4d02267a
Expiry Date
01/01/0001
Salary
£80000 - £102000 + RSU
Location
London
Team
Technology
Locations
London
Description
About the role We are looking for a Senior Full-Stack Engineer with experience in Java and Javascript/Typescript.The Trust and Safety team at Wise is dedicated to safeguarding our platform against fin
Reference
ab8d2c37-7b4e-42a4-a948-f83ce29e7907
Expiry Date
01/01/0001
Salary
102000 - 125000 GBP Annual
Location
London
Team
Technology
Locations
London
Description
Team you will be working with: Receive RiskThe Receive Risk team is a global product team working to help customers receive money safely and fast into their account. We do this by building intelligenc
Reference
1d85b7c6-d11e-45c8-8ff6-f03bc5e2804c
Expiry Date
01/01/0001
Salary
£80,000 - £102,000 + RSU's
Location
London
Team
Technology
Locations
London
Description
Team you will be working with: Receive AdoptionThe Receive Adoption team is a global product team working to help customers discover and adopt Wise for receiving third party payments. We do this by bu
Reference
6a62cf47-6f92-45d3-b921-1ae5ef048b1a
Expiry Date
01/01/0001
Salary
-
Location
London
Team
Technology
Locations
London
Description
About the roleWe are looking for a Database Reliability Engineer with experience in MariaDB/MySQL, a passion for Database Engineering and maintaining critical services to join Wise’s Database Reliabi
Reference
191bd5ea-8d8c-4e03-a03e-061d792a8cc7
Expiry Date
01/01/0001
Salary
102000 - 125000 GBP Annual
Location
London
Team
Technology
Locations
London
Description
About the role We are looking for a Senior SRE Engineer to focus on Reliability Excellence at Wise. You will work cross functionally with all engineering teams in Wise to ensure we consistently delive
Reference
38facef4-e5f8-4e8b-92f9-d296e3555df9
Expiry Date
01/01/0001
Salary
£80000 - £102000 + RSU
Location
London
Team
Technology
Locations
London
Description
Wise is one of the fastest growing companies in Europe and we’re on a mission: to make money without borders the new normal. We’ve got over 15 million customers across the globe and we’re growing. Fas
Reference
67c448a5-48e0-489d-8c99-849c3d1b0a09
Expiry Date
01/01/0001
Salary
60,000-80000 GBP
Location
London
Team
Technology
Locations
London
Description
Wise is one of the fastest growing companies in Europe and we’re on a mission: to make money without borders the new normal. We’ve got over 15 million customers across the globe and we’re growing. Fas
Reference
3d9d1dab-1f63-4492-84c8-a43a18e92fdb
Expiry Date
01/01/0001
Salary
SGD 160,000 - 220,000 Annually + RSUs
Location
Singapore
Team
Technology
Locations
Singapore
Description
Your Mission:You’ll be responsible for the overall health, productivity and quality of your team and their output.You’ll provide feedback on your team’s approach, help them make data-driven decisions
Reference
35343b60-6c22-4382-81dd-d3908f3d20b6
Expiry Date
01/01/0001
Related blogs
Teaser
Our workContent Type
BlogPublish date
11/16/2023
Summary
Why I joined Wise I joined Wise as a graduate engineer right after finishing university. One question I’m frequently asked is why I chose Wise to start my career. A few things a
Teaser
People profileContent Type
BlogPublish date
10/11/2023
Summary
My name is Ali Salman, I’m a last year computer engineering student at Budapest University of Technology and Economics. This summer, I was an engineering intern at Wise in Budapest for 10
Teaser
People profileContent Type
BlogPublish date
05/30/2023
Summary
Hi there! 👋 I’m Stella, a Software Engineer based in Budapest, Hungary. I joined Wise back in September 2022 and I’d love to walk you through how I became passionate about softwar
Teaser
People profileContent Type
BlogPublish date
04/18/2023
Summary
I’m Holden and I’m a Software Engineer on the Contact Handling team. In my team, we build tools to support our Support. What that boils down to is making sure our c
Teaser
People profileContent Type
BlogPublish date
03/31/2023
Summary
A bit about me Hey 👋🏽 I’m Jasleen and I’ve been here at Wise as a graduate software engineer since September. You may also remember me from a year ago too as I was also an int
Teaser
Our workContent Type
BlogPublish date
02/01/2023
Summary
Solutions engineering is both the most accurate and most problematic job title I’ve ever had.It describes exactly what my team and I do at Wise, which is great, but it can also be inte