The Pragmatic Engineer - Scaling Uber with Thuan Pham (Uber’s first CTO)

Episode Date: April 1, 2026

Brought to You By:• Statsig — ⁠ The unified platform for flags, analytics, experiments, and more.• Sonar – The makers of SonarQube, the industry standard for automated code review• WorkOS ...– Everything you need to make your app enterprise ready.—Thuan Pham was Uber's first and longest-serving CTO, and today he’s the CTO of Faire, a B2B wholesale platform. Back when Thuan joined Uber, it had around 40 engineers and 30,000 rides per day, and the system crashed multiple times a week. Over seven years, he helped rebuild the system, move it from a monolith to microservices, and scaled the engineering organization behind it. I had the privilege of working with Thuan for four of those seven years. Later, the very first issue of The Pragmatic Engineer newsletter was a deepdive into Uber’s Program and Platform split. This episode of the podcast contains a nice “full circle” moment, where Thuan shares even more details about why Uber chose to embrace that structure.We discuss what it takes to operate and build in that kind of environment. Thuan explains how he divided his time at Uber into three “tours of duty,” from stabilizing a fragile system, to re-architecting it, and scaling the org.We go deep into the platform-and-program split, the Helix app rewrite, and what it took to launch Uber in China in just five months (the original estimate was 18 months). We also cover Uber’s in-house tools and explain why they were necessary to support rapid growth.Finally, we discuss his role today as CTO of Faire, how the company is using AI, and how he sees AI changing software engineering.—Timestamps(00:00) Intro(05:32) Getting into tech(16:09) The dot-com bust(20:42) VMware(26:29) Getting hired by Travis at Uber(33:22) Early days at Uber and scaling challenges(40:57) Uber’s China launch(47:12) The platform and program split(50:26) From monolith to microservices (53:38) Internal tools at Uber (57:05) Helix: Uber’s mobile app rewrite(59:55) Thuan’s email about naming(1:02:03) Org structure changes under(1:06:34) Thuan’s work philosophy (1:12:23) The “three tours of duty” at Uber(1:15:37) Why Thuan left Uber (1:17:34) Coupang and Nubank(1:21:59) Faire(1:25:31) How Faire uses AI(1:28:24) AI’s impact on software engineering (1:31:09) The role of the CTO (1:35:13) Career advice—The Pragmatic Engineer deepdives relevant for this episode:• How Uber uses AI for development: inside look• The Platform and Program split at Uber• How Uber is measuring engineering productivity• Inside Uber’s move to the cloud• Uber's crazy YOLO app rewrite, from the front seat• How Uber built its observability platform• Developer experience at Uber with Gautam Korlam• Uber’s engineering level changes—Production and marketing by ⁠⁠⁠⁠⁠⁠⁠⁠https://penname.co/⁠⁠⁠⁠⁠⁠⁠⁠. For inquiries about sponsoring the podcast, email podcast@pragmaticengineer.com. Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe

Transcript
Discussion (0)
Starting point is 00:00:00 When Twan Pham joined Uber as the company's first CETO in 2013, the company had 40 engineers, the 30,000 rides per day, and the system crashed multiple times per week. He had five months before Uber's dispatch system which hit a brick wall with no way out. Seven years later, he left the CTO of one of the most complex engineering organizations ever built. In today's conversation we discuss, Twan's interview with Travis Calick for the CTO role, which lasted 30 hours, spread over two weeks. Scaling through chaos, rewriting dispatch before it collapsed, launching China in five months, and the full app right known internally as Project Helix.
Starting point is 00:00:33 Why Uber ended up with thousands of microservices and hundreds of internal tools, because existing solutions could not handle Uber's scale at the time, and many more. If you've ever wondered what is like inside the room and a company is growing faster than its systems can handle, and what are ways to get things under control? This episode is for you. As a side note, I've been lucky enough to work at Uber while Twan was a CTO, and Twan is a real deal. This episode is presented by Statsig, the unified platform for flags, analytics experiments,
Starting point is 00:00:58 and more. Check out the show to learn more about them and our other season sponsors, Sonar and WorkOS. Twan, it is so good to have you here in person. It's my pleasure. It's so good to connect with you again after all these years. And it's so good to reconnect. We worked together for almost four years at Uber. Probably my first month, I already met you in some really like fun slash stressful circumstances during Helix, the Uber appri-write, which was a crazy project. Well, before we get into any of that, how did you get started? Not just in tech, but in life. You had a pretty rough start.
Starting point is 00:01:31 Yeah, I grew up in, I was born in Vietnam, and I was a child, I would say, of the Vietnam War. So in 1975, when I was from the south of Vietnam, my father was tied to the military of the south, and when the country was unified, right? The South is lost and the North is one. And there were a fair amount of repercussions. Right. People who are associated with the Southern regime would not have much of an opportunity growing up, education opportunity, all this other things. That was, again, the way it was at the time. That's not necessarily true right now. But that was. And my mother then made a very bold decision that she wouldn't want her to son growing up with no opportunity. And so we had to flee the country.
Starting point is 00:02:28 and at the time there was a massive wave of exodus called the boat people where people just get onto a rinkety boat, fishing boat, whatever thing that can get their place in and escaped the country in the middle of the night. People did not know at the time, and nobody thought about it, but the chance of survival was about less than 50%.
Starting point is 00:02:49 About 2 million people left, about a million people survived the crossing because these boats are not seaworthy, and we cross the ocean. and yeah, but we were the lucky, we were lucky half, really, but no one thought about it, if you would think too much about it, therefore, pretty wouldn't do it. But everyone just like, well, we need to escape.
Starting point is 00:03:06 We need to, you know, give ourselves a shot of a better life. And so we did. So we left Vietnam. Took many try and it depleted the entire, you know, saving of my parent because we were scam. People would say, you know, pay up half now, half later, and then the book never shows up. And finally, on the fourth try,
Starting point is 00:03:26 actually made it. And then we were lucky that we have a really good captain who actually navigate through storms and all that. And we survived even pirate from Thai. I was around, I think, 11, 12, somewhere. And so we crossed that. And we survived three, three day, four nights of the crossing of the South China Sea, to Malaysia. Then we went into Malaysia. We thought we were done. A week later, we got tow back out and dump it. in Indonesia a few days later. And that's where the government there accepted us in and put it on a deserted island
Starting point is 00:04:03 at the time, and we formed a refugee camp there. And then we were waiting to be processed. We got interviewed by all the different countries and the U.S. gave us a refugee settlement because we were tied to the old regime that were supported by the Americans. So we are very, very thankful to get here, the land of opportunity, and we didn't know any English.
Starting point is 00:04:28 We didn't have any penny to our name. We were sponsored by church. The first set of clothing we got was from the donation closet at the church. And so, but we have to build from the ground up. And so that was how I grew up, and that's how I got here. And I'm from this, like, absolutely not just unconventional, but just extremely hard to start. How did you eventually get your interest into the computers, into tech?
Starting point is 00:04:54 Just like most thing in life is by happen sand or luck. I was pretty good in math and science. As most kids in Asia, we were growing up, we learned that. And when we got here, I had a friend in high school who had received a gift from his dad, an IBMPC. That was one of the very first one. The one with like too floppy did. Was it in 80s or 70s?
Starting point is 00:05:19 This was in the 80. This was in 1982. Yeah. So freshman year, so after school, I would. hang out at his place, and he's got a new toy. And so we were, you know, writing little basic program and playing game and all that stuff. And we learned how to use word processors and Lotus and WordStars and all that. And I started coding in basics.
Starting point is 00:05:39 And then I just realized that, oh, it comes very natural to me. I can think very algorithmically. And then there's another weird thing I sometimes tell people. I am generally a procrastinator. I don't like to do the same thing twice. So computer programming is perfect for me. you solve the problem one, that's the creative part.
Starting point is 00:05:57 After I get bored, I got to just start the next problem. And so writing program was like the perfect fit for me. You do not duplicate your code. Yeah, I don't like duplicate the code. I don't like to do the same thing twice. And so, yeah, when you write it
Starting point is 00:06:08 and then it execute way fast and you can do it by hand. So that was really wonderful. I just taught myself that. And then I volunteer at a government agency to write code for them after school. And so I did that. And I went in there and I basically stitched together Lotus, D-Base 3 with all the scripting languages
Starting point is 00:06:25 and automate the entire financial accounting and reduce the workload at the time that two accountant had to spend about three weeks or so every quarter reconciling everything. I did all that stuff with a purchase button and took about three hours for the whole batch to run. And so they were so happy.
Starting point is 00:06:44 When I graduated high school, I think they wrote me a really good recommendation letter and with other things that were going on and the good grades and everything else, I got accepted at MIT. And then I got there and I really learned computer science, like the fundamental computer science. Back then, I was just like a kid who just, you know, write programs.
Starting point is 00:07:04 And then during or after MIT, what was your first professional job where you got paid and you worked full time on technology? Yeah, one thing leads to another. I was, when I was at MIT, there was a multi-year co-op program with some, of the best company, tech company in the world. It had AT&T, Bell Labs,
Starting point is 00:07:27 Xerox Park, HP Labs, and all these companies, Bell Corps, all over the country, actually. And so we apply for it. And then the kids with the best grade got prioritized. Then the company had to go through a selection process. They rang all the kids, and then the kids all ranked the company that they got ranked. And then there was a matching process.
Starting point is 00:07:47 And I end up coming to Hewlett-Packard Laboratories. And AP was on an awesome company. at the time. Back then, there were massive and like very prestigious, right?
Starting point is 00:07:56 Laser printers, you know, workstation, computer systems, all of that stuff. I was in the HP lab, which is the research lab, where a lot of the really
Starting point is 00:08:04 innovative stuff happened. And so it was a dream job. As a student, I get to work on cutting edge research with all the other PhDs around. I get to write the joint thesis for my bachelor's and my master's with the work there.
Starting point is 00:08:19 That was part of the arrangement. And when, I graduated, HP just hired me straight into their research lab. So I became one of the researcher, although I didn't have a PhDs. And after that, there were a few years of that, then I went into the industry and write code that people would actually use. I really enjoy my time at HP Lab because you get to do cutting ads up. We were working on medical informatics at the time,
Starting point is 00:08:43 where right now you go to every doctor's, all your directors are following you. Back then, we actually have a network, the distributed system architecture, where every physician workstation that you go to, right, had your x-ray and everything follow, and then you have, like, knowledge-based that actually look at for drug into action. Oh, we actually did that research back in the mid-late 80s, actually. And so these are cutting ed stuff.
Starting point is 00:09:06 But then the thing that I find unsatisfied, unsatisfactory at the time for me was we published great paper and then didn't go anywhere. It was not productionized. And I'm just like, I want, this is so, cool, why can we bring it to the user? But that wasn't the setup. The setup was research lab, worry about research. And then we would have like a tech fair every year and the general manager of every product division swing by and then decide what they want to pick up and productize.
Starting point is 00:09:34 And so I didn't feel empowering beyond the research phase. So I just had to go find a place where I can write code and you actually use my code. So I want the Silicon Graphics. At the time, where you were also trying to invent the future. And we actually did a a prototype of that. There was interactive TV where back then now we could take for granted a streaming video, video on demand, online game, right? Cooperative game. Back then we didn't have cell phone, internet yet, and we can cobble 4,000 homes together in an 18 trial that has cable. And then we invent like network protocols and all these things and we actually found a set top, which is a tube TV, not even a flat screen TV with a set top box on top, which is a silicon graphics box. And we,
Starting point is 00:10:19 can implement online shopping, a movie on demand. You're building all of these things without having without having any of this infrastructure. Wow. And then celebrity like Michael Jackson came by and saw demos and we saw Spielberg, we saw everybody.
Starting point is 00:10:35 We thought really, really that was the future. And it was the future. The problem was, it's way, we're way ahead of the time. Then I learned a big hard lesson. It's not about just a technology. It's about where the world is ready for it, whether it's economically feasible. And back then, what was the point where you realized, like, this is not going to work, even though we're doing this awesome stuff?
Starting point is 00:10:54 After a year, right? Because it took like $100 million back in 1994 just to provision the head end. Silicon Graphic love it because they sell all these massive server to pump out video. And then the set-top itself is a Silicon Graphics workstation that costs $4,000. Right? People would not buy that, right? Especially like in today's money, that will be like 10, $20,000. Exactly. We couldn't apply that.
Starting point is 00:11:22 The early adopter, enthusiastic, maybe, right? But not for the mass market. And so when we, and we did that trial incredibly successful. We definitely all saw the future. And then we did the same trial, a similar trial with a different set of software that we wrote for NTT, Nippon Telephone Telegraph in Japan. We went to Japan, deploy that. Very cool.
Starting point is 00:11:42 Had a really great time. But then it fizzled out because it would not be commercially viable. And so that was a really first. life lesson that I learned is not just a technology, right? You've got to be at right place at the right time and the right price point. And then after that, I went to a startup, founded by a former office mate at SGI. So we were doing internet advertising. The internet was about to take off. Then Mosaic browser search came out. Nescape was being formed and in the early days of Nescape. And so we saw very clearly that the advertising model worked for TV.
Starting point is 00:12:18 So it has to work for the internet, right? Because all these content, people would use it if it's free, but then who has to pay for it, the advertising? So I joined a company initially, we call ourselves Netvertiser, which is like, you know, bear up. And then it changed its name quickly to NetGravity. And then it's so enterprise software to put ad banners, dynamic ad banners, on CNN, on Netscape site and all that.
Starting point is 00:12:42 I was one of the very early engineer there with a fourth engineer, I believe. Yeah. And so people don't know this, a buddy of mine, we were the first pair of engineer to put the first dynamically targeted ad on the, on the Yahoo page. And dynamically targeted, meaning that it showed different ads based on the IP or like, whatever.
Starting point is 00:13:02 Yeah, the version before I came in was a script that crawled through and just put a static banner ad and rotated through every hour. But then we got to target it. And then we started using cookie. At first it was a content of the page and the person, and then we actually use that
Starting point is 00:13:16 to actually target different ad. And then we have ad sequence and all that stuff. And that was the very first one, of course. We had some success there. That company went public. But another thing that I learned was sometimes you've got to seize the market, right? There's a company that formed right much later than us, but did an ad service bureau. And that took off because it takes a lot less investment for people to, you just stick a banner, a tag on your HTML page and then revenues come your way.
Starting point is 00:13:46 because the service bureau to kind of stick the ad dynamically or all that kind of stuff. We had wanted to do that in our company. But then one of our board members said, no, you should focus and get to profit first before you expand. And we went down to profitability path
Starting point is 00:14:01 and we then becomes like, you know, a bigger robust enterprise solution whereas the other one is, and try to get profitable. And the other one is just expand through the internet, like raging Wi-Fi. Then after that, years later,
Starting point is 00:14:15 then got bought by Google. So that was the journey there. There's a lot of lesson there about how to build things. So this was, do I understand that you saw that what happens when there's a big market and you focus on profitability, which should make sense. But a player focuses on growth. Even at being non-profitable, it might be able to swallow you in the end. That's right. Look at what happened to at Uber, right?
Starting point is 00:14:36 We did the right move. I'm starting to see how these things are coming together. So now you're at the startup, which almost took off, but not quite. And what was your next stuff? That company went public and then got absorbed. And after about seven years there, I had made it to the VP level. I joined as an IC along the way. I knew that for my inspiration at the Silicon Graphics Day,
Starting point is 00:15:01 that if you want to do something really big, you need to leverage other people. You can't do it with your bare two hands. So then I switch over to the management track and I honed the skill. And I got up to directors and senior directors and then ultimately got the VP. and then after about eight years, seven years, eight years, you're there. The dot-com bust happened right at the drive of that time. And then I said, well, maybe it's time to prove to myself whether or not I'm just a one-hit wonder or I actually have skill that are transferable.
Starting point is 00:15:29 Just one thing on the dot-com bus, because you kind of swept over it, because you've now seen a lot of ups and downs. But can you take us a little bit back? What actually happened with dot-combus? Because the people I talked to, especially who were new grads, it sounded very, very scary. What did you feel like and what did people, professionals, engineers, all around you feel like? The dot-com bus was kind of scary when the correction happened, right?
Starting point is 00:15:51 But before that, there was this exuberance that everything is dot com, right? Pest.com, fulbawd.com, everything is the dot com. Web ban. Yeah, all of that. So I actually have the web van bin in my garage sheds, actually. And so, yeah, but then there was a shakeout. Eventually, there has to be sound business model that makes sustain profit, right? growth and profit. Growth alone, eventually burn, you know, money and that's not good. You can grow
Starting point is 00:16:17 fast, but eventually you have to turn that into profit to be a durable company. And so in that dot-com wave, there were massive companies that emerged, right? There was Yahoo, there's Google, there's Amazon, all of those companies. There's also a bunch of other company, Webvan and others, whatever that would go under because they didn't have like a strong value proposition that last the test of time, right? So, yeah, it's all about what value you deliver and whether or not it's beneficial and valuable to the customer that they're willing to pay, right?
Starting point is 00:16:50 And I think that's one thing that we learned, which one is like a real fundamental, strong business, even though it might not be a profit initially, but which one that's just a me too, right? Just put a dot-com on something and it's hot. There may be a lot of dot-a-I things that's going on right now, right? Eventually, some of these things will consolidate, Some will go under.
Starting point is 00:17:08 Some will become really awesome solutions and all that stuff. But the market will sort it out. In the end, the customer will vote on what they want to spend the money on. Speaking of building things that last versus things that don't, one thing that always separates it to is cold quality. And that's what our season sponsor, Sonar, is all about. Sonar, the makers of Sonar Cube, is deeply rooted in the core belief that cold quality and code security are inherently linked.
Starting point is 00:17:34 High quality code is naturally more resilient and as agents start to write code at a massive scale, that verification layer becomes your most important security perimeter. This is where solutions like Sonar Cube Advanced Security are valuable. With this new malicious package detection, advanced security provides a real-time circuit breaker, automatically stopping agents from pulling in unverified or risky third-party libraries before they ever hit your pipeline.
Starting point is 00:17:58 The impact is measurable too. Developers who verify their code with Sonar are 44% less likely to report experimenting outages due to AI as per Sonar states of code developer survey 2026 report. It's really about closing the gap between the speed of AI and the reality of production security. What else is Sonar doing to help reduce outages, improve security, and lower risks associated with AI and agenda coding?
Starting point is 00:18:21 Head to sonarsource.com slash pragmatic to find out. With this, let's get back on what's won it after the dot-com boom and bust. And there was a lot of layoffs companies going bankrupt. Did that worry people around you? Did that worry you that your job could be in danger or you might have a harder time switching jobs? Or did you not? Was it a very short-lived? It lasted a couple years.
Starting point is 00:18:43 I remember. And during that time, it was definitely hard to get a job, especially for new college grad. That's always the first layer that get hit, right? When everything retrenched, people want more experienced people, people want to stress existing folks rather than keep on, you know, hiring entry levels. that you have to, you know, continue to invest in, right? So it starts a economy of time. It comes and go and wave.
Starting point is 00:19:08 Yeah, so that's always certainly a very scary time. But of course, you know, in the longer range of history, things generally tend to recover, but it caused a rearrangement. And yeah, so during that time, it was certainly tough. However, the way I look at this thing is that talents are always talent, right? So people are really strong talents and who's really hungry is always, try to punch above their weight will always be marketable, right?
Starting point is 00:19:37 Even in a downturn. Even in a downturn. Right. So I think the key thing is how people should, even in peacetime, invest in that skill, never be complacent, constantly try to be better.
Starting point is 00:19:49 And then in wartime or in rough time, those things will save you, right? If people just need very complacent, atrophy with the time, and then when rough time hit, it's very, very hard to recover from that. And then you went to VMware for this time. Yeah, so let's see, after I went from Double Click to that,
Starting point is 00:20:09 and then I jump into a four-person company, again, licky roof and everything, classic startup. That business did not succeed. It took about three years or so, got to about 40, 50 people in size, and then kind of ran out of money and then got acquired by another entity. That was built with a security appliance product, which private would solve the problem of, you know, intimidation of web services, traffic that are going through.
Starting point is 00:20:32 And it was a very interesting security niche, but it's not a mass market thing. And so it's hard for a company to kind of break through like that, right? And, but eventually it went away. But even then, you know, those three years taught me a lot because you can survive, even when you do it from the ground up, then you still have skill that you can pick up, despite the fact that that journey might not end in like a commercial success, but your skills still get better. So you are getting better as a professional, even though the company failed.
Starting point is 00:21:05 And that's something we have to trust. We invest in ourselves, but of course we invest in the company or vehicle that we are part of. And ideal case, both sides succeed. But if the other than succeed, at least if you work really hard, you gain some skill. And then based on that, then you can then leverage all the things that you learn. So fine, all the mistakes that you've made, all you got you smarter and better and wiser, to look for the next office. So right after that, I look at a bunch of other things when that company was acquired.
Starting point is 00:21:32 then I went into VMware. Again, when the VMware was a pretty small, not very well known yet. So it was a 40-person organization and so that built software to stitch together. So VMware was still early. VMware was still early. Yeah.
Starting point is 00:21:49 There was three division. One division that did the Workstation desktop app. And then there was the division that does the hypervisor, which is the OS underneath OS. And then there was my division that was building enterprise software that stitched together all of the hypervisor into like a cloud platform, a management platform, right? So I was in one for that. There was 40 people and we kind of build the very first product suite of VMware. We're called
Starting point is 00:22:17 Virtual Center that ties to ESX. So that was a really, really fun, right? That very smart people. And then VMware really took off. So virtualization as a whole took off in the early 2000s. VMware was core part of it. It was one of the the main thing. So it was just a kind of hockey stick-ish experience? It was. Not to the extreme of Uber, but it certainly was because it was a industry-changing technology. It was a game changer, right? Before that, there was anything like that. At first, people thought, oh, this is a kind of interesting tool on the desktop for you to run a couple of Mac and PCOS on top on a PC. But the true power was the ESX, right?
Starting point is 00:23:04 Yeah, and then that's what you power data center. And then, of course, that's the hypervisor, but I think the key feature that made VMware so useful was the whole V-motion thing. When you take a virtual machine and you can migrate it from hardware to hardware without any perceivable downtime of the application around the top, with that capability, unlock the whole cloud thing, right? Because you have a thousand machine, it can look like one. It can look like a machine.
Starting point is 00:23:28 And so application inside your machine will just scale. and it would just move itself and it can do whatever you need to do. Right? You can do DR, you can do, you know, yeah, all kinds of things with it. Right. So that actually make it very much like a cloud operating system. And then at VMware, we also grew with the company, right? So, again, it seems you have this history of you were VP of engineering at the startup,
Starting point is 00:23:51 you step down to a small startup. You then joined VMware. And eventually you became BP by Engineering at VMware was a lot, right? Yeah, yeah. I have this weird thing where when I get, when the thing get large and I start to feel too comfortable, I get nervous. Really? Yeah. And so that's where I double click, when I got to VP and I managed hundreds of people,
Starting point is 00:24:10 I was like, is this a fluke or is it real? So I had to go back to a four-person company and try to see if it's real or not. That didn't succeed really well, but the energy name was healthy. It was good. And then when it went to VMware, again, it's a smaller company and it go big. And when it get really big again, when you get to a point where you're just running things rather than breaking ground and doing this thing or do your whole not learning, then you got to do something different. So I keep on going back small, and when it get big, I might go back small again.
Starting point is 00:24:35 Yeah, so I'm seeing the pattern. So you got big at VMware, and we were doing amazing. What made you look around and how did you find this very small company at the time called Uber or it might have been Uber Cab. I'm not even sure how it was called. It was Uber at the time already. It was way before that.
Starting point is 00:24:52 Yeah. Yeah, it was when after eight years of VMware, and sometimes people changed, sometimes company, change. Sometimes both sides change. And so, yeah, for me, what changed personally for me was I reached to a point where I didn't feel I could do much more there, right? I'm running 800% engineering team. We're building this software and it's been like the third generation of that software already. We're tweaking. We're adding more feature to it. I love my team and all that. But, you know,
Starting point is 00:25:22 it's just more of like keep it steady, keep it growing and add more feature. And then the company has also change along the way. The original founder left. New crew came in and there's a fair amount of changes and personalities and all that. And after a while, it just felt like it's time. So now with your background, like you now have a super impressive background, you probably could have gone anywhere a larger or small. What was your search process look like? And then how did you come across it? Again, because Uber was still pretty obscure. Yeah. Here's a really interesting thing. People do ask me about what the search process looked like. How did you sit together a career like that? My honest answer is I didn't do any of that.
Starting point is 00:26:02 And it wasn't luck that you bumble around and you find one thing after another. It's actually something different. If you try to do a really good job at every company you've been working well with all the people that you work with, including your own team, your peer, whatever it is, over time very slowly, you accumulate a decent reputation in people's mind. And people always come and go throughout the. the industry. But if you're good with them, to them, whatever, they tend to remember that. And then when you become available, then people come to you.
Starting point is 00:26:38 Yeah. About this? How about this? How about that? So, this. And then you actually look at all the those things. And then you can dig in and you can decide. And so that played out multiple time for me in the valley. And especially, I think the biggest breakthrough was Uber. Again, when I left VMware, I didn't plan to do anything, right? I'm saying, well, let's sit back and take a look to what's going on. And then, uh, Bill Gurley from Benchmark Capital who invest in early investor in Uber. And guess what?
Starting point is 00:27:06 His tie was, he knew me from that net gravity startup a decade before. And so we kind of knew each other. And then, of course, when we know someone, you follow their reputation. And it was Bill who come to me after he knew that I'm living VMware, hey, can you take a look at this one? I'm investing. It could be really interesting. So I went up to his office in Sand Hill.
Starting point is 00:27:28 and he shared with me the board deck and how the company is growing. And then I understood the business model, right? To all of you back then, when I was trying to recruit some people, it was like, why, don't know why you joining a taxi company, right? Yep, I remember everyone's asking me as well as I joined.
Starting point is 00:27:44 Exactly. And so, but I knew that. And of course, then we have to go to like a pretty rigorous interview process with Travis. And, yeah, but ultimately it's about the connection. that leads you the right thing, but that connection and the opportunity basically tied to your
Starting point is 00:28:03 reputation. And then back then, as I looked it up and you also helped you with this, Uber just raised a series B, which was $30 million, it was worth worth, is a $300 million, which was sizable, but still not nearly the gigantic company that later became. And one fun fact that I read about is you had this very rigorous interview, Travis Ruff Process, which was tens of hours or something. Can you talk about how that went? It was impressive that he did that. It was he committed over 30 hours interviewing me one-on-one. Wow.
Starting point is 00:28:39 Yeah. It was like several days of like long. It was two weeks worth of interviewing every single day, a couple hours each day, minimum. Yeah, with passion, with intrigue. And we end up after why I kind of forgot that I was being interviewed. It was like two people kind of sharing ideas, like changing idea. and sometimes disagree something and then kind of work it out. And then you showed me, you took a photo of like some topics that you talked about.
Starting point is 00:29:03 Can you like summarize what those were? Yeah. My very first meeting, I drove up to San Francisco and saw Travis in the office. And we immediately went to the whiteboard and he wrote down all the topic on his head that, you know, he want to talk about with me. That was a really long list. There's a big long list of general topics about, you know, hiring and firing and communications and all of that. It's the org design, everything else. And then there's a shorter list of very engineering-specific stuff.
Starting point is 00:29:33 What about quote quality? What about QA? What about design? All that. And then there is also a list of shorter list of the five things that he want to see in an engineering team and the culture of an engine team. And yeah, and so that was the list. And so after we wrote the list, we started talking, picking up some item off the list and
Starting point is 00:29:54 top, of course, you know, in two hours. I was supposed to meet him for an hour. It lasts two, which is actually good, because we got totally into it. Time ran out. And then as soon as I drove out of the office, I barely get to the exit. I got a call from the executive recruiter say, Go on Travis, we want to see you again and talk to some more. And so we did that.
Starting point is 00:30:14 And, of course, he's very busy. He's traveling around all the regional offices to run the business. And so we set up a Skype session every single day for two hours each day. and we will pick one of the topic. That's why I took a picture, a photo of that whiteboard, and he did the same thing as a list of topic to talk about. And I still have it on my phone today. It's so impressive to be that because we'll share that list in this episode as well,
Starting point is 00:30:40 that screenshot, but that the fact that the CEO would go into things like code review. It's the hiring topics I understand, but that he was so injuring-minded. Did you get a sense that he had the vision that technology and engineering will be just key to Uber? Oh, absolutely. I mean, he knew that. It was very clear from the very beginning that he's view the business has two major engine that powers it. One is the operation, you know, bits and atom, right? You've got to have real physical thing moving around the world. And then there's technology. And technology is a key part of that, right? No one side is superior to the other, but it's required both of those. Yeah. And so that was very key. And I think he also
Starting point is 00:31:25 knew what he wants also and what he wanted in whoever it is. And so I think this list and this serious conversation was for him to vest that. Yeah, later on, I think either he said something or I figured it out that it was actually a simulation of what is like to work with another person in that capacity. In the end, when we're inside, we're all working with each other all the time and can we disagree on something? Can we work things out? Do we have generally similar philosophy and principle? And he did himself.
Starting point is 00:32:02 Yeah. And so, yeah. And the level of passion and commitment he showed was just really impressive from this side. I can tell you, for example, there's some session when we totally, you know, in the middle of that and two hours gone by, and he had to, like, stop and catch a flight to go somewhere else. he literally stopped and told me just wait, and he picked up his phone, call his EA,
Starting point is 00:32:27 and say, can you move my flight? And continue the conversation. Who has that level of commitment, right? And passion and stuff like that. And when you see that, it actually draws you in. Yeah.
Starting point is 00:32:37 So I guess there was not a question that you joined. But can you recall what was it like from the inside of special from an engineering point of view, from a system's point of view, from like what was going on? So it was still pretty small. It was about 30,000,
Starting point is 00:32:51 a day when I pulled the data, the weekend, which is always the busiest time when people move around. Yeah, that weekend, the day, the Saturday or Sunday before I joined, I joined on Monday, was about 30,000 rides a day. And Uber was, I don't know, 20-something cities around the world at that point, 2030. And sort of was very modest. There are certain things that were going for it already. The engineering team was very young, but pretty scrappy and pretty committed and talented. where whatever we need to get done by hooker by group, they'll cobbled together, right?
Starting point is 00:33:25 And so, and as a result, though, the service was beautiful. Anybody who ride, we only had black car service at the time, but the experience was beautiful when for all the people who ride it. That's why word of mouth is, you know, raging around.
Starting point is 00:33:38 And, yeah, and so that was the really good part. Now, the thing that maybe Travis had foreseen, whatever it is, was the next phase, which, as the company grow faster and faster, what happened, right? And by the way, the 40 engineer were very, very young, I think in the 20s, all of them in. And the system was built not to scale, right?
Starting point is 00:34:03 It would build for functionality. It's actually made it work. Yeah, and it worked and it worked beautifully, right? But it wouldn't scale and it would crash and burn all the time, multiple times a week. And that was our lives in the trenches. The hockey stick actually happened. Yeah, everything breaks. and we have to basically race against time
Starting point is 00:34:22 to actually figure out what is the next most critical thing that would break and how to get ahead of it. And one of the things that Travis always tell me, even from the interview days, is you've got to see a round corner. So I try my very best to see a round corner. And one of the first thing I did in the first couple weeks were beyond getting the,
Starting point is 00:34:41 you begin to know the engineer and build relationship and build trust, was to start examine what we currently have and what we need. and dispatch was the first thing. Without dispatch, there's nothing, right? That's where you match the riders and drivers. Yeah, it's our matching service, right? When it has the drivers, the riders, and it doesn't match. That's right.
Starting point is 00:34:59 And without that, there's no business, right? There's no reason. There's nothing. And so, yeah, and I start, that was the first system I looked at. And I asked some, I reviewed the architectures, I reviewed the implementation plan, and it was very obvious that it wasn't going to scale.
Starting point is 00:35:14 It was a JavaScript, it's not no JS, and it was a single-threaded thing. And the engineer at the time where when the city get larger and larger, they need more out of that piece of code to power that city, they would move that piece of code into a larger machine
Starting point is 00:35:31 with a faster processor. Vertical skilling only gets you access so far. So my role also to do things, but also to teach people along the way. And so I would just ask leading question to the team. And the team only have three people, three or four people at a time.
Starting point is 00:35:46 And so I asked the engineer, here, okay, what would happen if the city get larger and you have to support that? Because every city is getting larger. The right volume is getting larger and larger. Then the energy base said, oh, yeah, we just move it to a more powerful processor and say, what happened if you get to the fastest process you can? Oh, there are multiprocessors and then you can get a four-way box and then you can put multiple of these processes on them.
Starting point is 00:36:11 And then you say, well, you got three or four of these things, servicing the same city. Do they talk to each other? Do they share the same state? Not really, right? So it'll become a partition. So pretty simply by asking those leading questions, the engineering now discovered a flaw that this thing would not scale, right? And then I had to establish the limit of where is the brick wall.
Starting point is 00:36:30 And I basically started what's the biggest city that we currently have in terms of the right volume? And they say New York City. And it's okay. When is New York City, we can run our capacity, even handle New York City, even on the biggest box that we can get our hands on, it's about October. and it was around May.
Starting point is 00:36:48 Okay? And so it's like, well, we have to rewrite it, don't we? And we have to write it in a really scale of a way. And I only have two requirements that all I need.
Starting point is 00:36:57 One is a city has to be powered by multiple boxes. Yes. And a box has to power multiple cities. That's it. So you can have n by M. You gave them these two constraints.
Starting point is 00:37:08 No new feature necessary. Just make sure we can do that. And then that allows the business, the company, to just pour a whole bunch of hardware behind that. And it will scale. Technically, it will scale infinitely, right? And so the engineer did that. And because the requirement is very simple, we have to do it really, really quickly before we run out
Starting point is 00:37:26 of time, run out of runway, not to survive. And so they did that. And we actually deployed that right around August, September, right before it's actually. And then on to the next problem, database is going to be the next choke point, right? And then the API monolith is going to be the next choke point. And we keep on identifying all these things. So there's all these threat coming at us. and we have to establish, like, how much runway we have until we, like, really getting serious start. There's no way out and then get ahead of it. And so this was been the reason that we had so many rewrites.
Starting point is 00:37:55 I joined later, but rewrites were still continuously happening. And I think when you come in, you ask, like, why could they not written it properly the first time? Or like, but I guess do I understand correctly that it was because, A, sometimes you just build a system to solve your problem. And, and B, you don't always know how big this will steal a good example is the New York problem, and then you take those constraints and then you build a system. And then if those things change later, you might need to build a different system. Yeah. It also depends on how fast you're growing. That dictates how you make.
Starting point is 00:38:30 Because the faster you grow, the shorter runway you have to survive, right, given whatever architecture and system that you currently have. And yeah, the question about how big can possibly grow, nobody knows, really. But it's actually not fruitful to pontificate on that. It was all about how much time we have to live. Right? We hit the brick wall and it's no way out, right? So, yeah, and if that time is really short, then don't overthink it. Just survive that and give yourself enough runway to then live to fight another day, is what I like to say.
Starting point is 00:39:04 Growing fast like Uber did is a good problem to have for startups until it's not. And the pain points that come with fast growth is a good time to mention our season sponsor, WorkOS. If you're building any SaaS, especially an AI product, surprisingly, you reach the need to build enterprise features like Samaledge cases, directory sync, audit logs, and all the things enterprise customers expect quickly. Building that infrastructure yourself takes months. WorkOS gives you APIs to ship it in days, authentication, SSO, SCIM, RBAC, audit logs, and more, all designed to integrate directly into your product. That's why companies like Entrophic, OpenAI and cursor already run on WorkOS. Skip the rebuild, keep shipping. Visit Workerwas.com.
Starting point is 00:39:47 With this, let's get back to Twan's team rewriting the dispatch system and the short breeding space that this first rewrite gave them. So that's what with dispatch, we knew we had to do it very quickly, maybe buy ourselves another 12 months. And after we get through that point,
Starting point is 00:40:02 then we have another 12 months to think about the next phase of survival for that team. That's why the system needs to be rewritten several times. Let's say if my requirement for the engineer was build a system that would scale infinitely
Starting point is 00:40:13 later, that's a time. It might take a year. We never get there. We'll die before then. Speaking of dying before, you were given in 2014, a seemingly impossible task. Travis told you you have two months to launch in China. And apparently launching in China was not as simple as just like opening your API and allowing the firewall. What was that project? Like I heard it was an absolutely manic and crazy. Can you take us back what it was like? Yeah, that was one of the craziest thing we've ever done, but it's also one of the most. amazing thing we've ever done. And now explain why that is so. So I remember very, very clearly, right around Christmas time, 2014, we were all hanging out in the big room in 2015. And Travis made
Starting point is 00:41:01 a declaration that, okay, come the new year, I'm going to light it up and we're going to go into China. Okay. And then it turned over to me. It's like, I want, I want that. And one of the, and one the requirement at time was that we have to run our services on China soil, right? And data center physically there. Physical data center needs to be there. Until then we kind of dabble into the water by powering it from the U.S. Okay. And we have a limited time to do that, but he's going to light it up.
Starting point is 00:41:30 I'm going to do that. And he's like, two months. And I said, well, that's really tough. And he said, why is that? Because I can go rack all the machine and copy the software over. It didn't take more than two months. And then I have to like explain that it's not that easy because when you do that, then it works on day one and then the two drifts and then how are you going to maintain that,
Starting point is 00:41:49 right? We don't have twice the engineering team to actually manage two different systems that deviate. So the right way to do that is you build re-architects, whatever you need to do to kind of build one system that can be partitioned, right? So I think there's a huge security concern, right, because there are anything that runs over there cannot resume to have any level of privacies or anything like that. But over here, we have to protect everything, right? So we have to build that same system that has completed partition of data and controls and everything else.
Starting point is 00:42:18 So that, yeah, nothing bleed across. But it has to be, every time you deploy code, you have to record everywhere, right? So you have to rebuild a lot of things. And so I went to the TPM team and asked the team to actually scope it out. And I think the TPM technical program manager. And I think the best path for us was about six. months. And that was the faster we can even imagine, right? I benchmarked with a few of my friends in industry and they kind of laugh at me. And it's like 18 months minimum 30. But, you know, that was
Starting point is 00:42:50 Uber. So we just like, we didn't think too much about it. It was like, well, let's do that. And then drive it in like the six months. So we kind of settled around four months. Right. So and so we just split the difference. We didn't know anything. But, you know, we just want to head down and start getting to it. And so we look at all what need to change given like this the goal and the requirement. And then with everybody start getting really busy, working a lot of hours to stop making these changes. And four months come,
Starting point is 00:43:18 and we are still a month or so short. So we slip. They went to Travis, and he's not too happy about that, but it's fine. And then five months comes around, and we're very close, but we're not there. We're about to slip again. And so it was definitely not happy then.
Starting point is 00:43:34 But we actually talked it out. And I said the team feel very confident that within a month we can launch. But he had to give us something. That means give us an ability to incrementally launch. Instead of lighting all the city in China Opera once, let us do it in phase, right? Every single week we'll launch a number of cities. And then we're going to do it in the process of a few weeks, and then we're done with that. And he said, okay, that's reasonable.
Starting point is 00:44:03 But he won the biggest city first, and that's Changdu. So he agrees to the incremental launch, but you need to start with the biggest city. Start with the biggest part. That's so Travis, no. Yeah, exactly. But it is brilliant, though. Now do you think about it?
Starting point is 00:44:18 I thought a lot about that over time, and that was the most brilliant thing because by doing the hardest thing first, once you launch that, everything else is downhill from there. The team had this swag, the team know, would go into the next set of city with confidence.
Starting point is 00:44:34 Had we done the traditional way, let's start with the safest one, the smallest one first, the next one we step it up. On the surface, it seemed like, oh, it's a very good risk control measure, but every single week we'll be holding our breath. Until it's done, it's not done, right? But this time, we did everything we can
Starting point is 00:44:50 to do the hardest thing first, and after that, it's just the routine process, the raw, the rest, and that it worked out exactly like that. And so, yeah, we got it done. And a bunch of people were really burnt, and then they take, like, a month off, go to the beach, and did nothing except tear at the water.
Starting point is 00:45:05 I know some of the energy did that. But after that, though, we're not fearful of anything. We did that kind of the impossible. I talked with a friend at Rupert who worked at the IT team at the time, and his job was just to get the servers physically set up. And he said that the timeline was so impossible. I think they had two weeks from start to finish. They had a little bit of time to plan, but they were on the side.
Starting point is 00:45:30 And when I gathered stories from the software engineers who worked on, everyone had their own impossible task. project and they all thought it couldn't not be done. And then somehow it all came together. That's right. None of us thought the whole thing that could be done, but we just got our head done and we just break it apart and just do it one step at a time. And then I think needless to say, but the China launch was a massive success. Uber started to compete head-on-head with the leading Chinese provider, DD, and there was pretty much head-on-head variantist competition all the while competing with the rest of the world as well. That's right. Yeah. Yeah. So that was something
Starting point is 00:46:06 That was something incredible. And I think just the experience having gone through that and doing things that initially you didn't think was possible just increases everyone's confidence and range. And that's what's stretching all about. And I think that there's a saying that Travis like to say that sometimes you have to be willing to redline yourself a little bit, right? And that's how you prove that you can actually do a lot more than you can. That was the fearlessness of the, and the risk-taking culture that he won in the company in the first place. One thing that Uber has been very, very well known about from the outside is microservices. And from the inside, one thing that has been very talked about
Starting point is 00:46:41 is a program and platform split. Can you tell us which one came first? And how do we get to as many microservices as we did? The program and platform came first. Yeah, and microservices came later. And the platform and program platform as an organization structure came first out of necessity. When I came in April of 2013, we had 40 engineer and three product manager. By the end of that year, we had about 100 engineer and a dozen or so product manager. Even at that really small size, we ground ourselves to a whole with a functional org structure. Imagine those hundred engineers, they're about up to eight or ten mobile developers, a number of infrastructure engineer and a bunch of a backend engineer, et cetera, et cetera,
Starting point is 00:47:31 and five, eight people or so at dispatch now. But every feature that we want to put had to be queued up on mobile development bandwidth, dispatch bandwidth, and it become impossible to navigate tradeoff because every feature you want to do, you have to go negotiate with so many teams, right? And so then the team wanted to move fast and start to feel that friction and complain right away. And that's a good thing, right? You know, we raise the concern. And so I remember Travis and Jeff Holden and I saw that and we got together for a couple days, actually. And I remember
Starting point is 00:48:06 we had sticky note all the different colors. Each color represent a different function, engineering, product, designer, and we put one person name to each of the sticky note. And then Travis gave a talk about what are the most
Starting point is 00:48:24 important area of the business that he thinks, right? And at a time, there were like 17 area that he can think of. The world of Uber can cover the 17 area. It turned out to be a lot more than that, but at the time it was 17. We didn't have enough to fund 17. We had enough to fund seven plus a few more, right?
Starting point is 00:48:42 So we fund seven with partially the next four. And that's it. And the rest can remain empty until we hide more people and we fund it. And so that was the thing. But then as part of that process, we then put sticky note onto each of these areas have to be a cross-functional team because we can no longer afford to run in,
Starting point is 00:49:02 no, yeah, cross-functioning rather than a functional team. Yeah, which means that there's like a and the mobile and whatever else they need, like a design if they need to, etc. Exactly. The concept is that team has to have all the skillset necessary to just take care of this.
Starting point is 00:49:15 Whatever they need to do, they just go off and they do that. Right. So that was the principle behind that decision. And then we call some of those programs and some of the platforms. So programs are the team that build things that the end user actually use. And the platform are the thing that build tools and layer that other program
Starting point is 00:49:33 team used. And that was it sort of horizontal versus vertical. kind of thing. So, and that's that. And then after we define that, then we start putting the right thicky note onto that box. And then that's how the first version of program platform came about. And then how did microservices start and how did they blossom as much as they did? Yeah. Again, you know, none of us wanted to go through that extreme, but lots of time when you are under a lot of pressure and no time to react other than to survive, that scale that keep on coming at you, you have to make a decision that increase speed and velocity.
Starting point is 00:50:09 Because speed and velocity allow us to build things quick enough to survive. And so we knew right away that the backend API, which is a monolith, right, is the thing that will prevent speed from happening. So we made a declaration, anything that is new need to be built outside of that as a microservice. And then there's a team that's dedicated to decompose that, that monolith, that API monolith into a bunch of services. Yeah, we used to call it API, right? I think that was a name.
Starting point is 00:50:37 Exactly. We called the API, right? And I think that project name is called Darwin. Yes, Darwin. Oh, I remember. Yeah. And interestingly, had we freeze time, that piece of code could be decomposed in a matter of three to six months. But it took us two years to do that.
Starting point is 00:50:54 Because as we peel out a piece of code, the business keep on going forward, right? These hockey sticks are laying on top of each other now as we launched new city. and happening fast. New city and the new product, Uber-X. Feature has to be added on. Right. And so the philosophy we all operated at times
Starting point is 00:51:09 was no one should be blocking anybody else. No one can block anybody else. And so when a team that needs to be a feature and that thing hasn't been pulled out of a monolith, they ask to the monolith. Right. And then the team that pulls it out do the best that it can.
Starting point is 00:51:22 And then we're kind of chasing our own tail until eventually, you know, something gets completely pulled out. And as it happened, it bulges up like this, the monolith. Right. If you pull out one thing, the remaining stuff grew even fast than the stuff that you put out.
Starting point is 00:51:37 So the code base gets larger and larger eventually reach to a certain point when it started to come down. And that's why it took two years. And meanwhile, everything that is new must be on it because we don't keep on adding stuff, right, to the monolith. And so that's how it came up to like thousands of microservices. But that was utter necessity so that we can just fan out and solve every problem all at once. And then over time, after things stabilized, and so the business, is more mature and growth is not as violent like that anymore.
Starting point is 00:52:06 Then the team, we actually have a project called Arc. We're going to look at this stuff and how do we clean it all up. So we put like domain interfaces on top a whole bunch of microservices that are within the same domain. It's funny because I remember that around like 2016 or so, there was a published Uber Blockbowls that Uber had about 5,000 microservices. And I just saw about a few months ago Uber published another one and they have about 4,500. 100. So in that 10 years, the number has gone slowly down, right? It should go down. But even then, we put to the way on Uber has a lot of it.
Starting point is 00:52:38 Yeah, that's right. Yeah. It's so interesting. There are process that took a little while. But yeah, the team have to look at everything and how do we simplify that, right? And then to make sense out of that, new tool has to be invented by us. Gager, the tracing tool, all of that stuff. And so that would be really great tool that we open source. And let's talk about how and why Uber built so much internal tools and also open source a bunch of them. And Yeager was one of them, but internally we had schema less, a trip data store, T-channel, RPC protocol, Ringpop, Gell Spat, Spacial Placing, Clay, service framework,
Starting point is 00:53:11 you monitor, observability. And there's like hundreds of others, some of them open, some of them not. How were you thinking about that? Like, does it not seem like a lot of waste for us to build this, or was it again necessity? It was mostly necessity. I can't claim that every single one of those things were absolutely necessary, but all the important ones were absolutely necessary. The thing is when I started, Uber used pretty much all the open source stuff.
Starting point is 00:53:35 We use Redis, we use everything, right? Because the engineer there just focused on putting together a service that actually move cars. But then as we scale, we keep on pushing the boundaries of the capability of those open source stuff and to the breaking point. And at a certain point, if we don't invent something, the power our own need, by the way, this is 2013. 14, 15, 16, it's not as mature as it is right now. We did not have the kind of the big tech investment in open source back then. That's right.
Starting point is 00:54:07 There was very little. And most of the big teams like Google and Facebook, they were keeping their things inside. I remember, like, for example, a very painful example of that we had to face early on was we used Postgres, all right? And we got to a certain scale that Postgres would randomly fail and that take our services down randomly randomly.
Starting point is 00:54:28 We don't understand. It's inside the kernel. I remember the time where I had to go on LinkedIn begging people who anybody on LinkedIn that has any knowledge of Postgres to be our consultant to help us diagnose this problem. And we spent several weeks. And during that, it was terrifying.
Starting point is 00:54:45 Because I don't mind if we think we can do something about our own problem. It's terrifying when we have a major problem and we depend on somebody else. And we don't know because it's open sort. There's no single person or some single company. I'd be willing to pay anything if someone can give me an answer, but there was no one.
Starting point is 00:55:00 Right. And so that was one of the motivator to kind of build our own, you know, data layers and all of that stuff as well, so that we would use this generic database and we end up using MySQL, just as table data store. All the logic on top we have to build for our own use, right? Because then we control our own destiny. And we only built the feature that we really need, right? And so that was one of many examples. And eventually, we run into other brick wall.
Starting point is 00:55:28 scaling. I remember in 2015, right around the holiday, I was taking a holiday trip and I go to the airport. And I took an Uber ride as usual. The receipt didn't come for two days after that, right? Why is that? Things were queuing up. We weren't processing things enough, right? And so, yeah, but that's not a deal breaker for maybe people because they just ride and the receipt come later. That's fine as long as the building and all the stuff. Even when you build people late, they don't really mind that either, right? But as long as the ride happened, the rest of the stuff can be processed later, but it's still not great. When I dug into it, like our data processing capability is at capacity, right? So we have to rewrite a bunch of stuff. And then our capability
Starting point is 00:56:11 to monitor things is reaching a breaking point with the open source tool that we use. So the M3 has to be invented, right? And all of that stuff. So we, we have to do a thing because we at the scale where we broke all the open source stuff that we use. At Uber, we did unusual things. One of the most unusual projects, which is where you and I met when I joined Uber, was internally called Helix. It was completely writing Uber's app. And as I understand what happened is Uber's user experience was starting to degrade because it was really cluttered. Travis got a bit fed up with it. The designer team came up with a solution, which was a very nice and clean UI, which kind of the engineering team looked at it and a little bit of full rewrite.
Starting point is 00:56:49 And then we just did a full rewrite. Back then, I remember we had a million or two million lines of code. We had two or 300 mobile engineers working on this. This was a massive business, and there was an extremely tight deadline set. Can you take us back on? Why did we even do this? Because it didn't feel, it felt existential threat from the inside, but it was not like a Google Plus versus Facebook existential thing. And how did we decide on that short deadline? Yeah, it seemed like a recurrent theme that keep on coming up was a tight deadline, right? Everything we do had a tight deadline. It's just, yeah, it's just, that's just how the culture roll. Anything we want to do, we want to do as fast as we can. But going back to Y Helix, actually, Travis has a vision, right?
Starting point is 00:57:37 And it's actually not just a designer, Travis and Yuki, you know, as a lead designer at a time, they pair up and all these storyboard and everything else. And he has a vision where the current app back then was too limiting. Yeah, it's really good, puts a button, get a ride, all that stuff. But if you want more services to hook in other things, right? Messaging and all these other things as people were riding, the new architecture was much more open, right, to all those things. And so that was the division behind that. And then when we're doing that, the aesthetic is really important.
Starting point is 00:58:10 The icon change and all of this things change. Oh, yeah. And so, but that is, yeah, it's beautiful, right? That's actually Travis and Yuki, right? They were, and then, of course, when that slashed out their certain amount, then the engineering team, the mobile team, got to do that. involved. And it's not just the mobile engineer, the back end has to be written to everything.
Starting point is 00:58:27 We change from the heartbeat where every five seconds we would pull and it was pretty painful to an actual push channel. This past, by that time, it's called real-time system now, right? Yes. Yeah, it has to change, back end has to change, everything has to change to support the new flows and all that stuff. And so, yeah,
Starting point is 00:58:45 it took, you know, six, 700 engineer all total, seven, eight months to actually do it, and we put it off. And it still lived today. It's still on that same architecture. It was so far well thought out. It was almost like future proof in that design. So it's still beautiful today. And if you compare that with the previous version,
Starting point is 00:59:05 it actually would definitely... Yeah, and it was scalable. User experience was. I take no credit in that. It's like the genius of Travis and Yuki. You every now and sent emails to all of engineering on different things, and I remember this really, really emotional email coming from you about naming. I see all this, and I understand young engineer, want to have fun.
Starting point is 00:59:23 Yeah. We were having fun. Yeah, and name things in a goofy way. I think the trigger for that was a service name Mustafa. I have no idea what it in, right? I look at that stuff and by that time, we were already very complicated, right? And we have to onboard new engineer all the time. We want build us a ram up quickly, et cetera, et cetera.
Starting point is 00:59:42 And I can imagine an engineer come in here and if all these weird names have no context to it, by the time our tooling wasn't that great either, right? You blame didn't come into existence yet, right? And so there's no mapping to people discover what this really mean. And then those weird naming schemes. So I got to the point where I'm kind of fed up. So I sent that email out. Of course, you know, those last email sometimes you regret that.
Starting point is 01:00:04 After you send it out, because it has some effect, but it didn't really solve. And I think it was very quoted because you specifically wrote, this is not a Mickey Mouse shop. Exactly. We're not a Ricky Mouse. And, and yeah, it was, again, it was, it was a growing up phase for everyone in the company. But it was my frustrating at the time was, look, at this scale inside, we've got to take ourselves seriously. We've got to do things better faster, and this is not helping. Twan's been talking about improving things as the org scales, such as moving to a more mature naming policy.
Starting point is 01:00:36 Introducing new and better approaches as the company matures leads us nicely to our presenting sponsor, Statsig. Statsig built a unified platform that enables both experimentation and continuous shipping. Built on experimentation means every rollout, automatically becomes a learning opportunity with proper statistical analysis showing you exactly how features impact your metrics. Feature flags lets you ship continuously with confidence, rollout to 10% of users, cash issues early, rollback instantly if needed. And because it's all in one platform with the same product data, teams across your organization can collaborate and make data-driven decisions. They have a generous free tier to get started, and pro-pricing for teams starts at $150 per month.
Starting point is 01:01:16 To learn more and get a 30-day enterprise trial, go to stats, com slash pragmatic. With this, let's get back to Twan. We started to do better names. One other thing that was very, very unique to Uber across the industry and it caused a lot of confusion from the outside is Uber's senior level. For a while, Uber had a senior engineering level called L5, which is common.
Starting point is 01:01:37 And then at some point, you or the leadership team cut it into two. There was L5A and L5B senior one senior two. Can you tell us about why you did that? Yeah. Where do you get the idea from? I did that. I'm not apologizing for it. I think it was a good move at a time.
Starting point is 01:01:54 And the principle was we want people to grow, right? But we have a very clear definition and expectation of what it is at the staff engineer level. Because we benchmark ourselves to all the great company out there, Google, Facebook, and all that. And then I realized that for many engineers crossing from senior engineer, I mean, engineer two, passed through the senior engineer to get staff. It could be a five-year journey. Okay? It's a long time.
Starting point is 01:02:24 And so I just want to break it in two so that people get a sense of progress. And then also, not everybody can make the staff, right? But some people is good enough to make it to senior two. And I think that's a benefit. It's not, right, but versus like not doing it. And every kind of just get lost in that five-year, you know, journey.
Starting point is 01:02:47 Yeah. And so that was the motivation. behind that. So you saw a problem and then this was a solution and it worked, we can say, right? It worked for a while, right? And then people who are climatized to that. And then they start complaining. It's like, oh, why there's two levels. We need to get to staff faster. And then while I was there, I held on to that because that was a principal and staff is staff compared to the best of the industry. And later on after I left, I think it got re-labeled. They got pushed down, Al-5B is now staff. Everything got pushed down.
Starting point is 01:03:20 I didn't want to do the title inflation thing. I appreciate that. Another email that I remember from you is in 2016, you sent an email saying you've heard the feedback that NGOs are unhappy because their managers does not support them. And then what you wrote is, like, we are creating a very easy internal transfer process. You can move teams.
Starting point is 01:03:37 How is that received? And again, how did you decide that we need to do this? I look at the talent base. And I think it is best for us to create opportunity for people to keep on growing with fresh new challenges within the company, because if we don't do that, they would leave the company and seek, uh, and then I thought about the next logical step, which is, hey, if people come to us and just resign, they didn't tell us when they interview. Yeah. And so why the heck do we have like these rigorous process
Starting point is 01:04:10 when you have to ask your manner for permission to go to another team? Yeah. Why do we make it harder for ourselves, right? When our own NGO, NGO go from team A to team B, have to ask for all these, you know, permission where they don't have to ask if they interview outside. Yeah. That just doesn't make any sense. Basically, it's easier to interview outside. Correct.
Starting point is 01:04:28 It was easier to interview outside. Yeah, so that didn't make any sense to me. And so I said, well, let's not have that, right? And that also has maybe a good side effect where a manager now need to be incentivized to take care of people great, develop them, grow them, you know, put position the best people into the best assignment for them to grow, and then they not like to leave your own team.
Starting point is 01:04:49 Right? They continue to grow. So there's all of that. You know, that back pressure might cause engineer, manager to be a little bit more responsible to. So that was that. And I remember that'd get quite a bit of pushback because it'd be radical at the time. But we just did it anyway. And so that doesn't be the right thing to move.
Starting point is 01:05:05 And I would rather people trust each other. And when an engineer want to go, they should have a really great relationship for their manager where they just talk to them, hey, look, I want to do this. And the manager should be generally supportive. Instead of saying, no, you belong to me, that kind of thing, which is the wrong thing. I have a saying that I share with you guys all the time, right? It's not a jail. We can't lock anybody down.
Starting point is 01:05:28 I would have free will. If they want to work somewhere, they should have their ability to do that. And we should create more opportunity. And then we also, to support that, we publish internal job board. Anything on the outside I see, we see on the inside. So, and you should be able to shop within all the opposite to have inside the company and stay with a company. and why make it so hard and then end up leaving the company? That's just a silly thing.
Starting point is 01:05:51 I remember at Uber in some of the meetings, either all hands or team meetings, you gave talks that were memorable. And one of the most memorable, I asked around former Uber folks, and Charles specifically he was on the podcast, he told me that his most vivid memory of you is this talk or this topic about behaving work in the perspective of death. Yeah, I don't remember that exact speech, but I do have that line of thought.
Starting point is 01:06:16 in my head all the time, right? And sometimes I would share with different audience, I put different context, but it is, it's all about finding one's, you know, purpose and not take oneself too seriously, right? If you look at people, the most accounts of people don't take themselves that seriously,
Starting point is 01:06:37 right? The more you know, the more you know, you don't know, kind of thing. And people who are arrogant tend to, like, not know enough yet, or they have all that, right? So, yeah, So I always take opportunity to remind people to certainly be humble.
Starting point is 01:06:51 And the example I use always is using myself, right? I said, look, you know, when you're in an important position, people treat you really well. But don't let that get to your head. It's not you. It's the position you hold. And I remember saying this, we were like, the moment I stopped being Cedar Uber, nobody can care or know about me. They're going to talk about the next CEO, right? And that's always happened, right?
Starting point is 01:07:12 The world forget about us, right? So the only thing we can really do is in any job that we do, do the best that we can to help each other, to leave a lasting positive impression in each other. And one day, everything ends. A job end, and then I'll get to the morbid stuff like life even ends itself. And so then I measure myself, like, what is my achievement that I would be most proud of? And I say, well, when I'm gone, the thing I'm most proud is how many people remember
Starting point is 01:07:43 how I was good to them or helpful to them and for some number of years, right? And that is that because I can't take anything with me. And so live in the moment, be as best as you can to everyone and be very as constructive as you can and leave a good legacy behind you. So that was a whole gist of that.
Starting point is 01:08:02 It feels to me sometimes there's talk about how you can network better and grow your network, but sounds like this is almost like it's not a hack, it's just do the work, right? Do the work and then the right thing happen, right? But you can't do it. the work in service of that goal because that's very artificial.
Starting point is 01:08:16 Just be genuine, just be yourself, be helpful, be constructive, uplift everybody, help people along the way, coaching, being doing it altruistically. And let me show you another angle too, which I personally experience over and over again. It's not only that other people around the industry pull you into good stuff. When you pull in and you don't have people to support you succeed, you would not, you would not succeed also. And here in an example at Uber, right? When I came in, again, the engineering, we talk about very, very young in the experience. You do not know how quite built system at scale,
Starting point is 01:08:51 reliable, all that stuff. And the network that I have who really knew how to do that was from VMware. Where you're building systems software, we're an operating system, right? Rigorous, principal level engineer. Experience, no, like in their sleep, they can do it, right? Right. So when I came in and when I have to, like,
Starting point is 01:09:10 worked with the team on dispatch, I pull in the first engineer from Uber to lean land on that team. Right. His name is George. And so he's there and he worked for everybody else or uplift everybody there, right? That and then we- So this was an engineer from VMware. Yeah, yeah, yeah, yeah. And then when I build payment system, I had to pull in another, a few more one. And then when we get to build schemelous, it was the Denmark team, right? I pulled the top four engineer from my VMware team. And I moved them down from one floor to the next in Denmark. So this is why we had a Denmark office, which was one of the best infrastructure offices at Uber.
Starting point is 01:09:49 And they built schemeless. They built schemeless. They built a lot of other. Right. And so now, if I weren't a good person doing a good job for them with them, why would they come? They wouldn't answer the phone. Yeah, they wouldn't answer the phone, right? But every single one that I called because I really needed help, they all came.
Starting point is 01:10:07 Initially, they all asked the same question, why a taxi company? But when they understand that, they came, right? But they came because they still enjoy working with you, right? There are people who work with me for five different companies over 28 years. And that always surprised me. And I think this is something that people might overlook a little bit as they're building out offices. I'm talking with founders is one thing is where you can hire. There are things where the good people stay for a long time.
Starting point is 01:10:31 And there's a lot of value in that. And Denmark kept being very core critical infrastructure. Yeah, core infrastructure software team. And that's one of the thing we had to build at Uber, because back then when I came in, we didn't build infrastructure software, right? We just used existing open source stuff, right? And we build that. And another thing that I, you know, discover along the way is great talents are everywhere,
Starting point is 01:10:54 but, you know, you have to bring opportunity to them. They don't necessarily relocate from Denmark to San Francisco, right? And so that's why we end up having nine engine offices around the world. Because we have a lot of work to be done. We didn't go to other people. because of cost savings, anything like that. We go there because we have need and we have world-class talent and we just cherry-picked the world-class talent.
Starting point is 01:11:15 Doesn't matter what size it is and Denmark was small compared to the team in India, et cetera. But there were really great talent infrastructure and we'd invest on that, Lithuania, we're an amazing DevOps team. And so we just go to where the talent is and then we bring the great work to the great talent. And then we establish a structure to manage
Starting point is 01:11:36 and give people first-class ownership of the problem. And then, you know, everybody's kind of equal. At Uber, you talked about several times of your three chores of duty. Which one were these? Yeah. Again, it comes back down to purpose. So when I do something, I try to be intentional about why am I doing something? What's my purpose of doing that?
Starting point is 01:11:58 And so, of course, my purpose to come into Uber was, hey, let's build this business. I just build a tech that support the business. And so the first couple of year, 18 months, 24 months, were fixing a lot of the broken stuff. Things weren't reliable, become more reliable, et cetera, et cetera, rebuilding. Basically, just getting to work and work well. And then along the way, you know, these things don't end and beginning on a particular day. It just phase in and out, right? So the phase two, that was my second two of duty, was scale, worldwide scale.
Starting point is 01:12:33 That was China. that was massive scales everywhere in every dimension. And so, yeah, so at each of those phase, when you're done with that phase, you ask yourself, am I still useful? Do I want to re-up, right? My commitment and energies and everything else. And so the first two phase were no question, right,
Starting point is 01:12:52 with there to do that. And then as phase two were about to wrap up, right? About 2017, we actually kind of stabilized. We're really big now. I was actually asking myself that question, am I needed here anymore? And I was actually about to wrap it up that summer. Because, you know, at that point,
Starting point is 01:13:11 we had also another STP that was higher, and I think he's really, really great technically, and I can, like, feel very, very at peace. You know, there's someone who really take it on even better because the person has done even bigger thing at Google, right? Yeah, and then, but that didn't work out, and then Uber has a really rough year. So then I have to like sign myself to the third tour of duty, which is, and why does the purpose
Starting point is 01:13:37 of that, you know, help the company get through the third of course. And I had no idea at the time when that phase would end. I just kind of know the condition for that to end, which is whenever the next CEO arrive, right? And then after that, whether that person like me, I like that person or whatever it is, that to be decided. But that third phase, I have to stick it through because, you know, we owe it to, I, ourselves and we owe to everyone along the way who have built Uber to that point, right, to get through that turbulent phase. So we did that. And then now when the new CEO come in,
Starting point is 01:14:11 and, you know, I stayed on until 2020. And so in 2017, I remember it was really turbulent. Travis had to step down for a while. A group of, of, I think, 14 people who were Travis's direct reports, they took over steering the company. You were one of them. So this is the point where you decided that if everything would have gone smooth, you might have actually just slept, but you decided to stay on to help the company, help the team to help us get through. Uber was built by 10 to thousands of people, right?
Starting point is 01:14:41 Past and present. The fact that people built somewhere and they left already before that. That's so fine. That work was still in there in some way, right? That led to that Uber that we have there. And it was a really important thing that we all built. That many of our lives were. And then just to suck it out,
Starting point is 01:14:56 we weren't public, which went good. And then it went okay. And then, of course, COVID happened, which really hit Uber. And a few months later, into COVID, you did step down. Why did you leave Uber? And why was the timing when it was and what motivated you to say, okay, this is a time to go? Yeah, it didn't have anything to do with COVID, really. It, you know, I was, I'm lucky enough to arrive at a point in life where money doesn't matter, right?
Starting point is 01:15:27 And so then I asked myself, why am I doing anything? If I wake up every day and spending X number of hours on doing something, why would I do that versus something else? And so it comes down to three things. One is, do I really love the mission and what I'm doing? And the second one is do I feel like my being anywhere, right, is making a really big impact. And the third one is that I'm enjoying the company of people I'm working with, right?
Starting point is 01:15:59 And if several of those dimensions are lacking, then at some point is not enjoyable in totality anymore, right? Then it comes down to, okay, when you wake up and you spend 50 hours a week doing something where money doesn't matter anymore, I live very modestly, so it doesn't change anything. So then why would I do that versus doing some other thing? And so I think that was the realization at that point, where I'm more like, okay, I'm there doing a big job,
Starting point is 01:16:28 but more or less running things rather than, you know, being very much more effective and building the company like in the early days. And so, and at that point, I think it's actually much better for other people who take a crack at that job. Again, you know, like everything ends, right? And so you have to decide yourself. And it did give opportunities other people, right? So like, and they did pick it up.
Starting point is 01:16:50 Now, after Uber, I remember you did an interview with a publication. I think you said that you're thinking of retiring or your. see. But then you were not done. Oh, no. You did other stuff. Coupon, New Bank, Fair. Can we talk about what happened? What was your thinking? And you never been left for a moment, honestly. Well, I blame that on COVID. So seriously, that one, COVID had everything to do with it. So when I left, we had a plan to travel the entire summer because our daughter was between eighth grade and ninth grade when she's about to enter high school. school. We had African safari plan. We have all the other travel plan. Everything got shut down.
Starting point is 01:17:33 Everything got shut down. All the flight that canceled, all the country closed. And so we stuck at home. Right. And I don't remember at the time where I'm the only one who go to supermarket. And then, then like very sparse to kind of race through it, pick up what you need and you get out with all the masks. And yeah. And so we're kind of bored, though. And so I'm bored. So I sit at home and we all got on Zoom call. and lots of people want to kind of chat with me to, not surprising. And so I took a bunch of calls, and one of them was the founder of coupon.
Starting point is 01:18:06 And we had really great chat. And, you know, it's like our charging person, wanting to get a lot of things done. And I really like that. And I think, well, I'm not doing anything here anyway. So might as well, you know, make myself useful, right? Again, it's about how you spend your time. And so, yeah, as I did that, and I, yeah, I joined there.
Starting point is 01:18:26 I help some, but I learn also a ton because that's also a very interesting area, right, the Amazon style logistics. And the way coupon does it is to talk about five hours, six hours delivery. Wow. Yeah, your order before midnight and the thing show up and your doorstep
Starting point is 01:18:42 five o'clock in the morning, five days. And when I was there, I joined the delivery truck, putting packages in front of people's home like two, three o'clock in the morning. And it's brilliant, right? And all those things that you learn and you learn a whole bunch of these things.
Starting point is 01:18:57 And so, yeah, it's a really great use of time, right, given the circumstances. Yeah. And then you became, was it, is it an advisor or a board member at NewBank? Board member, yeah. And New Bank is, for those that don't know, and outside of the U.S. or Europe, it is the most successful and highest valued non-U.S. companies, the largest growing bank in Latin America. It's extreme, it's engineering culture I hear amazing things about.
Starting point is 01:19:24 you're the first person I'm actually talking about. So what did you learn there? And you're still involved, right? Yeah, yeah, I'm still involved. But as a board member capacity. And for a while, I also took on a more active responsibility to mentor the CTO, right, a couple of them. And so, yeah. And so, again, it's all about being useful.
Starting point is 01:19:47 We all learn a lot in our journey and working with really smart people, really motivated people, younger and impart that knowledge and sharing, you know, what you see and advice, help people move forward better, faster. And I find that very fulfilling. And so that was that, and the culture there is very vibrant. I mean, it reminds me of our early days, Uber. When everybody is gung-ho hard-charging, the founders hard-charging, everybody is, when I visit there, usually during board meetings, once a year we kind of go down to Brazil, and we will have all hands with the entire company, and sometimes I also did all hands with the engineering team
Starting point is 01:20:28 and do AMA style the way we all did Uber. And so it's just very energetic, right? And there are many factors to their phenomenal success. One is very much like Uber. They actually solve the right problem at the right time. There's a whole bunch of unbanked population before NewBank came along, and they deliver leapfrog,
Starting point is 01:20:49 of traditional banking just online and the app and the experience is beautiful, the NPS score is through the roof. And ultimately it adds a lot of value to people, right? Live and that's why the adoption rate is crazy high, right? And so, yeah, well-executed, amazing product vision, phenomenal cultures and energy. And so all those factors are very common and, like, great companies.
Starting point is 01:21:13 And we experienced one of those things at Uber too in early days. So it's really, very energizing being a part of that. And they're doing. great and now you're at CCEO at Fair. What made you join Fair? I took a couple years off when my daughter was finishing high school because I'd figured that time would not ever come back when she's gone and she's gone now. Was it the right choice?
Starting point is 01:21:33 Oh, absolutely. I would not take that time back. I'm so glad. Yeah. 10th, 11th grade and 12th grade. I get to stay home, drop her up, pick her up, cook, hang out together, help with college application, all of that stuff. And so the bond we had was really cool.
Starting point is 01:21:49 And as I was thinking about her going to college, I was saying, well, I'm going to have a lot of time on my hand. So what should I do? Here we go again. Exactly, right? And so should I join another board, which I was about to? And then at the last minute, some partner, Sequoia, asked me to meet Max, the CEO of there and really liked him. Very smart. Again, all the same characteristic.
Starting point is 01:22:16 Very smart. very hard charging, want to do all the right thing. The business is empower, you know, local, you know, businesses.
Starting point is 01:22:25 Can we talk a little bit about that? Because from the outside, you know, when you Google Fair and I look at it, it doesn't tell you exactly too much. Feels a little abstract from the outside. It is a B2B marketplace, right,
Starting point is 01:22:37 between big brand wholesalers and retailers. So people buy that and then stock their storefront. And so, yeah, and so all the traditional, two-sided marketplace, dynamic, apply. And the mission is very similar to our mission
Starting point is 01:22:51 to Rube, even though we will B2C, right? This is B2B, but it's all about what can we do to empower local businesses to flourish, right? So to buy the right thing to sell through, make a profit, grow that business. So basically, this can help small and also large businesses to actually just grow their business. Yeah, yeah.
Starting point is 01:23:09 May that be like just getting inventory. More successful demand, more demand, more supply, all of that stuff, right? So, yeah, it's like a really, market places are really fun and very complex. And so I really like that. And I really, when I dig in through the interview process and everything else, and again, this company moved really fast.
Starting point is 01:23:29 Within a week, everything was finished, including my homework assignment, right? You have to go and present and everything else. And so I really, the company moved really fast, it's energizing. And the culture is super nice and super kind, you know, like no politics, everybody's just focused on doing the right thing and work with each other, taking care of one another. So it's a trifecta. It doesn't matter if the company is really big or really small, right, but it's got all the ingredients. So I said, well, maybe that's a good place to jump in and help help out. And can you give us a little context unfair in terms of the size of the company,
Starting point is 01:24:00 the size of the engineering team, where the hubs are, what the work is like? Is it in person? Is it hybrid and so on? Yeah. The company is about a thousand person. The engineering team, including the data science team combined, is about 300 people. The work, We are in the office three days a week. Yeah, three days on the week. The other two are working remotely online. Yeah, and some people throw up more if they live close to the office. Yeah.
Starting point is 01:24:28 The engineering team, there's a portion here in SF, just down the street from here. And a large part is in Canada. They would have a big office in Waterloo, and we have a big office in Toronto. So I make the trip there quite often every five, six weeks or so I'm over there. And what are some interesting engineering challenges that you're excited about right now that you're solving? Oh, right now, clearly the most exciting thing is AI. And how is I change everything so quickly. Tell me, what are you seeing?
Starting point is 01:25:01 What's working, what's not at, you know, on your teams? In my team as far as in the company, you know, we're using AI to boost everyone, effectiveness and productivity and output, right? And so that's one. within the engineering specifically, we use AI to make search and recommendation better, right? Because the whole job is to help people
Starting point is 01:25:21 discover a thing that would sell really well for the business and, et cetera, and imagine AI as a shopping consultant, right? And all that stuff. And then coding-wise, you know, AI is doing a lot more of the coding now. But we also
Starting point is 01:25:36 used different technique to actually boost engineering productivity. Have you heard of like swarm coding? So swarm coding as in the agents? Yeah, a whole bunch of agents are swarm of agents, right? It's pretty new, so you're already using it. So we are already using it. And we're building orchestrator to orchestrate the action of all this agent.
Starting point is 01:25:56 And we measure the first, the early adopters. And then the bulk of the engineer follow through after we build the more robust tooling. And we see dramatic lift in engineering output. Among the earlier adopters, the one are really efficient at thinking this way, right? Because it's very different from a linear kind of thinking. When I write this to code right now, it's almost like multi-threader programming with single-thread. You have to think about all these sort of thing. You have to prompt all the action.
Starting point is 01:26:25 And then you have all this code that come back at you. You have to review it. You have to sit together. Yeah. And it required a different way of thinking. And the cognitive load may be a little higher, but the output is dramatic. We have seen our best engineer double their output. I know we're talking about that.
Starting point is 01:26:40 But just to make clear, we're talking about not the code out, but the actual business out, but the impact of their work, right? Yeah, the impact now depends on the evolution of AI, right? So right now, the state of the art right now is it's very easy to make large-scale changes, right? Clean up and everything else. So massive productivity increase. Now we're trying to crack the next frontier, which is how we get that level of productivity increase and output,
Starting point is 01:27:07 building new features. on top of a code base that are older, right? It's not like you and I can just go build something brand new, not entangled with anything. It's really fast. The whole thing will generate for you, right? Yeah, but we got millions of lines of code. And how do you deal with that and build feature on top with all those dependencies and all that stuff,
Starting point is 01:27:24 right? Can AI good enough now to help us untangle some of those things along the way building new thing? And so we actually, you know, continues to work on that and figure out how we can actually continue to boost more and more practically out, even building new feature with AI. do you think AI will change software engineering and what a software engineer does and what skills we value? Yeah, it's already changing. I mean, very rapidly. These changes are fast on anything I've seen, including the internet, right? Back then, I remember when we first learned how to do programming, we have to know a lot about the machine architecture. We have to know about virtual memory,
Starting point is 01:27:58 and then we have to learn how, like, syntax and coding. All of that stuff has been abstracted away now, right? Such way I used to, I want X, Y, and Z, blah, and it should be this way, and hold. thing get constructed, right? So it elevated a level of the playing field where people who don't even know how to program can now create good, you know, good decent code and app or whatever it is. I look on the surface is really good. So it is game changing, right? It elevated the playing field. Now, then in that level of abstraction, how do you tell the great engineer from the good engineer? Great question. How do you? Well, from what we see, So far, the great engineer are still finding way to leverage this and accelerate the output
Starting point is 01:28:44 even more. Then we see the difference between the great engineer and an average engineer is still two three X in terms of their capability. They're more inquisitive. They're at the bleeding edge more. They're more innovative, right? And then there are people who like, okay, well, here's the tool that you give me. I'm going to be two times more productive, right?
Starting point is 01:29:03 Because I'm using this tool, it's great. But the great angel continues to break new boundaries. And so I think that is still available. You can still, you can look at people and you can see who are the high performer versus who are average. So do I hear correctly that the traits that you're seeing in Greta engineers is we didn't mention, but it's kind of given to foundations plus curiosity, plus innovation. Fearlessness, willing to innovate, willing to stretch, willing to try new things and break new ground. All of those traits that's interesting. Interesting. If I think back to like just the Uber days or your startup days, those traits were kind of the trace of the standout.
Starting point is 01:29:38 That's right. Those things they make someone outstanding versus someone else. So I guess maybe an advice is like, well, I mean, try not, like if you were a great engineer before, just don't be complacent and then keep using, keep approaching the same way, right? Correct. Yeah. Complacency is death. I mean, like every, the world will move faster and faster and the moment we stand still, we're falling behind. It sounds like if you worked at a fast, fast-based startup before, which is the, the, you know, the world will move faster and faster. This is how it works. AI should be familiar. Welcome to how it was before. To me, it is an incredibly powerful tool, but in the end is still a tool.
Starting point is 01:30:12 And you can wield a tool properly. You can do extraordinary things. Versus you just merely use a tool in a mundane way. You're not going to be great stuff. So we talked about sound out engineers in this age. I'd like to talk about something that I cannot talk with too many things, send out CTOs. You have now been CTO at multiple companies.
Starting point is 01:30:30 I lost for VP of engineering. You've been at some of those higher. highest engineering leadership and at Uber at Fair, you've done an outstanding job as a CTO. What is the most important job of CTO? Yeah, there are a couple of angles to this. One is build a high performance team, all right, talent, culture, all of that. You know, whatever is that you got to do, put the orchestructure, put that, you know, develop the talent, prune, you know, bad folks out, or whatever, everything that you need to do to make sure that you have really high talent density.
Starting point is 01:31:05 Because when you have Team A, Team A will just want to high more A level players. Yeah, they're just intolerant of anybody who's not performing, right? So when you get to, but you got to get to that concentration, and then it's kind of just self-protecting, if you will, right? And then, of course, you have to create an environment where people really trust each other and align and work really well together, right? Because you put an all-star team together doesn't mean they work really well.
Starting point is 01:31:30 if you don't have like the cultural alignment, right? So that organizational side of things I've always deeply believe in, that if you do that well, then good outcome would just happen. It doesn't matter what you want to do, right? They would just be able to come out with great result because we have great talent and with great motivation. The other side is you have to look in the future and see around that corner. For example, I always think about two years out.
Starting point is 01:32:00 what does great need to look like? Okay. Do we have the key, you know, ingredient, if you will, talents and otherwise to actually get there, whether it's architects, leadership, whatever, right? And what problem we're trying to solve?
Starting point is 01:32:17 What would the business look like? So, you know, the famous Wayne Gretzky quote is, gate to where the puck would be. So, yeah, then we envision that future. And I would share this with everyone at every management level. that when you're in any level, your job is to see a little bit further out than your folks, right?
Starting point is 01:32:35 Because your folks are busy working on a near-term thing, right? And then you have to see that. Because if you don't do that, and no one, it's your job to actually do that. Right. Well, let's put this to the test because right now is the most, so many people in Kuzzi, it's an unprecedented time with growth. How do you look around the corner? What do you see around your corner right now? Like what will be coming, maybe not if in two years, but even in six months? Well, in six months, you know, we know what we need to do. In fact, it's too short, right? These are the things that we're...
Starting point is 01:33:04 I recently asked OpenAI on what they see in two years. I know, like, oh, that's too long. Let's talk six months. But in context is everything, right? For them, they're trying to reinvent that future. And sometimes things are changing too fast there from that context. But from fair, the business, we know what business result we want to drive. We know what project we need to execute, right?
Starting point is 01:33:24 To me, that's pretty much lock and load. It just requires good execution, right? Good adjustment along the way. To me, 18 to 24 months out is my job to look at while my team is worrying about the six-month problem, right? And so, for example, there are many areas that we need to clean up, right? There's the data ecosystem that's been old and, you know, same problem we saw at Uber too. You know, something changed upstream, break things downstream, and how you're really looking it up with all this, you know, the older, you know, code base.
Starting point is 01:33:56 Then, you know, what is the next generation of search and discovery that are AI driven, right? You know, something to something to look like productivity, right? How can we leverage AI to like double output on, you know, future development? Right. So all of these things, what is that future need to look like? And do we have the horsepower and to get there, right? In terms of expertise, management and the planet, all that stuff. And so, and then if the answer is no, then it's,
Starting point is 01:34:24 the next question, how do we actually position ourselves there? Who do we recruit? And so that's a job policy on the sort of the non-management side. And then finally, what advice would you give to a young engineer, someone, let's say, 25 years old or a new grad who is entering the industry right now, lots of change? For folks who are entering the workforce right now, I have to know that it's a very scary time because it's very bumpy.
Starting point is 01:34:49 Even at our company right now, we still bring in new grad, but it comes through our intern co-op channel, right? We're not in the world where we just high massive number of new college grad like the old days anymore, right? But if great people are still finding opportunity, right? We have a healthy cohort of co-op every single four months to come through, right? And the best of the best do get offered from us. because if we don't hide those folks today,
Starting point is 01:35:26 what senior NGO will have for, yeah, year from now, right? You have to feed the talent pipeline and great people are great people. They will learn and grow. And yeah,
Starting point is 01:35:34 and so that will always, the opposite will always be there for great talent. So invest in yourself. When a student, you know, volunteer, doing interest, solve hard problem early on.
Starting point is 01:35:46 The earlier and harder you work early on, the better you have in, in the future. If you take a, it too easy right now, then the road in the future might be a little harder. So I think that's a key. And then when you enter the industry, it depends on, I think, career phases. I would say the first five, 10 years or so find opposite where you learn the most, that push you the most. Because those are the time that you have the most energy to develop your skill and ramp up really fast. And when you
Starting point is 01:36:17 get to like senior engineer staff, engineer range, then you know enough to be very dangerous in terms of making a big impact, then seek opportunity where you can make a big impact. Maybe a smaller company will allow you, like, a bigger stage to actually make a huge impact, right? Let's take some of that risk and do that. And that phase should be about using what you know and make this big impact as you can, and you will learn along the way too. And then when you get to the next phase where hopefully if you're really good, you're already
Starting point is 01:36:41 at this, you know, principal engineer, senior staff, or on the management side, senior director, VP, whatever it is. And then that point, you don't take it back, right? learn the coach and there are a lot of people along the way. You'll be leading and be responsible for very big things. You know, apply that knowledge to do a really great job, but also teach and bring other people along. So different phases, you should change the priority a little bit.
Starting point is 01:37:06 Twan, thank you so much. This was a great conversation. So I hope that everyone will find this useful. What a conversation. So many of these stories have not been told before, and I hope you enjoyed them as much as I did. The microservices story is such a good one. Nobody had Uber planned to have thousands of microservices.
Starting point is 01:37:25 It happened because every time they tried to decompose the monolith, the business was growing so fast that other teams were adding to it faster than the decomposition team could pull things out. It took two years to do something that in isolation would have taken three to six months. Uber had unusually violent business growth that resulted in unusually fast-cold growth and microservices helped Uber tame its growth. But unless you're growing at the speed of Uber, you probably will not need thousands of microservices. Oh, and fun fact, in 2026, Uber has fewer microservices than they had in 2016.
Starting point is 01:37:55 I also found him fascinating how Twan's entire career was shaped by relationships he built by simply doing great work. Bill Gurley reached out about Uber because he remembered Twan from NetGravity, a company from a decade earlier that didn't even win its market. The engineers Twan pulled from VMware into Uber came because they genuinely enjoyed working with him. There was no networking strategy. Just years of being good to people, compounded. sounding quietly in the background. Finally, Twan's point about AI was an interesting one.
Starting point is 01:38:24 Complacency is death. The traits that made someone a great engineer before these AI tools, curiosity, fearlessness, willing to try new things are exactly the same traits that make someone great with AI tools. The tools changed. What makes people exceptional has not. Do check out the show notes below for more deep dives on Uber and Uber's engineering culture as covered in the Pragmatic Engineering Newsletter and podcast.
Starting point is 01:38:46 If you've enjoyed this podcast, please do subscribe on your favorite podcast platform and on YouTube. A special thank you if you also leave a rating on the show. Thanks and see you in the next one.

There aren't comments yet for this episode. Click on any sentence in the transcript to leave a comment.