On launching a distributed system to global markets
Who is this presentation for?
- Software engineers, distributed systems engineers, and software architects
N26 has a mission to build the bank the world loves to use. While it’s currently live in countless countries in the EU, the company plans on launching in the US later this year, and also has immediate plans for Brazil and beyond. Launching in global markets presents some fascinating legal, business, and especially technical challenges. N26 wants to launch a core global product while also ensuring that user data is isolated in its respective region. This desire raises questions of storing user data in their legal countries while ensuring that it can be fetched anywhere in the world, ensuring that certain data is globally unique, and determining how all this can be done while minimizing changes to its existing infrastructure.
Kat Liu explores some of the biggest architectural trade-offs and hardships N26 faced while deploying a completely new platform of services. She provides an overview of the company’s existing architecture, including the existing stack and region-agnostic core microservices. You’ll learn the main problems N26 faced—launching in the US with the same BE architecture, legal requirements of data isolation between regions, discovering where a user’s data sits and what to do if a US user goes on holiday in the EU, and deciding where to implement the request routing. Kat outlines the solutions, including choices for new data center architecture, the first iteration of replicating N26’s authentication service and the second iteration of building a layer on top of all services, master-master replicated database of hashed data that’s populated on signup, and adding routing logic to the edge-load balancer layers. The company’s frontend solution revolved around fetching the correct data center on login, caching the static data center endpoint, and making sure this satisfies further legal requirements. You’ll learn about how the company minimized trade-offs of dealing with eventual consistency and preventing some timing attacks. Finally, Kat examines the lessons the company learned, that eventual consistency may or may not work for you based on the use case, that being fully agnostic to data regions may allow room for exploration, to replicate as little as possible because it’s less prone to error and security leaks, and that legal requirements take priority.
- Experience with microservice architecture
- Familiarity with distributed systems (useful but not required)
What you'll learn
- Learn to identify and alleviate some of the pain points of launching a global product into highly regulated, segmented markets
Kat Liu is a senior software engineer on the authentication team at N26. She’s worked extensively with distributed systems, sync/async messaging patterns, and authentication standards like OAuth2. Due to the strong DevOps culture at N26, she also has experience with application and machine provisioning, proxy configurations, and multiregion deployment pipelines. When she’s not at work, you can usually find Kat at the local mixed martial arts gym getting her butt kicked in Brazilian Jiu Jitsu and Muay Thai, playing guitar, or cooking.
Leave a Comment or Question
Help us make this conference the best it can be for you. Have questions you'd like this speaker to address? Suggestions for issues that deserve extra attention? Feedback that you'd like to share with the speaker and other attendees?
Join the conversation here (requires login)
For conference registration information and customer service
For more information on community discounts and trade opportunities with O’Reilly conferences
For information on exhibiting or sponsoring a conference
For media/analyst press inquires