As the Vice President of Engineering for Uber’s Core Infrastructure group, Matthew Mengerink faces a daunting task. He oversees 350 engineers across four teams tasked with not only maintaining the platform on which 3,500 microservices run, but also figuring out how to scale, improve, and modernize that infrastructure for Uber’s future.
Joining Uber in September 2017, Matthew brings experience managing infrastructure at technology stalwarts such as eBay, PayPal, and, most recently, YouTube. He mixes this technical pedigree with a candid nature and a focus on the people working in his organization. Those qualities are an asset when taking responsibility for a large team charged with building systems that can support Uber’s pace of product launches and global growth.
We sat down with Matthew to talk about the how the priorities he sets for his organization will contribute to Uber’s long-term resilience and the approach he takes towards his role:
As a relative newcomer to Uber, what was it like stepping into your leadership role on the Core Infrastructure team?
Given all that happened over the last few years, the organization felt very stressed out, and morale was quite low. There was an emerging structure, but there were still many things done on an ad hoc basis. I spent as much time evaluating the people as the infrastructure, ensuring that this remains a fun place to work, a rewarding place where people were heard and respected.
Because of our explosive growth over the last couple of years, there’s a cultural divide between the early hires who built our original infrastructure and newer engineers tasked with refining and modernizing it, so I spent a lot of time ensuring people respected the paths that brought us to this place. But at the same time, I had to make the argument that our architecture isn’t maturing fast enough for the size and scale the company had already reached—we were outpacing our infrastructure. Put simply, we need to respect our past, but embrace our future.
Why did you decide to join Uber?
This is a place where, if we do our jobs very well, we can help the environment as well as the economy.
I wanted to be in a place where my heartbeats matter, where I could work with extraordinarily talented people, and where I could wear my ethics on my sleeve. Finally, I wanted to be in a place where I was a cultural fit and had something to offer the company. At Uber, we impact people’s lives in a big way. This is a place where, if we do our jobs very well, we can help the environment as well as the economy. We can have a positive global impact on traffic, making transportation more efficient to help riders save time and drivers earn a living.
The people were one of the things I found most compelling about working at Uber. When I first met Thuan, I was very impressed with him as a human being. After all I had read in the news, I was intrigued that someone this nice could work at Uber. And step-by-step, I met many more employees, and every person that I met was a stereotype-shock to me. This wasn’t what was being presented in the press. I was surrounded by extraordinarily talented, very ethical, very concerned people who want to do the right thing.
And so when I talk about wearing my ethics on my sleeve, not only is this a place where I can comfortably do so, but there’s a mandate to help others and ensure that our “do the right thing” culture is recognized publicly, around the world. My leadership style, priorities, and the type of company we want to create just aligned really, really nicely.
Going into 2018, what are the strengths you see in your organization?
Uber’s Core Infrastructure team has extreme technical capability, very deep engineering talent, and a great bench. And so, if I formulate a problem and ask engineers on the team to solve it, I can just trust that it’ll be solved very well, quickly, and thoughtfully.
Do you feel like you have enough people to cover all the different sides of the platform?
No, I wouldn’t say we have enough people–yet. I would say, though, that the people we have are the right core. As we continue to scale out, I think of the team like a seed crystal, and we’ve got the right seed crystal. It grows really nicely, but it’s not big enough yet. Now, however, we are positioned to really make progress. We are ready to grow.
What are the priorities you are setting for your organization in 2018?
The easiest way to look at our priorities is across three metrics, and the first has to do with improving engineering efficiency. While the principle of “let builders build” works to a degree, sometimes we end up with multiple different ways of solving the same problem. We need to converge our solutions so we aren’t wasting time. The second one is site reliability. We owe it to our customers because they are betting their livelihoods on us to be more available, to be more reliable.
And the third is, we have to face a core reality in front of us that we are growing out of our existing data centers and need to move functions into the cloud. We refer to this strategy as a “tripod” because it consists of two clouds and one data center on our premises. That lets us settle into an operational haven where we can scale and grow without having to make fundamental changes from one day to the next.
What are the challenges of moving our platform to the cloud?
If you look at our microservice architecture, it’s designed to run in one data center. In that environment, there are few constraints and little latency between services, and no partitioning and isolation of sub-services. A lot of our core infrastructure wasn’t built to run on a cloud and our tools for deploying software to the cloud, managing it and operating it, don’t exist. So we encounter a ton of difficulties when dealing with this complexity.
It sounds like you will have to do a lot of building.
How do you take one of our city operations and move it to the cloud in an international context, and then move it back?
We will. There’s a whole lot of infrastructure and architectural work to create a system design that will facilitate partitioning things out. Our mission this year is clear, “How do you take one of our city operations and move it to the cloud in an international context, and then move it back?” We have to prove that we have the flexibility to move any of our cities, and use that as the mantra for going to cloud. In the short term, I think we’re going to be far more opportunistic and look for things that we can split out, like machine learning.
What is your general timeline for creating the tripod framework?
We predict it will take two years to both integrate fully with the cloud and get the platform operating thoughtfully with great tools. We will have a lot up-and-running this year, but getting it structured properly and aligned with our on-premises solution involves some herculean tasks.
Can you talk a bit about how we extend Uber’s platform to third parties, such as our recent partnership with JUMP Bikes?
We have to leverage our brands to operate within different stacks and environments already, and I look at bike-sharing as an extension of that capability. I think it’s becoming increasingly clear to people that the value of Uber isn’t to compete with the taxi industry, it’s leveraging technology to enable modern logistics at scale, and our JUMP Bikes partnership is a good example of that. I think that our fundamental stack needs to mature quickly to keep up with the diversity of different technologies that we support or will support soon.
Integrating external developers through better, stronger APIs is a task that’s in front of us. We’ve got a good start, and we can see that in how fast we got to market with JUMP Bikes. At Uber, sometimes it feels like we’re talking about an idea, and then two weeks later, people are using the idea in the real world. That’s just astounding. We want to make sure we can do that at scale and with a developer-conscious model.
Editor’s note: Following the partnership, Uber announced on April 9, 2018 that it would acquire JUMP Bikes.
What other big projects are you focusing on in 2018?
Convergence is a big one. We have an ethos of “let builders build,” and that gave us a tremendously large number of good systems. Any one of those systems will scale and each one works fine, but when we try to get them to work together, we didn’t think that through well enough. We didn’t predict this many different successful lines of business, or the explosion of machine learning and the advantages that come from it. Our strategy is to converge on fewer sets of technology that are built much better, so that our engineers can take for granted that the platform works reliably and that systems interoperate well.
If building reliable systems at scale interests you, consider applying for a role on Uber’s Core Infrastructure team.
Subscribe to our newsletter to keep up with the latest innovations from Uber Engineering.