Guide to Engineering Organisation at Wise, 2020 edition

Engineering

One unique feature about our engineering interviews is that we match candidates to teams they will be working in quite late in the process. This results in a lot of questions about what each of our product teams do and how they work together. With so many different teams and so much I could share about how we work, interviews offer a limited time to dive into the details. So here’s my humble effort to give you an overview of our engineering organisation, our teams, and how it all works in practice.

A history lesson first

There are a few jokes among us engineers at Wise. One is that it all started with only two teams: Conversion & Experience. Conversion team looked after customer onboarding up to the point where one starts using our product (creating their first cross-border money transfer). Experience team looked after them afterwards. Another one is that there was only really one team: the team that worked on the monolith (whose presence is in itself a living history of Wise engineering) and that was every single engineer.

There’s some truth in both. As a startup, building a monolith was the quickest way to market at the time; with low engineering headcount and communication overhead, one or two or three teams probably didn’t matter at the time, as long as we delivered product features that our customers wanted. As for Conversion and Experience teams (as well as Business and Currencies teams later), they’ve spun off many teams since and become part of several tribes that I’ll introduce later.

How we structure the engineering organisation now

Fast forward to 2020, the days of the monolith are long gone (it’s still alive but with a much-reduced footprint on Wise engineering as a whole) and microservices on Kubernetes in AWS are in.

We’re often asked in interviews about how we structure our engineering organisation. A usual reference I often use to answer this question is the Spotify model. We are made up of Product Teams, Guilds and Tribes, and this is how it all works in practice:

  • We don’t need to re-invent the wheel on squads as each product team is already set up to have all the skills needed to cover a functional area of our products. A typical product team at Wise includes a number of engineers, a product manager, sometimes a product analyst, a designer and contacts from Operations and Customer Services. This structure allows teams to move and build quickly as they can make decisions autonomously.
  • Most notably we have iOS, Android and (web) frontend guilds among others. Furthermore, because of the mono-repo nature of our iOS and Android development practice, engineers in their respective iOS and Android guilds work much more closely and collaboratively.
  • Tribes are a relatively new organisational layer introduced as a way to group together product teams covering similar functional areas (more introduction on individual tribes later), perhaps as a natural response to an increasingly large number of product teams.
  • We start seeing signs of chapters (groups of people within the same tribe, from the same discipline such as backend development, getting together) being formed organically as an answer to closer collaboration within tribes. However, they remain informal for now.
  • Architecturally, we’ve never had an architect (or a team/committee) in the organisation so far. With weak code ownership, every engineer is empowered to change any code in any service. The owning team has the responsibility to advise and review any changes. More recently, engineers are encouraged to share their plans prior to significant changes to ask for feedback from a wider audience. Cross-team coaching is another measure brought in to increase knowledge sharing and visibility.
  • Other than product teams, in engineering we also have a few teams set up during our modularisation effort to own critical services. In order to break down the monolith, a few critical services were identified and teams were created. Nowadays you’ll find them scattered around in different tribes.

In reality, Wise has been evolving in its own way to meet the demand for scaling up as an engineering organisation. The Spotify model is simply the closest we could find to describe where we are now. For how we work, here is a more detailed article.

Who’s doing what

With how we organise in mind, it’s time for me to do a tribe-by-tribe intro. It’s worth pointing out that not all tribes have an engineering element (for instance, People and Legal) therefore I’m only covering those that do. On the other hand, there’s also one tribe (Platform & Security) with a 100% headcount on engineering.

Business tribe

At Wise, we started with building a consumer product to improve the way people move money across borders. Soon we realised businesses, big and small, have many similar but sometimes unique problems. We launched the Business team a few years ago to address needs such as batch payments and opened up our public API to businesses, banks and other financial institutions with whom we partner.

You’ll find a full spectrum of engineers, striving to save businesses around the world billions in hidden fees and put smiles on the faces of accountants and finance department employees as they go.

Crime Fighting tribe

As a regulated financial institution, this tribe makes sure that we’re always on the right track. You may have heard of some acronyms such as KYC (Know Your Customer), AML (Anti-money Laundering), and EDD (Enhanced Due Diligence); product teams in the tribe work closely with operations colleagues to make our processes fully compliant and effective at the same time. They’re predominantly backend engineers and in some areas, you’ll see advanced data science applied in practice.

Customer Journey tribe

If there’s one tribe that owns most of the surface area in our web and mobile apps, it’s this tribe. International people around the world struggle and overpay for parts of their entire banking experience. This team is focused on building experiences to save them precious time and hard earned money for more important things in life. This means, creating a customer experience that’s as convenient, fast, transparent and cheap as possible, in line with our mission.

Teams in this tribe look after various elements of the customer journey including different features (for example, Send Money team and Receive team) and elements of our mission (Speed team and Comparison team).

You’ll find a mix of web, mobile, and backend engineers working on growth and products such as cross-border money transfer and multi-currency account. Understandably, design also plays an important part in the tribe.

Finance & Treasury tribe

It may be invisible at times but Finance & Treasury are a crucial part of Wise, keeping us fit financially. While Treasury looks after managing liquidity and foreign currency exposure, Finance focuses on running our financial processes in an efficient, scalable and controlled manner.

There are a number of product teams working in the tribe to look after the financial health of Wise. Engineers in the tribe are all backend and similar to Crime Fighting, in-depth data analytics and data science are common practice here.

Plastic tribe

Have you ever seen our green debit card? This tribe is all about the card (which we internally call Plastic), which enables our customers to spend from their multi-currency accounts everywhere in the world. The teams are focused on everything from customer experience and usability of the card to compliance, operations and geographical expansion of it.

You’ll find predominantly backend engineers dealing with the infrastructure; at the same time, they do own a small surface area in our web and mobile apps, by their web and mobile engineers.

Platform & Security tribe

This tribe is unique in many ways. For one, it’s 100% engineering, where teams look after site reliability, observability, data storage & delivery, internal tooling, networking, and security, just to name a few. For another, they started from scratch to be a vertical tribe today partnering with all product teams to deliver value to our customers.

They have their own engineering job listings due to different skill set required, which means you would’ve known whether you’re applying for a job in this tribe, or others at the beginning of the process.

Regional Expansion tribe

Wise has always been focused on moving money between as many currencies and countries as possible. Adding new routes and improving our existing ones will always be the core of our business.

Product teams in this tribe are usually divided by geographical regions in the world such as Europe, North America, Middle East and Africa, Latin America and Asia Pacific (Mars coming soon). By integrating with local partners, they build a foundation for other tribes to succeed. It’s not uncommon to see a product team residing between multiple offices.

Engineers in the tribe are all backend except for a team of mobile engineers looking after a small surface area on mobile around regional features.

Support tribe

Last but not least, our Support tribe works to deliver great support for our customers, in an efficient and scalable way while driving product excellence to reduce our contact rates towards zero.

Engineers in this tribe work closely with colleagues in customer services to offer the best help experience to our customers. They own a sizeable surface area in our web and mobile apps, therefore you can find web, mobile as well as backend engineers in the tribe.

At a glance

Closing words

I hope that the short introduction helps you picture us as a product engineering organisation; And in a more practical sense, prepares you with the organisational context during the interview process. The structure of our organisation is such that you’re empowered to work as a product engineer with a strong autonomous engineering culture.