HomeVideos

Scaling Uber with Thuan Pham (Uber’s first CTO)

Now Playing

Scaling Uber with Thuan Pham (Uber’s first CTO)

Transcript

2817 segments

0:00

Uber had about 5,000 microservices.

0:02

>> None of us wanted to go through that

0:03

extreme. But lots of time when you are

0:06

under a lot of pressure and no time to

0:08

react other than to survive that scale

0:10

that keep on coming at you.

0:11

>> Travis told you you have 2 months to

0:12

launch in China.

0:14

>> That was one of the craziest thing we've

0:16

ever done, but it's also one of the most

0:17

amazing thing we've ever done and now

0:19

explain why. So

0:20

>> let's talk about how and why Uber built

0:22

so much internal tools. I can't claim

0:24

that every single one of those thing

0:26

were absolutely necessary but all the

0:29

important one were absolutely necessary.

0:30

So I remember a very painful example of

0:33

that we had to face early on was

0:39

when Tuan Pam joined Uber as the

0:41

company's first CO in 2013. The company

0:43

had 40 engineers did 30,000 rides per

0:46

day and the system crashed multiple

0:48

times per week. He had 5 months before

0:50

Uber's dispatch system would hit a brick

0:51

wall with no way out. 7 years later, he

0:54

left the CTO of one of the most complex

0:56

engineering organizations ever built. In

0:58

today's conversation, we discuss Tuan's

1:00

interview with Travis Kellik for the CTO

1:02

role, which lasted 30 hours, spread over

1:04

2 weeks, scaling through chaos,

1:06

rewriting dispatch before it collapsed,

1:08

launching China in 5 months, and the

1:10

full appreite known internally as

1:12

Project Helix. Why Uber ended up with

1:14

thousands of microservices and hundreds

1:15

of internal tools because existing

1:17

solutions could not handle Uber scale at

1:19

the time, and many more. If you've ever

1:21

wondered what it's like inside the room

1:23

when a company is growing faster than it

1:24

systems can handle and what are ways to

1:26

get things under control, this episode

1:28

is for you. As a side note, I've been

1:30

lucky enough to work at Uber while Tuan

1:31

was a CTO. And Tuan is the real deal.

1:33

This episode is presented by Statsig,

1:35

the unified platform for flags,

1:37

analytics, experiments, and more. Check

1:38

out the show notes to learn more about

1:39

them and our other season sponsors,

1:41

Sonar and Work OS. Tuan, it is so good

1:45

to have you here in person.

1:46

>> It's my pleasure. It's so good to

1:48

connect with you again after all these

1:49

years. And it's so good to reconnect. We

1:51

we worked together for almost four years

1:53

at at Uber. Probably my first month I

1:55

already met you in like some really like

1:58

fun slashstressful circumstances during

2:00

Helix the Uber app rewrite which was a

2:02

crazy project. Well, before we get into

2:04

any of that, how did you get started not

2:08

just in tech but but in life? You had a

2:09

pretty rough start.

2:10

>> Yeah, I I I grew up in I was born in

2:13

Vietnam and uh I was a child I would say

2:16

of the Vietnam War. So in 1975

2:20

when the south of I was from the south

2:22

of Vietnam, my father was tied to the

2:26

military of the south uh of the south

2:29

and uh when the when the country was

2:32

unified, right? The the south has lost

2:34

and north is one and there were a fair

2:36

amount of repercussion, right? People

2:39

who are associated with the southern

2:41

regime would not have much of an

2:43

opportunity growing up. the education

2:46

opportunity, all these other that was

2:48

again the the the way it was at the

2:50

time. That's not necessarily true right

2:52

now. Uh but uh that was and my mother

2:56

then made a very bold decision that she

3:00

wouldn't want her two son growing up

3:03

with no opportunity. And so um we had to

3:07

flee the country. And at the time there

3:09

was a massive wave of exodus called the

3:11

boat people uh where people just get

3:13

onto rinky boat uh fishing boat or

3:15

whatever thing they can get their their

3:17

their place in and uh escape the country

3:22

in the middle of the night. People did

3:23

not know at the time and nobody thought

3:26

about it that but the chance of survival

3:27

was about less than 50%. that about two

3:30

million people left, about million

3:31

people survived the crossing because

3:33

this these boats are not sea worthy and

3:35

we crossed the ocean and um yeah, but we

3:38

were the lucky we were lucky half

3:40

really. But no one thought about if

3:41

people think too much about it, they

3:42

probably wouldn't do it. Uh but everyone

3:45

just like well we need to escape we need

3:46

to you know give ourselves a shot of a

3:49

better life and so we did. So we we left

3:52

Vietnam. It took many try and took it

3:55

depleted the entire you know saving of

3:58

my parent because it was a scam. People

4:00

were say you know pay up half now half

4:02

later and then the boat never shows up

4:04

and finally on the fourth try we

4:06

actually made it and then we were lucky

4:08

that we have a really good captain who

4:10

actually navigate through storms and and

4:13

all that and we survived even pirate

4:15

from from Thai. I was around I think 11

4:18

12 somewhere and so we crossed that uh

4:21

and we survived three uh three day four

4:23

nights of um the crossing of the South

4:26

China Sea uh to Malaysia then we went

4:30

into Malaysia we thought we were done a

4:32

week later we got tow back out and dump

4:36

it in Indonesia a few days later and

4:38

that's where the government there uh

4:40

accepted us in and put it on a deserted

4:42

island at the time and we formed a

4:45

refugee camp there. So, and then we were

4:48

waiting to be processed. We got

4:50

interviewed by all the different

4:51

countries and the the US gave us a

4:54

refugee um settlement uh because we were

4:57

tied to the old regime that were

4:59

supported by the Americans. So, we were

5:02

very very thankful to to get here the

5:04

land of opportunity and uh we didn't

5:07

know any English. We didn't have any

5:08

penny to our name. Uh we were sponsored

5:10

by a church. the first set of clothing

5:12

we got was from the donation closet at

5:14

the church. And so um and so but we had

5:16

to build from the ground up and uh so

5:20

that that was how I grew up and that's

5:21

how I got here.

5:22

>> And then from this like absolutely

5:26

not just unconventional but just

5:28

extremely hard start. How did you

5:30

eventually get your interest into

5:32

computers into tech?

5:34

>> Just like most in life is by happen or

5:36

luck. Um I I was pretty good in math and

5:39

science as most kids in in Asia. We were

5:42

growing up. We learned that. And uh when

5:44

we got here um I had a friend in high

5:47

school uh who had uh received a gift

5:51

from his dad uh an IBM PC. That was when

5:54

one of the very first one the one with

5:56

like two floppy disc.

5:57

>> Was this in ' 80s or '7s?

5:59

>> This was in the 80. This was in 1982.

6:02

Yeah. So freshman year. So after school

6:03

I would hang out at his place and he's

6:05

got a new toy and so we were you know

6:09

writing little basic program and playing

6:11

game and all that stuff and we learned

6:12

how to use word processors and lotus and

6:15

word stars and all that and I started

6:17

coding in basics and then I just

6:19

realized that oh it come very natural to

6:21

me I can think very algorithmically and

6:23

then there's another weird thing I I

6:25

sometimes tell people I am generally a

6:28

procrastinator I don't like to do the

6:30

same thing twice so computer programming

6:32

is perfect for me, right? You solve the

6:34

problem once that's a creative part.

6:36

After that, I get bored. I got to do the

6:38

next problem. And so, writing program

6:39

was like the perfect fit for me.

6:41

>> You do not duplicate your code.

6:42

>> Yeah. I don't like duplicate the code. I

6:44

don't like to do the same thing twice.

6:46

Uh and so, yeah, when you write it and

6:48

then it execute way faster than you can

6:49

do it by hand. So, that was really

6:50

wonderful. I just taught myself that.

6:52

And then I volunteer at a government

6:55

agency to write code for them after

6:57

school. And so I did that and I went in

6:59

there and I basically stitched together

7:01

Lotus uh DBA3 with all the scripting

7:04

languages and automate the entire

7:06

financial accounting and reduce the the

7:08

the workload. At the time the two

7:11

accountant had to spend about 3 weeks or

7:14

so every quarter reconciling everything.

7:16

I did all that stuff with a purchase

7:18

button uh and took about three hour for

7:20

the whole batch to run. And so they were

7:23

so happy when I graduated high school. I

7:26

think they they wrote me a really good

7:27

recommendation letter. Uh, and with

7:30

other things that were going on and the

7:32

good grades and everything else, I I got

7:34

accepted MIT and then I got there and I

7:38

really learned computer science like the

7:39

fundamental of computer science. Back

7:41

then I was just like a kid who just, you

7:43

know, write programs. So,

7:44

>> and then during or after MIT, what was

7:47

your first professional job where where

7:49

you got paid and you worked full-time on

7:51

on techn with technology?

7:52

>> Uh, one thing lead to another. I was uh

7:55

when I was um at MIT, there was a

7:58

multi-year co-op program uh with uh some

8:02

of the best company tech company in the

8:04

world at the time. AT&T, Bell Labs, uh

8:06

Xerox Park, HP Labs, and all these

8:09

company Bor all over the country

8:11

actually. And so we applied for it and

8:14

um and then the best the the kids with

8:16

the best grade got prioritized. Then the

8:19

company had to go through a selection

8:21

process. They rank all the kids and then

8:22

the kids all ranked the company that

8:24

they got ranked and then there was a

8:26

matching process and I end up um coming

8:28

to Hill Packard Laboratories and AP was

8:30

one of an awesome company at the time.

8:32

>> Back then they were massive and like

8:34

very

8:34

>> very innovative laser printers you know

8:37

workstation computer systems all of that

8:39

stuff. I was in the HP lab which is the

8:42

research lab where a lot of the really

8:44

innovative stuff happened and so it was

8:46

a dream job. uh as a student I get to

8:49

work on cutting edge research with all

8:51

the other PhDs around um I get to write

8:54

the joint thesis for my bachelors and my

8:56

masters with the work there that was

8:59

part of the arrangement and uh when I uh

9:02

u graduated HP just hired me straight

9:04

into that research lab so I became one

9:07

of the researcher although I didn't have

9:08

a PhD and after that that were uh a few

9:12

years of that then I went into the

9:13

industry and write code that uh people

9:15

would actually use I really enjoy my

9:17

time at HP lab because you get to do

9:19

cutting edge stuff. We were working on

9:20

medical informatics at the time where

9:22

right now you go to every doctors all

9:24

your recctors following you. Back then

9:26

we actually have a network distributed

9:28

system architecture where every

9:30

physician workstation that you go to

9:32

right had your your X-ray and everything

9:34

follow and then you have like knowledge

9:36

base that actually look at for drug

9:38

interaction. Oh, we actually did that

9:40

research back in the mid late 80s

9:43

actually. And so like these are cutting

9:45

edge stuff. But then the the thing that

9:47

I find unsatisfied uh unsatisfactory at

9:50

the time for me was we published great

9:53

paper and then didn't go anywhere. It

9:56

was not productionized and I'm just like

9:58

I want this is so cool. Why can't we

9:59

bring it to the user? But that wasn't

10:01

the setup. The setup was research lab

10:04

worry about research and then we would

10:06

have like a a tech fair every year and

10:09

the general manager of every product

10:10

division swing by and then decide what

10:12

they want to pick up and productize. And

10:14

so I didn't feel empowering beyond the

10:16

research phase. So I just had to go find

10:19

a a a place where I can write code and

10:22

people actually use my code.

10:23

>> So I went to Silicon Graphics. At the

10:25

time we were also trying to invent the

10:27

future and we actually did a prototype

10:29

of that. There was um interactive TV

10:32

where back then now we could take for

10:34

granted a streaming video video on

10:36

demand online game right cooperative

10:39

game. Back then we didn't have cell

10:41

phone internet yet and we can cobble

10:44

4,000 um homes together in an 18 trial

10:48

that has cable and then we invent like

10:50

network protocols and all these things

10:52

and we actually formed a set top which

10:53

is like tube TV not even a flat screen

10:55

TV with a set top box on top which is a

10:57

silicon graphics box and we can

10:59

implement online shopping uh um movie on

11:02

v video on demand and you're building

11:04

all of that without having any of this

11:07

stuff right here like we and and

11:09

celebrity like Michael Jackson came by

11:11

and saw demos and we saw Spielberg, we

11:13

saw everybody. We thought really believe

11:15

that was the future and it was the

11:17

future. The problem was it's way we way

11:19

way ahead of the time. Right. Then I

11:21

learned a big hard lesson. It's not

11:23

about just a technology. It's about

11:25

whether the world is ready for it,

11:26

whether it's economically feasible.

11:28

>> And and back then what was the point

11:30

where you realized like this is not

11:31

going to work even though we're doing

11:32

this awesome stuff

11:33

>> after a year, right? because um it took

11:36

like $100 million back in 1994

11:42

just to provision the head end. Silicon

11:45

Graphics love it because they sell all

11:46

these massive server to pump out video

11:49

and then the settop itself is a silicon

11:52

graphics workstation that cost $45,000

11:56

right people would not buy that right

11:58

>> especially like like in today's money

11:59

that would be like 10 $20,000

12:01

>> people would not buy that the early

12:02

adopter enthusiastic maybe right but not

12:04

for the mass market and so when we and

12:07

we we did that trial incredibly

12:09

successful we definitely all saw the

12:11

future and then we did the same trial a

12:14

similar trial with a different set of

12:15

software that we wrote for NT nippon

12:18

telephone in Japan. We went to Japan

12:20

deploy that very cool had a really great

12:22

time but then it fizzled out because it

12:24

would not be commercially viable and so

12:26

that was a really first life lesson that

12:29

I learned it's not just a technology

12:31

right you got to be at the right place

12:32

at the right time and the right price

12:34

point and then uh after that I went to a

12:37

startup founded by a former office mate

12:41

at SGI so we were doing internet

12:43

advertising the internet was about to

12:44

take off then mosaic browser search came

12:47

out uh Netscape was being form and um

12:51

yeah in the early days of Netscape and

12:53

so we saw very clearly that the the

12:56

advertising model worked for TV so it

12:59

has to work for the internet right

13:00

because all these content people would

13:02

use it if it's free but then who has to

13:04

pay for it the advertising so we we I

13:06

joined a company initially we call

13:08

ourselves netvertiser which is like you

13:10

know very and then ch it changed it name

13:12

quickly to net gravity and then it's so

13:15

uh enterprise software to put ad banners

13:18

dynamic ad banners ers on CNN on

13:20

Netscape site and all that. I was one of

13:22

the very early engineer there. I was the

13:24

fourth engineer I believe. Yeah. And so

13:26

um people don't know this but a buddy of

13:29

mine we were the first pup engineer to

13:31

put the first dynamically targeted ad on

13:33

the on the Yahoo page on the internet.

13:35

>> And dynamically targeted meaning that it

13:37

showed different ads based on different

13:40

or or like whatever.

13:42

>> Yeah. The version before I came in was a

13:43

script that crawl through and just put a

13:45

stick static banner ad and rotate it

13:47

through every hour. But then we it's

13:49

like we got to target it and then we

13:50

started using cookie we started you at

13:52

first it was a content of the the page

13:54

and and the person and then we actually

13:56

use that to actually target different ad

13:58

and then we have ad sequence and all

13:59

that stuff and that was the very first

14:01

one of course uh we had some success

14:03

there that company went public but

14:06

another thing that I learned was um

14:09

sometime you got to seize the market

14:12

right there's a company that formed

14:14

right much later than us but did an ad

14:16

service bureau And that took off because

14:19

it take a lot less investment for people

14:20

to you just stick a banner a tag on your

14:23

HTML page and then revenue just come

14:25

your way, right? Because the the the

14:27

service bureau kind of stick the app

14:28

there dynamically or that kind of stuff.

14:30

We had wanted to do that in our company

14:32

but then one of our board members said

14:34

no you should focus on get to profit

14:36

first before you expand. Oh, and we went

14:39

down the profitability path and we then

14:41

becomes like you know a bigger robust

14:45

enterprise solution where the other one

14:48

is and try to get profitable and the

14:49

other one is just expand through the

14:51

internet like raising Wi-Fi then after

14:54

that years later got bought by Google.

14:56

So that was the journey there. There's a

14:58

lot of lesson there about how to build

14:59

things.

15:00

>> So, so this was do I understand that you

15:02

you you saw that what happens when

15:04

there's a big market and you you focus

15:05

on profitability which which should make

15:07

sense but a player focuses on growth

15:10

even at being nonprofitable. It might be

15:12

able to swallow you in the end.

15:13

>> That's right. Look at what happened to

15:15

at Uber, right? We did not the right

15:17

move.

15:17

>> I'm starting to see how these things are

15:19

coming together. So now you're at the

15:21

startup which almost took off but not

15:23

quite. And then what was your next stop?

15:25

That company went public and then got

15:28

absorbed and after about seven years

15:30

there I had made it to the VP level. I

15:34

joined as an IC. Along the way I knew

15:37

that from my inspiration at the Silicon

15:40

Graphics day that if you want to do

15:41

something really big you need to

15:43

leverage other people. You can't do it

15:44

with your bare two hands. So then I

15:46

switched over to the management uh track

15:48

and I honed the skill and I got up to

15:51

directors and senior directors and then

15:52

ultimately got the VP and then after

15:54

about eight years, seven year, eight

15:56

year there, the com bust happened right

15:59

of that time and then uh I said well

16:02

maybe it's time to prove to myself

16:04

whether or not I'm just a one hit wonder

16:06

or I actually have skill that are

16:08

transferable. Just just one thing on the

16:10

dotcom bus because you kind of swept

16:11

over it because you you've now seen a

16:13

lot of like ups and downs but can you

16:15

take us a little bit back what actually

16:17

happened with comb bus because the

16:18

people I talked to especially were new

16:20

grads it sounded very very scary what

16:22

what did you feel like and what did

16:24

people professionals engineers all

16:26

around you feel like

16:27

>> the com bus was was kind of scary when

16:29

the correction happened right but before

16:31

that there was this exuberance that

16:34

everything is.com right pest.com

16:36

fubar.com everything is a.com webban.

16:39

Yeah, all of that stuff. I still have

16:40

the webb van bin in my garage actually.

16:43

And so, yeah, but then uh there there

16:45

was a shake out eventually. There has to

16:48

be sound business model that makes

16:50

sustained profit, right? Growth and

16:52

profit. Growth alone eventually burn,

16:54

you know, money and that's not good. Uh

16:56

you can grow fast, but eventually you

16:58

have to turn that into profit to be a

17:00

durable company. And so in that dot wave

17:04

there were massive company that emerged,

17:06

right? There was Yahoo, there's Google,

17:08

there's Amazon, all of those company.

17:10

There's also a bunch of other company,

17:12

web van and others, whatever that would

17:13

go under because they didn't have like a

17:16

strong value proposition that last the

17:18

the test of of time, right? So, yeah,

17:21

it's all about the what value you

17:23

deliver uh and whether or not it's

17:25

beneficial and valuable to the customer

17:27

that they're willing to pay, right? And

17:30

I think that's one thing that we

17:31

learned. Which one is like a real

17:33

fundamental strong business even though

17:35

it might not be a profit initially, but

17:36

which one are just a me too, right? Just

17:38

put a.com on something and and it's hot

17:41

there. There may be a lot of AI things

17:43

that's going on right now, right? Uh

17:44

eventually some of these things will

17:46

consolidate, some will go under, some

17:48

will become really awesome solutions and

17:50

all that stuff. And so, but the the

17:52

market will sort it out. In the end, the

17:54

the customer will vote on what they want

17:56

to spend the money on. Speaking of

17:58

building things that last versus things

18:00

that don't, one thing that always

18:02

separates the two is cold quality. And

18:04

that's what our season sponsor Sonar is

18:06

all about. Sonar, the makers of Sonar

18:08

Cube, is deeply rooted in the core

18:10

belief that code quality and code

18:11

security are inherently linked.

18:14

Highquality code is naturally more

18:16

resilient, and as agents start to write

18:17

code at a massive scale, that

18:19

verification layer becomes your most

18:21

important security parimeter. This is

18:23

where solutions like Sonar Cube advanced

18:24

security are valuable. With this new

18:27

malicious package detection, advanced

18:29

security provides a real-time circuit

18:31

breaker, automatically stopping agents

18:32

from pulling in unverified or risky

18:35

thirdparty libraries before they ever

18:36

hit your pipeline. The impact is

18:38

measurable, too. Developers who verify

18:39

their code with Sonar are 44% less

18:42

likely to report experimenting outages

18:44

due to AI. As per Sonar states of code

18:46

developer survey 2026 report, it's

18:48

really about closing the gap between the

18:50

speed of AI and the reality of

18:52

production security. What else is Sonar

18:55

doing to help reduce outages, improve

18:56

security, and lower risks associated

18:59

with AI and agenda coding? Head to

19:00

sonarsource.com/pragmatic

19:03

to find out. With this, let's get back

19:05

on what Swan did after the com boom and

19:07

bust. And there was a lot of layoffs,

19:09

companies going bankrupt. Did that worry

19:12

people around you? Did that worry you

19:13

that, you know, your your job could be

19:15

in danger or you might have a harder

19:17

time switching jobs or did you not did

19:19

was was it a very short-lived?

19:20

>> It lasted a couple years. Uh I remember

19:23

and during that time it was definitely

19:26

hard to to get a job. uh especially for

19:30

new college grad that's always the the

19:32

the first layer that get hit right when

19:34

everything retrenchs people want more

19:36

experienced people uh people want to

19:38

stress existing folks rather than keep

19:40

on you know hiring entry- level so that

19:42

you have to you know continue to invest

19:44

in right so it's just the economy of

19:46

time it it comes and go in wave um yeah

19:48

so that's always a certainly a very

19:50

scary time u but of course you know in

19:52

the longer range of history things

19:56

generally tend to recover But it it

19:59

caused a rearrangement and yeah so

20:01

during that time it was it was certainly

20:02

tough. Uh however I the way I look at

20:05

this thing is like yeah talents are

20:06

always talent right so people really

20:08

strong talents uh and who's really

20:11

hungry is always um try to punch above

20:14

their weight will always be marketable

20:16

right yeah

20:17

>> even in a downturn

20:18

>> even in a downturn so I think the key

20:20

thing is how people should even in peace

20:23

time invest in that skill never be

20:26

complacent constantly try to be better

20:28

and then in wartime or in rough time uh

20:31

those will save you right if people uh

20:33

just be very complacent atrophy with the

20:36

time and then when rough time hit it's

20:38

very very hard to recover from that

20:39

>> and then you went to VMware at this

20:41

time.

20:42

>> Mhm. Yeah. So um let's see after I went

20:47

from double click to that uh and then I

20:49

jumped into a fourperson company again

20:52

leaky roof and everything classic

20:53

startup that business did not succeed.

20:55

Uh it took about 3 years or so, got to

20:57

about 40 50 people in size and then kind

21:00

of ran out of money and then got

21:01

acquired by another entity that was

21:04

built with a security appliance product

21:06

with try to solve the problem of you

21:08

know uh intermediation of web services

21:10

traffic going through and uh it was a

21:13

very interesting security niche but it's

21:16

not a mass market thing and so it's hard

21:18

for a company to kind of break through

21:19

like that right uh and um but eventually

21:22

it it uh it went away but even then you

21:25

Those three years taught me a lot. Um,

21:28

okay. That you can survive even when you

21:31

do it from the ground up. Uh, then you

21:33

still have skill that you can pick up

21:36

despite the fact that that journey might

21:38

not end in like a commercial success.

21:40

Uh, but your skills still get better.

21:42

>> So you are getting better as a

21:43

professional even though

21:45

>> and that's something we have to trust.

21:46

We invest in oursel but of course we

21:47

invest in the company or vehicle that we

21:49

are part of and ideal case both side

21:52

succeed but if the other succeed at

21:54

least if you work really hard you will

21:55

gain some skill and then based on that

21:58

uh then you can then leverage all the

22:00

thing that you learned so far and all

22:02

the mistake that you've made all it got

22:04

you smarter and better and wiser uh to

22:06

look for the next opportunity. So uh

22:08

right after that I look at a bunch of

22:10

other thing when that company was

22:11

acquired and then I I went into VMware

22:14

um again when VMware was a pretty small

22:17

not very well known yet um so it was um

22:20

40 person organization and so that build

22:23

software to stitch together

22:25

>> so so VMware was still early

22:27

>> VMware was it's still early yeah there

22:29

was two there was three division um one

22:32

division that did the the workstation

22:34

desktop app and then there was the

22:36

division that does the hypervisor which

22:38

is the OS underneath the OS. Uh and then

22:41

there was my division that was building

22:44

enterprise software that stitched

22:45

together all of the hypervisor into like

22:47

a a cloud platform and management

22:49

platform. Right? So I was one for that.

22:51

It was our 40 people and we kind of

22:53

built the very first product suite for

22:56

VMware called virtual center that tied

22:58

to ESX. So that was um that was a really

23:01

really fun right people

23:03

>> and and then and then VMware really took

23:05

off. virtualization as a whole took off.

23:07

Uh in the early 2000s, VMware was was

23:10

core part of it. It was one of the main

23:12

things. So it was just uh was it a kind

23:15

of hockey stickish experience?

23:17

>> It was um not to the extreme of Uber. Um

23:21

but uh it certainly was because it was a

23:24

industry changing technology. It was a

23:27

game changer. Right? Before that there

23:29

wasn't anything like that. At first

23:30

people thought, "Oh, this is kind of

23:32

interesting tool on the desktop for you

23:34

to run a couple of, you know, Mac and PC

23:37

OS on top in on a PC, but the true power

23:41

was the ESX, right? The Yeah. And then

23:44

that's what you power data center. And

23:46

then of course that's the the hypervisor

23:48

but the the I think the key feature that

23:50

made VMware so useful was the whole

23:53

votion thing when you take a virtual

23:55

machine and you can migrate it from

23:56

hardware to hardware without any

23:58

perceivable downtime of the application

24:00

run on top with that capability. unlock

24:02

the whole cloud thing, right? Because

24:04

you have a thousand machine, it can look

24:06

like one. It can look like a C machine

24:08

and so application inside of your

24:09

machine will just scale and it will just

24:11

move itself and it can do whatever you

24:13

need to do, right? You can do DR, you

24:16

can do, you know, uh yeah all kinds of

24:18

things with it, right? So that's

24:20

actually make it very much like a cloud

24:23

operating system.

24:24

>> And then at VM where we also grew with

24:26

the company, right? So, so again I it

24:27

seems you have this history of you were

24:29

VP of engineering at the startup, you

24:30

stepped down to a small startup, you

24:32

then joined VMware and eventually you

24:34

became VP of engineering at VMware as

24:35

well, right?

24:36

>> Mhm. Yeah. Yeah. I have this weird thing

24:38

where when I get when the thing get

24:41

large um and I start to feel too

24:43

comfortable, I get nervous

24:44

>> really.

24:45

>> Yeah. And so that's where when at double

24:47

click when I got to VP and I managed

24:49

hundreds of people, I like is this a

24:51

fluke or is it real? So I had to go back

24:53

to a fourperson company and try to see

24:55

if it's real or not. That didn't succeed

24:57

really well, but the engine was healthy.

24:59

It was good. And then when a VMware

25:01

again is a smaller company and go big

25:03

and when it get really big again when

25:04

you get to a point where you're just

25:05

running things rather than breaking

25:07

ground and doing this thing or how hard

25:09

learning then you got to do something

25:10

different, right? So I keep on going

25:12

back small and when I get big I might go

25:14

back small again and

25:15

>> yeah so I'm seeing the pattern. So you

25:17

you got big at VMware and VMware was

25:19

doing amazing. What made you um look

25:22

around and how did you find this very

25:24

small company at the time called Uber or

25:26

it might have been Uber Cab I'm not even

25:28

sure how it was called.

25:29

>> It was Uber at the time already was way

25:31

before that. Yeah. Mhm. Yeah. It was

25:33

when after 8 years at VMware um and

25:37

sometime people change sometime company

25:39

change uh sometime both side change and

25:42

so um yeah for me what changed

25:45

personally for me was I reached to the

25:47

point where I didn't feel I could do

25:48

much more there. Right. I'm running 800%

25:50

engineing team. We're building this that

25:52

this software and and it's been like the

25:56

third generation of that software

25:57

already. We're tweaking, we're adding

25:58

more feature to it. I love my team and

26:01

all that. But you know, it's just more

26:02

of like keep it steady, keep it growing

26:06

and add more feature. And then the

26:08

company has also changed along the way.

26:09

you know, the the original founder left,

26:12

new crew came in, and there's a fair

26:15

amount of changes and personalities and

26:18

all that. And after a while, it just

26:20

felt like it's time.

26:22

>> So, so now with your background, like

26:23

you now have a super impressive

26:25

background. You probably could have gone

26:26

anywhere large or small. What was your

26:28

search process look like? And and then

26:29

how did you come across again? Cuz Uber

26:31

was still pretty obscure.

26:32

>> Yeah. Uh here's a really interesting

26:34

thing. People do ask me about what the

26:36

search process look like. How did you

26:37

sit together a career like that? My

26:39

honest answer is I didn't do any of

26:41

that. And um and it wasn't luck that you

26:44

that you bumble around and you find one

26:46

thing after another. It's actually

26:48

something different. It's that if you

26:50

try to do a really good job at every

26:53

company you've been working well with

26:57

all the people that you work with,

26:58

including your own team, your peer,

27:00

whatever it is. Over time, very slowly,

27:02

you accumulate a decent reputation in

27:05

people's mind. And people always come

27:08

and go throughout the industry. But if

27:10

you're good with them, to them,

27:11

whatever, they tend to remember that.

27:13

And then when you become available,

27:16

then people come to you.

27:17

>> Yeah.

27:18

>> Like this, how about this? How about

27:19

this? How about this? And then you

27:20

actually look at all those thing. And

27:21

then you can dig in and you can decide.

27:24

And so uh that played out multiple time

27:27

for me um in the in the valley. And

27:30

especially I think the biggest

27:31

breakthrough was Uber. Again, when I

27:33

left VMware, I didn't plan to do

27:34

anything, right? I'm said well let's sit

27:36

back and take a look see what's going on

27:37

and then uh Bill Gurley from Benchmark

27:40

Capital who invests in early investor in

27:43

Uber and guess what his tie was he knew

27:47

me from that net gravity startup a

27:49

decade before and so he we kind of knew

27:51

each other and then but of course when

27:53

we know someone you follow their

27:54

reputation and it was Bill who come to

27:56

me uh after he knew that I'm leaving

27:59

VMware hey can you take a look at this

28:01

one I'm investing it could be really

28:02

interesting so I went up to his uh his

28:05

um office in um San Hill and he shared

28:08

with me the board deck and how the

28:10

company is growing and then I understood

28:12

the the business model right to all of

28:16

you back then when I trying to recruit

28:17

some people it was like why Don why you

28:19

joining a taxi company right

28:21

>> yep I remember everyone's asking that

28:23

question exactly and so but I I knew

28:26

that and of course then we have to go

28:28

through like a pretty rigorous interview

28:31

process with Travis uh And uh yeah, but

28:35

ultimately it's about the connection

28:37

that lead to the the right thing, but

28:39

that connection uh and the opportunity

28:41

is basically tied to your reputation.

28:43

>> And then back then as I I I looked it up

28:46

and you also helped me with this, Uber

28:48

just raised it series B which was $30

28:50

million is value at $300 million which

28:53

was sizable but still not nearly the the

28:56

gigantic company that it later became.

28:59

And one fun fact that I I read about is

29:02

you had this very rigorous interview

29:04

traveler process which was tens of hours

29:06

or or something like that. Can you can

29:08

you talk about how that went?

29:10

>> It was impressive on that he did that.

29:13

It was he committed over 30 hours

29:16

interviewing me oneon-one.

29:18

>> Wow.

29:18

>> Yeah.

29:19

>> That's like several days of like long

29:20

>> two weeks worth of interviewing every

29:23

single day. A couple hours each day

29:25

minimum.

29:26

>> Yeah. with passion, with intrigue and we

29:30

end up after a while I kind of forgot

29:31

that I was being interviewed. It was

29:33

like through people kind of sharing

29:35

ideas like exchanging idea and sometime

29:37

disagree something and then kind of work

29:38

it out

29:39

>> and then you you showed me you took a

29:40

photo of like some topics that you

29:42

talked about like can you like summarize

29:44

what what those were?

29:45

>> Yeah. uh my very first meeting I drove

29:48

up to San Francisco and saw Travis in uh

29:50

in the office and we immediately went to

29:53

the whiteboard and he wrote down all the

29:55

topic on his head that you know he want

29:57

to talk about with me that was a really

29:59

long list there's a big long list of

30:01

general topics about you know hiring and

30:04

firing and communications and all of

30:06

that stuff or design everything else and

30:08

then there's a shorter list of very

30:10

engineering specific stuff what about

30:13

code quality what about QA what about

30:15

design um all that and then there is

30:18

also a list of shorter list of the five

30:22

things that he want to see in an

30:24

engineering team and and the culture of

30:26

the engineing team and yeah and so that

30:28

was the list and so after we wrote the

30:30

list um we start talking picking up some

30:33

item off the list and talk of course you

30:35

know in two hours I was supposed to meet

30:37

him for an hour it last two which is

30:38

actually good because we got totally

30:40

into it time ran out and then uh as soon

30:44

as I drove drove out of the office. I

30:46

barely get to the exit. I got a call

30:48

from the the recruiter say, "Go Travis,

30:50

we want to see you again and talk talk

30:52

some more." And so we did that. And of

30:54

course, he's very busy. He's traveling

30:55

around the all the uh regional offices

30:59

um to run the business. And so we set up

31:01

a Skype session every single day for two

31:04

hours each day and we will pick one of

31:07

the topic. That's why I took a picture a

31:08

photo of that whiteboard and he did the

31:10

same thing as a as a list of topic to

31:12

talk about and I still have it on my

31:14

phone today. It's it's so impressive to

31:16

me that cuz we'll we'll share that list

31:18

uh in this episode as well that

31:20

screenshot but that the fact that the

31:23

that the CEO would go into things like

31:25

code review like it's the hiring topics

31:28

I understand but but that he was so

31:30

engineering minded or

31:31

>> did you get a sense that he had the

31:33

vision that technology and engineering

31:35

would be just key to Uber?

31:37

>> Oh absolutely. I mean he he knew that

31:39

and it was very clear from the very

31:41

beginning that he viewed the business

31:44

has two major engine that powers it. One

31:48

is the operation you know bits and atom

31:50

right you got to have wheels physical

31:51

thing moving around the world and then

31:54

there's technology and technology is a

31:56

key part of that right no one side is

31:59

super appeal to the other but it require

32:01

both of those uh yeah and so that was

32:03

very key and I think he also knew what

32:07

he wants also uh and what he want in

32:09

whoever it is and so I think this list

32:12

and this this this series conversation

32:14

was for him to to vest that yeah Later

32:17

on, I I I think either he said something

32:20

or I figured out that it was actually a

32:24

simulation of what it's like to work

32:26

with another person

32:28

>> in that capacity. In the end, when we

32:30

inside, we all working with each other

32:32

all the time and can we disagree on

32:34

something? Can we work things out? Do we

32:36

have generally similar philosophy and

32:38

principle? And he did it himself. Yeah.

32:41

And so that Yeah. and and the the level

32:45

of passion and commitment he showed was

32:47

just really impressive from from this

32:49

side I can tell you uh for example

32:51

there's some session when we totally you

32:54

know in the middle of that and two hours

32:56

gone by and he had to like stop and

32:59

catch a flight to go somewhere else he

33:01

literally stopped and told me just wait

33:04

and he'd pick up his phone call his EA

33:06

and say can you move my flight and

33:09

continue the conversation who had that

33:11

level of commitment right and passion

33:13

and stuff like that and when you see

33:14

that it actually draws you in.

33:16

>> Yeah. So I guess it was not a question

33:18

that you joined but can you recall what

33:21

was it like from the inside especially

33:23

from an engineering point of view from a

33:25

systems point of view from like what was

33:26

going on?

33:27

>> So it was still pretty small. It was um

33:29

about 30,000 rides a day when I pulled

33:31

the data the the the weekend which is

33:34

always the busiest time when people move

33:36

around. Yeah. That weekend uh the the

33:39

day the the Saturday or Sunday before I

33:41

join I joiner Monday. um was about

33:43

30,000 rides a day. Uh and Uber was I

33:46

don't know 20 something cities around

33:47

the world at that point uh 2030 and so

33:50

it was very modest. The there's certain

33:52

things that were going for it already.

33:53

The the engineing team was very young

33:56

but uh pretty scrappy and uh pretty

33:59

committed and talented where whatever

34:02

need to get done by hook by group they

34:03

co together right and so and as a result

34:06

though the the the service was

34:08

beautiful. anybody who ride we only had

34:10

black car service at the time but the XP

34:13

was beautiful when for all the people

34:14

who ride it that's why word of mouth is

34:16

you know raging around and uh yeah and

34:19

so that was the really good part now the

34:22

thing that maybe Travis had foreseen or

34:24

whatever it is was the next phase which

34:26

as the company grow faster and faster

34:28

what happened right uh and by the way

34:31

the the the 40 engineer were very very

34:34

young I think in the 20s all of them and

34:37

um the system was built not to scale,

34:42

right? It was built for functionality.

34:44

It's actually

34:45

>> together and it worked.

34:45

>> Yeah. And it worked and it worked

34:46

beautifully, right? But it wouldn't

34:48

scale and it would crash and burn all

34:51

the time, multiple times a week. And

34:52

that was our lives in the trenches. The

34:54

hockey stick actually happened. Um yeah,

34:57

everything breaks. Uh and um and we have

35:00

to basically race against time to

35:02

actually figure out what would be the

35:03

next most critical thing that would

35:05

break and how to get ahead of it. And

35:06

one of the thing that drivers always

35:08

tell me even from the interview days is

35:10

you got to see around corner. So I try

35:12

my very best to see around corner this

35:14

that's and one of the first thing I I

35:18

did when the first couple weeks were

35:19

beyond getting the getting to know the

35:21

engineer and build relationship and

35:23

build trust was to start examine what we

35:25

currently have and what we need and

35:28

dispatch was the first thing

35:30

>> without dispatch there is nothing right

35:32

that's where you match the writers and

35:33

and drive

35:34

>> yeah it's it's our matching service

35:35

right when when it has the drivers the

35:37

writers and does the match

35:38

>> that's right and without that there's no

35:40

business right there's

35:41

And so yeah and I I start that was the

35:44

first system I looked at and I asked

35:46

some I I reviewed the architectures I

35:49

reviewed the implementation plan and um

35:51

it was very obvious that wasn't going to

35:53

get scale uh it was a JavaScript it's

35:56

NodeJS and it was a single threaded

35:59

thing and the engineer at the time where

36:03

when the city get larger and larger uh

36:05

they need more out of that piece of code

36:07

to power that city they would move that

36:09

piece of code into a larger machine with

36:11

a faster processor.

36:12

>> Vertical skilling only gets you exactly

36:14

so far.

36:15

>> So my role also is to do thing but also

36:17

to teach people along the way and so I

36:20

would just asking leading question to

36:22

the team and the team only have three

36:23

people three or four people at a time

36:25

and uh so I asked the engineer um okay

36:28

what would happen if the city get larger

36:31

and you have to support that because

36:33

every city is getting larger the ride

36:35

volume is getting larger and larger. Uh

36:36

then entry base said, "Oh, yeah, we just

36:38

we just move it to um a more powerful

36:40

processor and say what happened if you

36:42

get to the fastest process you can." Oh,

36:45

there are multiprocessors and then you

36:46

can get a four-way box and then you can

36:48

put multiple of these processes on them

36:51

and then you say, "Well, you got three

36:52

or four of these things servicing same.

36:53

Do they talk to each other? Do they

36:55

share the same state?" Not really,

36:57

right? So it become very partition. So

36:58

pretty soon by asking those leading

37:00

question, the engineer now discovered a

37:02

flaw that this thing would not scale,

37:04

right? And then and then I had to

37:06

establish the limit of where is the

37:08

brick wall and I basically said what's

37:11

the biggest city uh do we currently have

37:13

in terms of right volume and uh they say

37:16

New York City and I said okay when is

37:20

New York City is going to we can run our

37:21

capacity even handle New York City even

37:23

on the biggest box that we can get our

37:24

hands on it's about October and this was

37:27

around May okay and so it's like well we

37:30

have to rewrite it don't we uh and we

37:32

have to write it in a really scalable

37:33

way And uh and I only have two

37:35

requirement that I all I need. One is a

37:38

city has to be powered by multiple

37:40

boxes.

37:40

>> Yes.

37:41

>> And a box has to power multiple cities.

37:43

That's it. So you can have N byM.

37:45

>> You gave them these two constraints.

37:48

>> No new feature necessary. Just make sure

37:49

that we can do that. And then that allow

37:51

the business the company to just pour a

37:54

whole bunch of hardware behind that and

37:56

it will scale. Technically it will scale

37:58

infinitely right. And so the engineer

38:00

did that and because the requirement is

38:01

very simple uh we have to do it really

38:03

really quickly before we run out of time

38:06

uh run out of runway to survive and uh

38:08

so they did that and we actually

38:10

deployed that right around August

38:11

September right before it actually

38:13

>> and then on to the next problem database

38:16

going to be the next choke point right

38:18

and then the API monolith is going to be

38:20

the next choke point and we keep on

38:22

identifying all these things uh so

38:24

there's all these threat coming at us

38:25

and we have to establish like how much

38:27

runway we have until we like really

38:29

getting serious Star War there's no way

38:30

out and then get ahead of it

38:32

>> and so this was then the reason that we

38:34

had so many rewrites I I joined later

38:36

but rewrites were still continuously

38:38

happening and I think when you come in

38:39

you ask like why could have they not

38:41

written it properly the first time or

38:43

like but but I I guess do I understand

38:46

correctly that it was because a

38:48

sometimes you just build a system to

38:49

solve your problem and and and b you

38:52

don't always know how big this will say

38:55

a good example is the the New York

38:57

problem And then you take those

38:59

constraints and then you build a system

39:01

and then if those things change later

39:02

you might need to build a different

39:04

system.

39:05

>> Yeah. Um it also depends on how fast

39:07

you're growing that dictate how you make

39:09

and because the faster you grow the

39:11

shorter runway you have to survive right

39:14

given whatever architecture and system

39:15

that you currently have. And yeah the

39:18

the the question about how big it can

39:19

possibly grow nobody knows really. But

39:22

it's actually not fruitful to

39:24

pontificate on that. Yeah. It was all

39:26

about um how much time we have to live.

39:29

>> Yeah.

39:30

>> Right.

39:32

>> We don't we hit the brick wall and it's

39:33

no way out. Right. So yeah, and and if

39:36

that time is really short, then don't

39:38

overthink it. Just survive that and give

39:40

yourself enough runway to then live to

39:42

fight another day is what I like to say.

39:44

>> Growing fast like Uber did is a good

39:46

problem to have for startups until it's

39:49

not. And the pain points that come with

39:50

fast growth is a good time to mention

39:52

our season sponsor, Work OS. If you're

39:54

building any SAS, especially an AI

39:57

product, surprisingly, you reach the

39:59

need to build enterprise features like

40:00

SAML edge cases, directory sync, audit

40:03

logs, and all the things enterprise

40:05

customers expect quickly. Building that

40:07

infrastructure yourself takes months.

40:09

Work OS gives you APIs to ship it in

40:11

days. Authentication, SSO, SCIM, Arback,

40:14

audit logs, and more. All designed to

40:17

integrate directly into your product.

40:18

That's why companies like Entrophic,

40:20

OpenAI, and Cursor already run on work

40:22

OS. Skip the rebuild. keep shipping.

40:24

Visit workhaw.com. With this, let's get

40:27

back to Tuan's team rewriting the

40:28

dispatch system and the short breeding

40:30

space that this first rewrite gave them.

40:33

So that's what with dispatch, we knew we

40:35

had to do it very quickly, maybe by

40:38

ourself another 12 months. And after we

40:40

get through that point, then we have

40:42

another 12 months to think about the

40:43

next phase of survival for that team.

40:45

That's why the system need to be

40:46

rewritten several time. Let's say if my

40:49

requirement for the engineer was build a

40:51

system that will scale infinitely to the

40:52

test of time, it might take a year. We

40:55

never get there. We'll die before then.

40:57

>> Yeah. Speaking of of dying before, you

40:59

were given in 2014 a seemingly

41:01

impossible task. Travis told you you

41:04

have two months to launch in China. And

41:05

apparently launching in China was not as

41:08

simple as just like opening your API and

41:10

allowing the firewall. What was that

41:12

project like? I heard it was an

41:13

absolutely manic and crazy project. Can

41:15

you take us back what it was like? Yeah,

41:17

that that was one of the craziest thing

41:20

we've ever done, but it's also one of

41:21

the most amazing thing we've ever done.

41:24

Um, and now explain why so that that is

41:27

so so I remember very very clearly right

41:29

around Christmas time 2020 14. Uh we

41:33

were all hanging out in the the the the

41:36

the

41:38

big room in uh 1455 and Travis made a

41:41

declaration that okay come the new year

41:45

I'm going to light it up and we're going

41:47

to go into China. Okay. And then he

41:49

turned over to me. It's like I want the

41:51

uh and one of the requirement at the

41:53

time was that we have to run our

41:56

services on China soil, right? And data

41:59

center physically there

42:00

>> physical data center needs to be there

42:01

>> until then we kind of dabble in dirt

42:03

water by powering it from from the US.

42:06

Okay. And we have a limit of time um to

42:08

do that but he's going to light it up.

42:09

We're going to do that. And I said he's

42:11

like two months. And I said well that's

42:13

really tough. And he's like why is that?

42:15

because I can go rack all the machine

42:18

and copy the software over and shouldn't

42:20

take more than two months and then I

42:22

have to like explain that it it's not

42:23

that easy because when you do that then

42:25

it work on day one and then the two

42:27

drift and how you going to maintain that

42:28

right we don't have twice the

42:29

engineering team to actually manage two

42:31

different system that deviate

42:33

>> so the right way to do that is you build

42:35

rearchitects whatever you need to do to

42:37

kind of build one system that that can

42:39

be partitioned right so I think there's

42:41

a huge security concern right because

42:43

there are anything that runs over there

42:46

cannot presume to have any level of

42:48

privacies or anything like that. Uh but

42:50

over here we have to protect everything

42:52

right. So we have to build that same

42:53

system that has completely partition of

42:55

data and controls and everything else so

42:57

that yeah nothing bleed across but it

43:00

has to be every time you deploy code you

43:02

have to close everywhere right so you

43:03

have to re rebuild a lot of things and

43:07

uh so I went to the TPM team and asked

43:11

uh the team to actually scope it out and

43:13

I think

43:13

>> TPM technical program manager

43:15

>> technical program manager and um I think

43:17

the best path for us was about six

43:19

months and that was the fastest we can

43:21

even imagine

43:23

I benchmarked with a few of my friends

43:24

in the industry and they kind of laugh

43:26

at me and it's like 18 months minimum

43:28

thing. Uh but you know that was Uber so

43:30

we just like we didn't think too much

43:31

about it. was like well that that um

43:33

let's do that and then driver didn't

43:35

like the the six months so we kind of

43:37

settle around four months right so and

43:39

so

43:39

>> because he didn't like

43:40

>> we just split the difference we didn't

43:41

know anything but we just want to heads

43:42

down and start getting to it and so we

43:44

look at oh what need to change given

43:46

like this is the end u uh goal and the

43:49

requirement and then with everybody

43:51

start getting really busy uh working a

43:54

lot of hours to stop making these

43:55

changes and four months come and we are

43:58

still a month or so short so we slip the

44:02

winter trappers and he's not too happy

44:03

about that but it's fine right and then

44:06

uh five months comes around and we're

44:08

very close but we're not there we're

44:10

about to slip again and so uh it was not

44:12

h definitely not happy then but we

44:14

actually

44:16

talk it out and I said the team feel

44:19

very confident that within a month we

44:22

can launch but he had to give us

44:25

something that mean give us a ability to

44:27

incrementally launch instead of lighting

44:29

all the city in China oper once let let

44:32

us do it in phase right every single

44:35

week we'll launch a number of cities and

44:37

then we're going to do it in a process

44:38

of like a few weeks and then we're done

44:40

with that and he said okay that's

44:42

reasonable but he want the the biggest

44:45

city first and that's Chungdu

44:48

>> so he he agrees to the incremental

44:50

launch but you need to start with the

44:51

biggest

44:51

>> start with the biggest first

44:54

yeah exactly but it it is brilliant

44:56

though you think about it uh I I I

44:58

thought a lot about that you know over

45:00

time and that was the most brilliant

45:02

thing because by doing the hardest thing

45:05

first once you launch that everything

45:07

else is downhill from there the team has

45:10

this swag the team know would go into

45:12

the next set of city with confident had

45:14

we done the traditional way let's start

45:16

with the safest one the smallest one

45:17

first and next one we step it up on the

45:19

surface it seemed like oh it's a very

45:21

good risk control measure but every

45:24

single week we'll be holding our breath

45:26

until it's done it's not done right but

45:28

this time we we did everything we and to

45:30

do the hardest thing first and after

45:32

that it just the routine process

45:34

throughout the rest and that it worked

45:35

out exactly like that and so yeah we got

45:38

it done and a bunch of people were

45:40

really burnt and then they took like a

45:42

month off go to the beach and did

45:43

nothing except stare at the water I know

45:45

some other did that uh but after that

45:48

though we're not fearful of anything we

45:52

did like kind of the impossible and

45:54

>> I I I I talked with a friend at who

45:57

worked at the IT team at the time and

45:59

his job was just to get the servers

46:01

physically set up and he said that

46:03

>> the timeline was so impossible. I think

46:05

they had two weeks from start to finish.

46:07

They had a little bit of time to plan

46:08

but they were on the site. They were

46:10

just and and when I gather the stories

46:12

from the software engineers who worked

46:13

on it, everyone had their own impossible

46:16

task and project and they all thought it

46:18

couldn't not be done and then somehow it

46:20

all came together.

46:21

>> That's right. None of us thought the

46:23

whole thing that could be done, but we

46:25

just got our head down and we just, you

46:27

know, break it apart and just do it one

46:29

step at a time.

46:29

>> And then I think needless to say, but

46:31

the China launch was a massive success.

46:33

Uber started to compete head-on head

46:35

with the leading Chinese provider DD.

46:38

And they were is pretty much head-on

46:40

head uh very intense competition all the

46:42

while competing with the rest of the

46:44

world as well.

46:44

>> That's right. Yeah.

46:45

>> So that that was something incredible.

46:46

That was something incredible and I

46:48

think just the experience having gone

46:49

through that and doing thing that

46:51

initially you didn't think was possible

46:54

just increases everyone's confidence and

46:56

range and and that's what stretching all

46:58

about and I think that there's a saying

46:59

that Travis like to say that sometime

47:01

you have to be willing to redline

47:03

yourself a little bit right and that's

47:05

how you you you prove that you can

47:06

actually do a lot more than you can that

47:08

was the fearlessness of the and the

47:10

risk-taking culture that he won in the

47:12

company in the first place

47:13

>> one thing that Uber has been very very

47:14

well known about from the outside is

47:17

microservices and from the inside one

47:19

thing that uh has been very talked about

47:21

is a program and platform split. Can you

47:24

tell us which one came first and and how

47:26

do we get to as many microservices as we

47:29

did? The program and platform came

47:30

first. Yeah. And microservices came

47:33

later. Um and the platform and and uh

47:36

program platform as an organizing

47:37

structure came first out of necessity.

47:40

When I came in April of uh 2013

47:43

uh we had 40 engineer and three product

47:46

manager.

47:47

>> Yeah.

47:47

>> By the end of that year um we had about

47:50

a 100 engineer and a dozen or so product

47:53

manager. Even at that really small size

47:56

we ground ourselves to a halt with a

47:59

functional or structure. Uh imagine a

48:02

low tone engineer there about up to

48:04

eight or 10 mobile developers uh a

48:07

number of infrastructure engineer and a

48:09

bunch of backend engineer etc etc and um

48:12

five eight people or so at dispatch now

48:14

but every feature that we want to put

48:16

out has to be queued up on mobile

48:19

development bandwidth dispatch bandwidth

48:21

and it become impossible to navigate

48:23

tradeoff because every feature you want

48:26

to do you have to go negotiate with so

48:27

many team right and so then the team

48:30

want to move fast and start to feel that

48:32

friction and complain right away. And

48:35

that's a good thing, right? You know, we

48:36

raised a concern. And so I remember uh

48:39

Travis and Jeff Holden and I saw that

48:41

and we got together for a couple days

48:44

actually and I remember we had uh sticky

48:48

note all the different colors each color

48:50

represent a different function

48:51

engineering product designer um and uh

48:56

we put one person name to each of the

48:58

sticky note and then Travis gave a talk

49:02

about what are the most important area

49:04

of the business that he think right and

49:06

at the time they were like 17 area that

49:10

he can think of the the world of Uber

49:12

can cover 17 area turned out to be a lot

49:15

more than that but at the time it was 17

49:17

we didn't have enough to fund 17 we had

49:19

enough to fund seven plus a few more

49:22

right so we fund seven uh with partially

49:24

the next four and that's it and the rest

49:27

can remain empty until we hire more

49:29

people and we fund it and so that was

49:31

the the the the thing but then as part

49:34

of that process we then put sticky note

49:37

onto each of these area has to be a

49:38

cross functional team because we can no

49:40

longer afford to run in no uh yeah cross

49:42

function rather than a functional team.

49:44

>> Yeah, which means that there's like a

49:45

back end, a mobile and whatever else

49:47

they need like a design if they need to

49:48

etc.

49:49

>> That the the concept is that team has to

49:51

have all the skill set necessary to just

49:54

get it done. Whatever they have to do,

49:55

they just go off and they do that.

49:57

Right? So that was the the principle

49:59

behind that decision and then we call

50:01

some of those program and some of them

50:03

platform. So programs are the team that

50:05

build thing that the end user actually

50:07

use and the platform are the thing uh

50:09

that build tools and layer that other uh

50:12

program team use and that was it sort of

50:14

horizontal versus vertical kind of

50:16

thing. So and that's that and and then

50:18

after we define that then we start

50:20

putting the right sticky note onto that

50:22

box and then that's how the first

50:24

version of programming platform came

50:26

about.

50:26

>> And then how did microservices start and

50:28

how did they blossom as much as they

50:30

did? Yeah, again um you know none of us

50:32

wanted to go through that extreme but

50:34

lots of time when you are under a lot of

50:37

pressure and no time to react other than

50:40

just to survive that scale that keep on

50:41

coming at you, you have to make uh

50:44

decision that increase uh speed and

50:48

velocity because speed and velocity

50:50

allow us to build quick enough to

50:51

survive and so um we knew right away

50:55

that the the backend API which is a

50:57

monolith, right, is the thing that will

51:00

prevent prevent speed from happening,

51:01

right? So, we made a declaration

51:03

anything that is new need to be built

51:05

outside of that. Yeah.

51:06

>> As a microser. Okay. And then there's a

51:08

team that's dedicated to decompose that

51:12

that monolith that API monolith into a

51:14

bunch of services.

51:15

>> Yeah. We used to call it API, right? I

51:16

think

51:16

>> that's called API, right? And uh I think

51:20

that project name is called Darwin.

51:21

>> Yes, Darwin. Oh, I remember.

51:23

>> Yeah. And interestingly, had we freeze

51:27

time, that piece of code could be

51:29

decomposed in a matter of 3 to 6 months.

51:31

But it took us 2 years to do that

51:34

because as we peel out a piece of code,

51:37

the business keep on going forward,

51:38

right? These hockey sticks are laying on

51:40

top of each other now as we launch new

51:41

city and happening fast.

51:42

>> New city and new product Uber X.

51:44

>> That's right. Feature has to be added

51:45

on, right? And so the philosophy we all

51:48

operate at the time was no one should be

51:50

blocking anybody else. No one can block

51:51

anybody else. And so when a team that

51:53

need to build a feature and that thing

51:55

hasn't been pulled out of monolith, they

51:56

add to the monolith, right? And then the

51:59

team that pulls it out do the best that

52:01

it can and then we kind of keep chasing

52:03

our own tail until eventually you know

52:06

something get completely pulled out and

52:08

as it happened it bulges up like this

52:11

the monolith right because you pull out

52:12

one thing the remaining stuff grew even

52:15

faster than the stuff that you pull out.

52:16

So the code base get larger and larger

52:18

eventually reach to a certain point when

52:19

it start to come down and that's why it

52:21

took two two years and meanwhile

52:23

everything that is new must be auto

52:26

because we don't keep on adding stuff

52:27

right to to the monolith and so that's

52:29

how it came up to to like you know

52:32

thousands of microservices but that was

52:34

out of necessity so that we can just fan

52:36

out and solve every problem all at once

52:38

and then over time after things

52:40

stabilize and so the business more

52:42

mature and growth is not as violent like

52:44

that anymore uh then the team uh we

52:47

actually have a project called ARC. We

52:48

can look at this stuff and how do we

52:50

clean it all up. So we put like domain

52:52

interfaces on top a whole bunch of

52:55

microservices that are within the same

52:56

domain. It's

52:57

>> it's funny because I remember that

52:58

around like 2016 or so there was a

53:01

published Uber blog post that Uber had

53:02

about 5,000 microservices and I just saw

53:05

about a few months ago Uber published

53:07

another one and they have about 4,500.

53:10

So in that 10 years the number has gone

53:13

slowly gone down right to go down but

53:15

even then right now Uber has so much

53:18

more complexity right yeah it's the

53:21

process what took a little while but

53:24

when yeah the team had to look at

53:25

everything and how do we simplify that

53:28

right and and then to make sense out of

53:30

that the new tool has to be invented by

53:32

us gagger the tracing tool all of that

53:34

stuff and so that be really great tool

53:35

that we open source to

53:36

>> and let's talk about h how and why Uber

53:39

built so much internal tools and also

53:40

open source a bunch of them. Jaker was

53:42

one of them but internally we had

53:44

schemaless a trip data store T channel

53:46

RPC protocol ring pop g spatial placing

53:49

clay service framework you monitor

53:51

observability and there's like hundreds

53:53

of others some of them open some of them

53:54

not

53:55

>> how were you thinking about that like

53:57

does it not seem like a lot of waste for

53:59

us to build this or was it again

54:00

necessity

54:01

>> it was mostly necessity I can't claim

54:03

that every single one of those thing

54:05

were absolutely necessary but all the

54:07

important one were absolutely necessary

54:09

the thing is when when I started

54:11

Uber used pretty much all the open

54:14

source stuff. We use Reddis, we use

54:16

everything, right? Because those the

54:17

engineer there just focus on putting

54:19

together a service that actually move

54:20

cars. But then as we scale uh we keep on

54:23

using uh pushing the boundaries of the

54:26

capability of those um um open source

54:29

stuff and to the breaking point and at

54:33

certain point if we don't invent

54:35

something to power our own need. By the

54:37

way, this is 2013, 14, 15, 16. It's not

54:41

as mature as

54:43

>> we did not have the kind of the big tech

54:45

investment in open source back then.

54:46

There was very little and and mo most of

54:48

the big teams like Google and Facebook,

54:50

they were keeping their inside.

54:53

>> I remember like for example a very

54:55

painful example of that we had to face

54:58

early on was we use Postgress.

55:00

>> All right. and we get to certain scale

55:03

that postquest would randomly fail and

55:06

that take our services down randomly

55:08

without we don't understand it's inside

55:10

the kernel I remember the time where I

55:12

had to go on LinkedIn begging people who

55:14

anybody on LinkedIn that has any

55:16

knowledge of postgrad to be our

55:18

consultant to help us diagnose this

55:20

problem and we spent several weeks and

55:22

during that it was terrifying because I

55:25

don't mind if we think we can do

55:27

something of our own problem it's

55:29

terrifying when we have a major problem

55:31

and we depend on somebody else and we we

55:33

don't know because it's open source

55:34

there's no single person no some single

55:36

company I'll be willing to pay anything

55:37

if someone can give me an answer but

55:39

there was no one right and so that was

55:41

one of the motivator to kind of build

55:43

our own you know data layers and all of

55:45

that stuff as well so that we would use

55:47

this generic database uh and we end up

55:50

using uh my SQL just as table data store

55:54

all the logic on top we have to build

55:56

for our own use right because then we

55:57

control our own state and we only build

55:59

the feature that we really need, right?

56:01

And so that was one of many example and

56:04

eventually we run into other brick wall

56:07

of scaling. I remember in 2015 right

56:11

around the holiday I was taking a

56:13

holiday trip. I had to go to the airport

56:14

and I I took an Uber ride as usual. The

56:17

receipt didn't come for 2 days after

56:19

that, right? Why is that? Things were

56:22

queuing up. We weren't processing things

56:24

enough, right? And so yeah, but that's

56:26

not a dealbreaker for many people

56:28

because they just ride and then receipt

56:29

come later. is fine uh as long as the

56:31

building and all the stuff even when you

56:32

build people late they don't really mind

56:33

that either right but as long as the

56:36

right happened the rest of stuff can be

56:37

processed later but it's still not great

56:39

okay when I dug into it like our data

56:42

processing capability is at capacity

56:45

right so we have to rewrite a bunch of

56:48

stuff and then our cap ability to

56:51

monitor things is reaching a breaking

56:53

point with the open source tool that we

56:54

use so the M3 has to be invented right

56:57

and all of that stuff so we we allow lot

56:59

of we had to do thing because we at the

57:01

scale where we broke all the open source

57:02

stuff that we use

57:03

>> at Uber we did unusual things one of the

57:05

most unusual projects which is where you

57:07

and I met when I joined Uber was called

57:10

internally called Helix it was

57:11

completely writing Uber's app and as I

57:14

understand what happened is Uber's user

57:16

experience was starting to degrade

57:17

because it was really cluttered got a

57:20

bit fed up with it the designer team

57:22

came up with a solution which was a very

57:24

nice and clean UI which kind of the

57:26

engineering team looked at it and it

57:27

would have been a full rewrite And then

57:29

we just did a full rewrite. Back then I

57:32

remember we had a million or two million

57:33

lines of code. We had two or 300 mobile

57:36

engineers working on this. This was a

57:38

massive business and there was an

57:40

extremely tight deadline set. Can you

57:42

take us back on why did we even do this

57:45

>> because from it didn't feel it felt

57:48

existential threat from the inside but

57:50

it was not like uh like a plus versus uh

57:53

versus Facebook existential thing. And

57:56

how did we decide on that short

57:57

deadline?

57:58

>> Yeah. Um it seemed like a recurrent

58:00

theme that keep on coming up was a tight

58:02

deadline, right? Everything we do had a

58:03

tight deadline. It's just it's yeah it

58:05

just that's just how the culture role.

58:07

Um anything we want to do want to do as

58:08

fast as we can. Um but going back to uh

58:11

why Helix um actually Travis has a

58:15

vision right and it's actually not just

58:17

the designer Travis and uh Yuki who was

58:20

the lead designer at the time they pair

58:22

up and they all the storyboard and

58:24

everything else. So he has a vision

58:25

where the current app back then was too

58:29

limiting. Yeah, it's really good. Push a

58:31

button, get a ride, all that stuff. But

58:32

if you want more services to hook in

58:35

other things, right, messaging and all

58:36

these other things as people were

58:38

riding, uh the new architecture allow it

58:41

was much more open, right, to all those

58:43

things. Uh and so that was the the

58:46

vision behind that. And then when we're

58:47

doing that, the aesthetic is really

58:49

important. The icon change and all of

58:51

these things change. Oh, yeah. And so

58:53

but that but that is yeah it's beautiful

58:54

right that's actually Travis and Yuki

58:56

right they were and then of course when

58:58

when that fleshed out to a certain

59:00

amount um then the engineering team the

59:02

mobile team get involved and it's not

59:04

just the mobile engineer the back end

59:05

had to be written to everything

59:07

>> we we we changed from uh the heartbeat

59:09

where every 5 seconds we would pull and

59:12

it was pretty painful to an actual push

59:14

uh push channel

59:15

>> yeah this part with that by by that time

59:17

it's called real time system now right

59:18

yeah it has to change back end has to

59:21

change everything has to change to port

59:22

the new flows and then all that stuff

59:24

and so yeah it it took I don't know 6

59:27

700 engineer all told 7 8 months to

59:30

actually do it then we put it off and it

59:32

still live today it's still on that same

59:34

architecture it was so far well thought

59:37

out it's almost like future proof in

59:40

that design so it's still used today

59:41

it's still beautiful today and if you

59:43

compare that with the previous version

59:44

it actually was definitely the right

59:46

>> yeah and it was scalable user experience

59:48

>> I take no credit in that it's like the

59:49

genius of Travis and Yuki

59:51

>> you every now and then sent emails to

59:52

all of engineering on different things

59:54

and I remember this really really

59:55

emotional email coming from you uh about

59:58

naming.

59:58

>> I see all this and I understand that

60:00

young engineer want to have fun.

60:03

>> We were having fun.

60:04

>> Yeah. And name things in a goofy way. I

60:07

think the trigger for that was a service

60:09

named Mustafa. I have no idea what it

60:12

is. Right. I look at that stuff and and

60:13

by that time we were already very

60:15

complicated, right? And we had to

60:16

onboard new engineer all the time. we

60:18

want builders to ramp up quickly etc etc

60:21

and I can imagine an engineer come in

60:23

here and if all these weird name have no

60:25

context to it uh at the time our tooling

60:28

wasn't that great either right you blame

60:30

didn't come into existence yet right and

60:32

so there's no mapping for people to

60:35

discover what this really mean and then

60:37

those we renaming scheme so I got to the

60:39

point where I'm kind of fed up so I send

60:40

that email out of course you know those

60:42

mass emails sometimes you regret after

60:43

you send it out because it has some

60:45

effect but it didn't really solve

60:47

>> and I I think it very quoted because you

60:49

specifically wrote this is not a Mickey

60:50

Mouse shop.

60:52

>> Exactly. We're not Mickey Mouse. We and

60:54

and yeah, it was uh again it was it was

60:56

a growing up phase for everyone in the

60:59

company. But it was it was my

61:01

frustration at the time was look at at

61:03

this scale inside we got to take

61:05

ourselves seriously. We got to do thing

61:07

better faster and this is not helping.

61:10

Tuan's been talking about improving

61:11

things as the orc scales such as moving

61:14

to a more mature naming policy.

61:15

Introducing new and better approaches as

61:17

the company matures leads us nicely to

61:19

our presenting sponsor stats. Statseig

61:22

built a unified platform that enables

61:24

both experimentation and continuous

61:26

shipping. Built-in experimentation means

61:28

every roll out automatically becomes a

61:30

learning opportunity with proper

61:32

statistical analysis showing you exactly

61:34

how features impact your metrics.

61:36

Feature flags lets you ship continuously

61:38

with confidence, roll out to 10% of

61:40

users, catch issues early, roll back

61:43

instantly if needed. And because it's

61:44

allin-one platform with the same product

61:46

data, teams across your organization can

61:48

collaborate and make datadriven

61:50

decisions. They have a generous free

61:52

tier to get started and pro pricricing

61:54

for teams starts at $150 per month. To

61:56

learn more and get a 30-day enterprise

61:58

trial, go to stats.com/pragmatic.

62:01

With this, let's get back to Tuan. We we

62:04

started to do better names. One other

62:05

thing that was very very unique to Uber

62:07

across the industry and it caused a lot

62:08

of confusion from the outside is Uber

62:11

senior level. For a while Uber had a

62:13

senior engineering level called L5 which

62:15

is common and then at some point you

62:18

were the leadership team cut it into

62:20

two. There was L5A and L5B senior one

62:22

senior 2. Can you talk us about why you

62:25

did that and where did you get the idea

62:27

from?

62:28

>> I did that. I'm I'm not apologize for

62:31

it. I think it was a good move at a

62:32

time. Um and the the the principle was

62:36

we want people to grow right but we have

62:40

a very clear definition and expectation

62:42

of what it is at the staff engineer

62:44

level because we benchmark ourselves to

62:45

all the great company out there Google,

62:47

Facebook and all that

62:49

>> and then I realized that for many

62:52

engineer crossing from senior engineer I

62:55

mean um engineer two pass through the

62:58

senior engineer to get staff it could be

63:00

a fiveyear journey.

63:02

Okay, it's a long time and so I just

63:04

want to break it in two so that people

63:07

get that sense of progress and then also

63:11

not everybody can make it to staff,

63:13

right? But some people it's good enough

63:15

to make it to senior

63:17

>> senior too. Yeah.

63:18

>> And I think that's a benefit. It's not

63:20

right but versus like not doing it and

63:22

everybody kind of just get lost in that

63:24

five year you know journey. Um yeah and

63:28

so that was the the motivation behind

63:30

that. So you saw a problem and then this

63:32

was a solution and it it it worked we

63:34

can say right

63:34

>> it worked for a while right and then

63:37

people were acclimatized to that and

63:39

then they start complaining it's like oh

63:41

why there's two level we need to get the

63:43

staff faster uh and then while I was

63:45

there I held on to that because I was a

63:48

principal and staff is staff compared to

63:50

the best of the industry

63:52

>> u and later on after I left I think it

63:54

got

63:55

>> re they got pushed down L5B is now staff

63:58

everything got pushed down

63:59

>> inflation and I I didn't want to do a

64:01

cytoin inflation thing.

64:02

>> I I I appreciate that. Another email

64:04

that I I remember from you is in 2016

64:06

you sent an email saying you've heard

64:08

the feedback that NGS are unhappy

64:09

because their managers not support them

64:11

and then what you wrote is like we are

64:13

creating an easy internal transfer

64:15

process. You can move teams how how was

64:17

that received and again how did you

64:19

decide that we need to do this? I look

64:22

at um the talent base and I think it is

64:28

best for us to create opportunity for

64:30

people to keep on growing with fresh new

64:32

challenges within the company because if

64:34

we don't do that they would leave the

64:36

company and seek uh and then I thought

64:39

about the next logical step which is hey

64:42

if people come to us and just resign

64:44

they didn't tell us when they interview.

64:47

>> Yeah. And so why the heck do we have

64:48

like these rigorous process when you

64:50

have to ask your manager for permission

64:51

to go to another team. Yeah. Why do we

64:53

make it harder for ourself right when

64:56

our own engineer go from team A to team

64:58

B have to ask for all these uh you know

65:02

permission where they don't have to ask

65:03

if they interview outside. Yeah.

65:05

>> That just doesn't make any sense.

65:06

>> Basically it's easier to interview

65:07

outside or it was easier to interview

65:09

outside.

65:09

>> So that didn't make any sense to me and

65:11

so I said well let's not have that.

65:13

Right. And that also has maybe a good

65:16

side effect where manager now need to be

65:18

incentivized to take care of people

65:21

great develop them grow them you know

65:24

put position the best people into the

65:26

best time for them to grow and then they

65:27

not like to leave their own team right

65:29

if they continue to grow. So there's all

65:30

of that you know that back pressure

65:32

might cause engineer managers to be a

65:34

little bit more responsible too. So that

65:36

was that and I remember that get quite a

65:38

bit of push back because it would be

65:39

pretty radical at the time you but we

65:41

just did it anyway and so that that

65:43

turned out to be the the right thing to

65:44

move right and I would rather people

65:47

trust each other and when an engineer

65:50

want to go they should have a really

65:52

great relationship with their manager

65:53

where they just talk to man hey look I'm

65:55

I'm I want to do this and the manager

65:57

should be generally supportive instead

65:58

of like no you belong to me that kind of

66:00

thing which is the the wrong thing I

66:02

have a saying that I share with you guys

66:03

all the time

66:05

It's not a jail. We can lock anybody

66:07

down, right? Everybody have free will.

66:08

If they want to work, you know,

66:10

somewhere, they should have the ability

66:11

to do that. And uh we should create more

66:13

opportunity and then we also to support

66:15

that. We publish internal job board,

66:20

right? Anything on the outside see we

66:21

see on the inside. So any should be able

66:23

to shop within all the opportunity have

66:24

inside the company and stay with the

66:26

company. And why make it so hard and end

66:28

up leaving the company? That's just a

66:30

silly thing. I remember at Uber in in

66:32

some of the the meetings either all

66:34

hands or team meetings you you gave

66:36

talks that were memorable and one of the

66:38

most memorable I I asked around former

66:40

Uber folks and Charles specifically he

66:42

was on the podcast he told me that his

66:44

most vivid memory of you is this talk or

66:48

or this topic about behaving work in the

66:50

perspective of death. Yeah, I don't

66:52

remember that exact speech but I I do

66:54

have that line of thought in my head all

66:57

the time right and sometimes I would

66:58

share with different audience with

67:00

different context but it is um it's all

67:03

about finding one's you know purpose and

67:08

not take oneself too seriously right if

67:12

you look at uh people the most

67:14

accomplished people don't take

67:16

themselves that seriously right the more

67:17

you know the more you know you don't

67:18

know kind of thing and people who are

67:20

arrogant tend to like not know enough

67:23

yet or they have to all that right so um

67:26

yeah so I always take opportunity to

67:28

remind people to sort of be humble and

67:30

the example I use always is use myself

67:33

right I say look you know when you're in

67:36

an important position people treat you

67:38

really well but don't let that get to

67:40

your head it's not you it's the position

67:43

you hold and I remember saying this like

67:45

the moment I stop being salt

67:49

right And that's always happened, right?

67:52

The the world forget about us, right? So

67:54

the only thing we can really do is in

67:57

any job that we do, do the best that we

67:59

can to help each other to leave a

68:01

lasting positive impression in each

68:03

other. And one day everything ends a job

68:07

end and then I'll get to the mor stuff

68:09

like life even end itself. And so then I

68:12

measure my myself like what is my

68:15

achievement that I will be most proud

68:18

of? And I said, well, when I'm gone, the

68:20

thing I'm most proud of is how many

68:21

people remember how I was good to them

68:24

or helpful to them and for some number

68:26

of years, right? And that is that

68:28

because I can't take anything with me.

68:30

And so live in the moment, be as best as

68:33

you can to everyone and be very as

68:35

constructive as you can and uh and and

68:38

leave a good legacy behind you. So that

68:39

that that was a whole gist of that. It

68:41

it feels to me sometimes there's talk

68:43

about how you can network better and

68:44

grow your network, but sounds like this

68:46

is almost like it's it's not a hack.

68:48

It's just do the work, right?

68:49

>> Do the work and then the right thing

68:50

happen, right? But you can't do the work

68:53

in service of that goal because that's

68:55

very artificial, right? Just be genuine,

68:56

just be yourself, be helpful, be

68:58

constructive, uplift everybody, help

69:01

people along the way, coach you being

69:03

doing it altruistically. And let me tell

69:05

you another angle too which I personally

69:07

experienced over and over again. It's

69:08

not only that other people around the

69:11

industry pull you into good stuff. When

69:14

you pull in and you don't have people to

69:17

support you succeed, you would not you

69:19

would not succeed also. And here is an

69:21

example at at Uber right when I came in

69:24

uh again the engine we talk about very

69:27

very young in experience did not know

69:28

how to build system at scale reliable

69:31

all that stuff and the network that I

69:33

have who really knew how to do that was

69:35

from VMware. You're building system

69:37

software. We're building operating

69:38

system. Right. Rigorous principal level

69:40

engineer all

69:41

>> experience. No like in their sleep they

69:43

can do it. Right.

69:44

>> Right. So when I came in and when I have

69:49

to like um work with the team on

69:51

dispatch I pull in the first engineer

69:54

from Uber to to lean land on that team.

69:57

Right. His name is George. And so he

69:59

there and he work for everybody else or

70:01

uplift everybody there. Right. That and

70:04

then

70:05

>> from VMware.

70:05

>> Yeah. Yeah. Yeah. Yeah. And then when I

70:08

build payment system, let's pull in

70:10

another a few more one. And then when we

70:13

get to build schemalas, it was a Denmark

70:15

team, right? I pulled the top four

70:18

engineer from my VMware team in that I

70:20

moved them down from one floor to the

70:22

next in Denmark.

70:24

>> This is why we had a Denmark office

70:25

which was correct which was one of the

70:27

best infrastructure offices at Uber

70:28

>> and they built schemalist.

70:30

>> They built schemalist. They they built a

70:32

lot of other

70:32

>> right. And so now if I weren't a good

70:36

person doing a good job for them with

70:39

them or what why would they come?

70:40

>> Yeah. They would they wouldn't answer

70:41

the phone.

70:42

>> Yeah. They wouldn't answer the phone,

70:43

right? But every single one that I call

70:45

because I really needed help, they all

70:47

came. Initially they all asked the same

70:48

question. Why taxi company? But when

70:50

they understand that they came, right?

70:52

But they came because they still enjoy

70:54

working with you. Right? There are

70:55

people who work with me for five

70:57

different company over 28 years. And

70:58

that always surprised me and I think

71:00

this is something that people might

71:01

overlook a little bit as they're

71:02

building out offices or I'm talking with

71:04

founders is one thing is where you can

71:06

hire the other thing is where people

71:07

where the good people stay for a long

71:10

time and there's a lot of value in that

71:11

and Denmark kept being very core

71:14

critical infrastructure.

71:15

>> Yeah. core infrastructure software team

71:17

and that's one of the thing we had to

71:18

build at Uber because back then when I

71:21

came in we didn't build infrastructure

71:22

software right we just use existing open

71:24

source stuff right and we built that and

71:26

another thing that I you know uh

71:29

discover along the way is great talents

71:32

are everywhere but you know you have to

71:35

bring opportunity to them

71:37

>> they don't necessarily relocate from

71:38

Denmark to San Francisco right and so

71:40

that's why we end up having nine engine

71:42

offices around the world y because we

71:44

have a lot of work need to be

71:45

We didn't go to other places because of

71:48

cost savings like that. We go there

71:49

because we have need and we have world

71:52

class talent and we just cherry pick the

71:53

worldass talent doesn't matter what size

71:55

it is and Denmark team was small

71:56

compared to team in India etc. But you

71:59

know there would really great talent

72:01

infrastructure and we'd invest on that.

72:03

Lithuana we had amazing DevOp uh team

72:06

and so we just go to where the talent uh

72:08

is and then we bring the great work to

72:10

the great talent and then then we

72:12

establish a structure uh to manage and

72:16

give people first class ownership of the

72:18

problem and then you know everybody is

72:20

kind of equal. At Uber you you talked

72:23

about several times of your three tours

72:25

of duty. Which ones were these?

72:27

>> Yeah. Again, it it come back down to

72:30

purpose. Uh so when I do something, I

72:33

try to be intentional about why am I

72:35

doing something? What's my purpose of

72:36

doing that? And so of course my purpose

72:39

to come into Uber was, hey, let's build

72:42

this business. I just build a tech that

72:44

support the business. And so the first

72:46

couple year, 18 months, 24 months were

72:50

fixing a lot of the broken stuff. Things

72:53

weren't reliable, become more reliable,

72:55

etc., etc. Uh rebuild things. um

72:58

basically just get thing to work and

72:59

work well and then along the way you

73:02

know these things don't end and

73:04

beginning on a particular day it just

73:06

phase in and out right so the phase two

73:09

uh that what I call my second tour of

73:10

duty was scale worldwide scale that was

73:13

China that was massive scales everywhere

73:16

in every dimension uh and so yeah so at

73:19

each of those phase when you're done

73:21

with that phase you ask yourself am I

73:23

still useful do I want to re-up right my

73:26

commitment and energies and everything

73:28

else. And so the first two phase were no

73:30

question, right? We're there to do that.

73:33

And then as phase two were about to wrap

73:37

up, right, uh about 2017, we actually

73:40

kind of stabilized. We're really big

73:42

now. I was actually asking myself that

73:45

question, do am I need it here anymore?

73:47

And I was actually about to wrap it up

73:48

that summer because, you know, at that

73:50

point, we had also another STP that was

73:54

higher. And I think he's really really

73:56

great technically and I can like feel

73:58

very very at peace kind of you know

73:59

there's there's someone who really take

74:01

it on even better cuz the person has

74:04

done even bigger thing at Google right

74:07

yeah and then but that didn't work out

74:09

and then Uber has a really rough year so

74:12

then I have to like sign myself up to

74:15

the third tour of duty which is and what

74:16

is the purpose of that you know help the

74:18

company get through the turbulent years

74:20

and I had no idea at the time when that

74:23

phase would end I just kind of know the

74:26

condition for that to end which is

74:28

whenever the next CEO arrive right and

74:31

then after that whether that person like

74:32

me I like that person or whatever it is

74:34

that's to be decided but that third

74:36

phase I have to stick it through because

74:39

you know we owe it to oursel and we owe

74:42

it to everyone along the way who have

74:44

built Uber to that point right to to get

74:46

through that turbulent phase. So we did

74:48

that and then uh when the new sale come

74:50

in and you know I stayed on until 2020

74:54

>> and then in in so in 2017 I remember it

74:57

was really turbulent. Travis had to step

74:58

down for a while. A group of of I think

75:01

14 people who were Travis's direct

75:04

reports. They took over steering the

75:06

company. You you were one of them. So

75:08

this is the point where you decided that

75:10

if everything would have gone smooth,

75:11

you might have actually just left. But

75:12

you decided to stay on to help the

75:14

company, help the team to help us get

75:16

through. Uber was built by tens of

75:19

thousands of people, right? Past and

75:21

present. The fact that people built

75:23

somewhere and then left before I that's

75:24

so fine. They that work was still in

75:26

there in some way, right? That led to

75:27

that Uber that we have there. And it was

75:30

a really important thing that we all

75:32

built that that many of our lives were.

75:34

And and then just to suck it up, we went

75:36

public, which which which went good. And

75:38

then it it it went okay. And then of

75:41

course CO happened which really hit uh

75:43

Uber and a few months uh later in into

75:46

CO uh you did step down. Why did you

75:49

leave Uber and and why why was the

75:52

timing what it was and what motivated

75:53

you to say okay this is the time to to

75:56

go? Yeah, it it didn't have anything to

75:58

do with co really. it you know I was I'm

76:02

lucky enough to arrive at a point in

76:04

life where money doesn't matter right

76:07

and so then I asked myself why am I

76:09

doing anything if I wake up every day

76:12

and spending x number of hours on doing

76:13

something why would I do that versus

76:15

something else and so it come down to

76:19

three things one is do I really love the

76:24

mission and what I'm doing and the

76:26

second one is do I feel like my being

76:29

anywhere there right is making a really

76:31

big impact. And the third one is am I

76:34

enjoying the company of people I'm

76:37

working with? Right? And if several of

76:39

those dimensions are lacking then at

76:42

some point is not enjoyable in totality

76:45

anymore. Right? Then uh then it come

76:48

down to okay when you wake up and you

76:50

spend 50 hours a week doing something

76:52

where money doesn't matter anymore. Uh I

76:54

live very modestly so it doesn't doesn't

76:56

change anything. So uh then why would I

76:59

do that versus doing some other thing?

77:00

And so I think that was that was the the

77:03

realization at that point where I'm more

77:05

like okay I'm there doing a a big job

77:07

but more or less running things rather

77:10

than you know being very uh much more

77:13

effective and building the company like

77:15

in the early days and so and at that

77:17

point I think it's actually much better

77:19

for other people who take a crack at

77:21

that job again it you know like

77:22

everything ends right and so you have to

77:24

decide yourself at

77:26

>> and it did give opportunity to other

77:27

people right so like and and they did

77:29

pick it up now After Uber, I I remember

77:32

you did an interview uh with a with a

77:34

publication. I think you said that

77:35

you're thinking of retiring or you'll

77:37

see. But then you you were not done. Oh,

77:40

no. You you did other stuff. Kong new

77:44

bank fair. Can can we talk about what

77:46

what what happened? What was your

77:47

thinking? And you never even left for

77:49

for a moment, honestly.

77:51

>> Well, I blame that on CO. So, seriously,

77:54

that one co had everything to do with

77:56

it. Uh so when I left um we had um a

78:00

plan to travel the entire summer because

78:04

my our daughter was between eighth grade

78:06

and ninth grade when she's about to

78:07

enter high school. We had African safari

78:09

plan. We have all the other travel plan.

78:12

>> Everything got shut down. Everything got

78:13

shut down. All the flight get

78:14

cancelceled all the country clothes and

78:16

so we stuck at home. Yeah.

78:17

>> Right. And I don't remember at the time

78:19

where I'm the only one who go to

78:21

supermarket to and then then like very

78:24

very sparse to kind of race through it,

78:25

pick up what you need and you get out

78:27

with all the mass and

78:28

>> yeah and so uh we kind of bored though

78:31

and so I I'm bored so I sit at home and

78:33

we all got on video uh zoom call and uh

78:37

lots of people want to kind of chat with

78:38

me uh to um not surprising and so I took

78:42

a bunch of call and one of them was the

78:44

the founder of coupon and we had really

78:46

great chat and you know it's like hard

78:48

charging person want to get a lot of

78:50

thing done and I I really like that and

78:53

I I think well I'm not doing anything

78:55

here anyway so might as well you know

78:58

make myself useful right again it's

79:00

about how you spend your time and so

79:02

yeah as I did that and I um yeah I I

79:04

joined there and I helped some but I

79:07

learned also a ton because that's also a

79:09

very interesting area right of Amazon

79:11

style logistic and the way coupon does

79:13

it is you talk about 5 hours 6 hours

79:16

delivery

79:17

Wow.

79:18

>> Yeah. You order before midnight and the

79:20

thing show up in your doorstep 5:00 in

79:22

the morning. 5 and I when I was there I

79:25

joined the delivery truck putting

79:28

packages in front of people's home like

79:30

2 3:00 in the morning and it's it's

79:32

brilliant right and all those thing that

79:34

you learn and you you you learn a whole

79:35

bunch of these thing and so yeah it's a

79:37

really great use of time right given the

79:40

circumstances.

79:40

>> Yeah. And then you became was it is it

79:43

an adviser or a board member at Newang?

79:45

>> Uh board member. Yeah. And New Bank is

79:48

for for those that don't know and

79:50

outside of the US or Europe, it is the

79:53

most successful and highest valued non

79:55

US companies, the largest growing bank

79:58

uh in Latin America. It's it's it's

80:00

extreme. It's as it's engineering

80:02

culture. I hear amazing things about

80:04

you're the first person I'm actually

80:05

talking about. So, what what did you

80:07

learn there? And and you're still

80:08

involved, right?

80:09

>> Yeah. Yeah, I'm still involved, but as a

80:10

in a as a board member capacity. Uh and

80:13

for a while I I also took on a more

80:17

active responsibility to mentor the Cto

80:20

right a couple of them.

80:22

>> And so yeah and so I I again it's all

80:25

about being useful. Um we all learn a

80:28

lot in our journey and working with

80:31

really smart people, really motivated

80:33

people younger and impart that knowledge

80:35

and sharing you know what you see and

80:38

advice help people move forward better

80:41

faster and and I find that very

80:43

fulfilling and so so that uh was that

80:45

and the the culture there is very

80:47

vibrant. I mean it remind me of our

80:49

early days Uber when everybody is

80:51

gung-ho hard charging the founders hard

80:54

charging everybody is when I visit there

80:57

uh usually during board meetings uh once

80:59

a year we kind of go down to Brazil uh

81:01

and we will have all hands with the with

81:04

the entire company and sometime I also

81:06

did all hands with the engineing team

81:08

and do AMA style the way we did Uber and

81:11

so it's just very energetic right and

81:14

and there there many factor to their

81:17

phenomenal the success one is like like

81:19

very much like Uber they actually solve

81:21

the right problem at the right time

81:23

>> there's a whole bunch of unbanked

81:24

population before new bank came along

81:26

and they deliver like leapfrog of

81:29

traditional banking just online and the

81:31

app and the experience is beautiful the

81:34

NPS score is through the roof uh and it

81:36

it ultimately it add a lot of value to

81:38

people right live and that's why the

81:40

adoption rate is crazy high right and

81:42

and and so yeah well executed um amazing

81:46

product vision and phenomenal cultures

81:48

and energy and all those factors are

81:50

very common in like great companies and

81:52

we experienced one of those thing at

81:54

Uber too in early days. So it's really

81:56

re-energizing being a part of that

81:58

>> and and and they're doing great and now

82:00

you're the CTO at fair. What made you

82:02

join fair?

82:03

>> I took a couple years off when my

82:05

daughter was finishing high school

82:07

because I figured that time would not

82:09

ever come back when she's gone and she's

82:11

gone now.

82:12

>> What was it the right choice?

82:13

>> Oh, absolutely. I would not take that

82:15

time back. So that

82:16

>> um yeah, I'm so glad.

82:18

>> Yeah, 10th, 11th grade, and 12th grade,

82:20

I get to stay home, drop her off, pick

82:22

her up, cook, you know, hang out

82:24

together, help with college application,

82:26

all of that stuff. And so the the bond

82:28

we had was really cool. And as I was

82:31

thinking about her going to college, I

82:33

was thinking, "Wow, I'm going to have a

82:34

lot of time on my hand, so what should I

82:37

do?"

82:37

>> Here we go again.

82:39

>> Exactly right. And so should I join

82:41

another board, which I was about to. And

82:43

then at the last minute some partner

82:47

Seoya asked me to meet Max uh the CEO of

82:50

there and really liked him very smart

82:53

again all the same characteristic very

82:55

smart uh very hard charging want to all

82:59

the right thing the businesses empower

83:02

you know local you know businesses

83:05

>> can we talk a little bit about that

83:06

because from the outside you know when

83:08

you Google fair and you and I look at it

83:10

it doesn't tell you exactly too much

83:12

feels a

83:13

It is um it is a B2B marketplace right

83:16

between uh big brand wholesalers and

83:19

retailers up. So people buy that and

83:22

then uh stock their storefront and and

83:24

so yeah and so all the traditional

83:26

two-sided marketplace dynamic apply and

83:29

the mission is very similar to our

83:30

mission rub even though we are B toc

83:32

right this is B2B but it's all about

83:35

what can we do to empower local

83:37

businesses to flourish right so to buy

83:40

the right thing to sell through make a

83:42

profit grow that business

83:43

>> so basically this can help small and

83:45

also large businesses to actually just

83:47

like grow their business may may that be

83:49

like

83:51

more successful demand, more demand,

83:53

more supply, all of that stuff, right?

83:55

So, yeah, it's like a really

83:57

>> market place is really fun and very

83:59

complex and so I really like that

84:01

>> and I really when I dig in uh through

84:05

the interview process and everything

84:06

else and again this company moved really

84:08

fast within a week everything was

84:10

finished including my homework

84:11

assignment, right? I have to go and

84:13

present and everything else and so I

84:14

really the company moved really fast. is

84:16

energizing and the culture is super nice

84:19

and super kind, you know, like no

84:21

politics. Everybody's just focused on

84:23

doing the right thing and working with

84:24

each other, taking care of one another.

84:26

So, it's a trifecta. Doesn't matter if

84:29

the company is really big or really

84:30

small, right? But it's got all the

84:32

ingredients. So, I was like, well, maybe

84:34

that's a good place to jump in and help

84:36

out help out.

84:36

>> And can you give us a little context on

84:38

fair in terms of the size of the

84:39

company, the size of the engineering

84:41

team, where the hubs are, what the what

84:43

the work is like? Is it in person? is is

84:45

is it hybrid and so on?

84:47

>> Yeah, the company is about a thousand

84:49

person. The engineing team including the

84:52

data science team combined is about 300

84:55

people. The work we are in the office

84:57

three days a week um yeah three days on

85:00

the week that the other two on um are

85:02

working remotely online for yeah and

85:04

some people show up more if they live

85:06

close to the office. Um yeah uh the

85:08

engineering team uh there's a a portion

85:12

here in SF um just down the street from

85:15

here and uh a large part is in uh Canada

85:19

uh then we have a big office in water

85:22

and we have a big office in uh Toronto.

85:25

So I I make the trip there quite often.

85:27

Every five six week or so I'm over

85:29

there.

85:30

>> And what are some interesting

85:31

engineuring challenges that you're

85:32

excited about right now that you're

85:33

solving? Oh uh right now clearly the

85:36

most exciting thing is AI and how is AI

85:38

changing everything so quickly. Tell me

85:39

h how what what are you seeing what's

85:41

working what's not at you know like in

85:42

on your teams

85:44

>> in my team as well as in the company you

85:46

know we're using AI to boost everyone

85:48

yeah effectiveness and productivities

85:50

and output right and so so that's one

85:53

within the engine specifically we use AI

85:55

to make you know search and

85:57

recommendation better right because the

85:59

whole job is to help people discover

86:01

thing that would sell really well for

86:03

the business and etc and imagine AI as a

86:07

shopping consultant right and all this

86:09

stuff and then coding wise you know AI

86:11

is doing a lot more of of the coding now

86:14

um but we also used uh different

86:18

technique to actually boost uh

86:20

engineering productivity um you have you

86:22

heard like swarm coding

86:24

>> so so swarm coding as an agents

86:26

>> yeah a whole bunch of a swarm of agent

86:28

right

86:28

>> it's it's pretty new so you're already

86:30

using it

86:30

>> so we already using it and we we

86:32

building orchestrator to orchestrate the

86:34

action of all this agent and uh we

86:37

measure the the first the early adopters

86:40

um the and then the the the bulk of the

86:43

engineer follow through after we build

86:45

the the more robust tooling and we see

86:49

dramatic lift in engineering output

86:51

among the early adopter the the one are

86:53

really efficient at thinking this way

86:55

right because it's very different from a

86:57

linear kind of thinking when I write

86:59

this piece of code right now it's almost

87:00

like multi-threaded programming was

87:01

single threaded right you have to think

87:02

about all these other thing you have to

87:03

prompt all the action and then you have

87:05

all this code come back at you and you

87:06

have to review it you sit together.

87:08

Yeah. And it it required a different way

87:10

of thinking and the cognitive load might

87:12

be a little higher but the output is

87:15

dramatic and we have seen our best

87:17

engineer double their output. I I know

87:19

we're talking about that but just to

87:21

make it clear we're talking about not

87:22

the code out but the actual business out

87:24

but the impact of their work right

87:26

>> yeah the impact uh now depend on the the

87:29

evolution of AI right so right now the

87:32

state uh of the art right now is it's

87:34

very easy to make large scale changes

87:37

right clean up and everything else right

87:39

so massive productivity increase now

87:41

we're trying to crack the next frontier

87:43

which is how we get that level of

87:45

productivity increase and output

87:46

building new features on top of a code

87:49

base that are older, right? It's not

87:51

like, oh, you and I can just go build

87:53

something brand new, not entangled with

87:54

anything. It's really fast. The whole

87:56

thing will generate for you, right?

87:57

Yeah. But we got millions of lines of

87:59

code and how do you like deal with that

88:00

and build feature on top with all those,

88:02

you know, dependencies and all that

88:03

stuff, right? Can AI good enough now to

88:05

help us untangle some of those thing

88:07

along the way building new thing and so

88:09

we actually, you know, continues to work

88:11

on that and figure out how we can

88:13

actually continue to boost uh more and

88:15

more productivity out even building new

88:16

feature with AI. How do you think AI

88:18

will change software engineering and

88:20

what a software engineer does and what

88:22

skills we value?

88:23

>> Yeah. Uh it's already changing. I mean

88:25

very rapidly fast. These changes are

88:28

fascinating anything I've ever seen

88:29

including the internet. Right. Back then

88:31

I remember when we first learned how to

88:33

um do programming. We have to know a lot

88:35

about the machine architecture. We have

88:37

to know about virtual memory. We have to

88:38

know and then we have to learn how to

88:39

like syntax and coding. All of that

88:41

stuff been abstracted away now. Right.

88:43

Especially AI. It's like I want X Y and

88:45

Z blah and it should be this way and

88:47

whole thing get constructed right so it

88:50

elevated level the playing field where

88:52

people who don't even know how to

88:54

program can now create good you know

88:57

good decent code and app or whatever it

88:59

is that look on the surface are really

89:00

good. So it is gamechanging right it it

89:03

um it elevates the playing field. Now

89:06

then in that level of of abstraction,

89:10

how do you tell the great engineer from

89:12

the good engineer?

89:14

>> Great question. How do you

89:16

>> Well, from what we see so far, the great

89:18

engineer are still finding way to

89:22

leverage this and accelerate the output

89:24

even more. Then we see the difference

89:26

between the great engineer and an an

89:28

average engineer is still two 3x in

89:30

terms of their capability. They're more

89:32

inquisitive. they're at the bleeding

89:34

edge more, they're more innovative,

89:36

right? And then there are people who

89:38

like, okay, well, here's the tool that

89:39

you give me, I'm going to be two times

89:41

more productive, right? Because I'm

89:42

using this tool. It's great. But the

89:44

great angel continue to break new

89:45

boundaries. And so I think that is still

89:48

available. You can still you can look at

89:49

people and you can see who are the high

89:53

performer versus who are average. So do

89:56

I hear correctly that the with the

89:58

traits that you're seeing in G engineers

89:59

is we didn't mention but it's kind of a

90:01

given the foundations plus curiosity

90:03

plus innovation

90:05

>> fearlessness willing to innovate willing

90:07

to stretch willing to try new things and

90:09

break new ground all of those traits

90:11

that's still exist

90:12

>> interesting if I think back to like just

90:14

the Uber days or your startup days that

90:16

those traits were kind of the traits of

90:17

the

90:17

>> standout that's right those are things

90:19

that make someone outstanding versus

90:20

someone the average

90:21

>> so I guess maybe an advice is like well

90:23

I mean try not like if if you were a

90:25

great engineer before just don't be

90:26

complacent and keep using keep right

90:28

approaching the same way. Right.

90:29

>> Correct. Yeah. Complacency is death. I

90:32

mean like every the world will move

90:34

faster and faster and the moment we

90:36

stand still we are falling behind.

90:37

>> It sounds like if you if if you worked

90:39

at a a fast fast-paced startup before

90:41

which is this is how it works. AI should

90:44

be familiar. Welcome to how it was

90:45

before.

90:46

>> To me it is a incredibly powerful tool

90:49

but in the end it's still a tool

90:52

and you can wield the tool properly. you

90:55

can do extraordinary thing versus you

90:57

just merely use a tool in a mundane way.

90:59

You're not going to be a great stuff.

91:00

>> So we talked about stand out engineers

91:02

in this age. I'd like to talk about

91:04

something that I cannot talk with too

91:05

many things. Standout CTOs. You have now

91:07

been CTO at multiple companies. I I lost

91:10

VP of engineering. You've been at some

91:12

of those high highest engineering

91:13

leadership and at Uber at fair. You've

91:15

you've done an outstanding job as a CTO.

91:18

What is the most important job of CTO?

91:20

>> Yeah, there there are a couple of angle

91:23

to this. One is build a high performance

91:27

team. All right, talent, culture, all of

91:30

that. you know, whatever it is that you

91:32

got to do, put the orc structure, put

91:34

the, you know, uh, develop the talent,

91:36

prune, you know, uh, bad folks out or

91:39

whatever, everything that you need to do

91:41

to make sure that you have really high

91:43

talent density because when you have

91:46

team A, team A will just want to hire

91:48

more A level players and yeah, they just

91:51

intolerant of anybody who's not

91:52

performing, right? So, when you get to

91:54

but you got to get to that concentration

91:56

and then it's kind of just

91:57

self-protecting, if you will, right? And

91:59

then of course you have to create an

92:01

environment where people really trust

92:02

each other and align and work really

92:05

well together, right? Because you put an

92:07

all-star team together doesn't mean they

92:09

work really well. If you don't have like

92:10

a the cultural alignment, right? So that

92:13

organizational side of things I've

92:15

always deeply believe in that if you do

92:17

that one well then good outcome will

92:19

just happen, right? It doesn't matter

92:21

what you want to do, right? They will

92:23

just uh be able to come out with great

92:25

result because we have great talent and

92:27

with great motivation. The other side is

92:30

you have to look in the future and see

92:34

around that corner, right? For example,

92:37

I always think about two years out. What

92:41

does great need to look like? Okay, do

92:45

we have the key, you know, uh ingredient

92:48

if you will, talents and otherwise to

92:51

actually get there, whether it's

92:52

architects, the leadership, whatever,

92:55

right? And what problem are we trying to

92:56

solve? what would a business look like?

92:59

So, you know, uh the famous Wayne

93:01

Gretzky quote is skate to where the puck

93:03

would be. So, you have then to envision

93:05

that future and I would I would share

93:07

this with everyone at every management

93:09

level that when you're in a any level,

93:12

your job is to see a little bit further

93:13

out than your folks, right? Because your

93:15

folks are busy working on the near-term

93:17

things, right? And then you have to see

93:19

because if you don't do that, then no

93:21

one it's your job to actually do that,

93:22

>> right? Well, let's put this to the test

93:24

because right right now is the most so

93:26

many people including me see it's an

93:28

unprecedented time with growth.

93:30

>> How do you look around the corner? What

93:31

do you see around your corner right now?

93:33

Like what will be coming maybe not even

93:35

in two years but even in six months?

93:37

>> Well in 6 months you know we know what

93:40

we need to do. In fact it's too short

93:42

right it's like these are the things

93:43

>> talk about two years. I I I recently

93:45

asked Open AI on what they see in two

93:47

years and they're like oh that's too

93:48

long let's talk six months.

93:49

>> But in context is everything right? for

93:52

them they're trying to reinvent that

93:53

future and sometimes things are changing

93:54

too fast there from that context but

93:56

from fair the business

93:59

>> we know what business result we want to

94:01

drive we know what project we need to

94:03

execute right to me that that's pretty

94:05

much lock and load it just require good

94:08

execution right good adjustment along

94:10

the way to me 18 to 24 months out is my

94:14

job to look at while my team is worrying

94:16

about the six-month uh problem right and

94:19

so for example there are many area that

94:22

we need to clean up right there's the e

94:24

data ecosystem that's been old and you

94:27

know same problem we saw at Uber too you

94:29

know something change upstream break

94:31

thing downstream and how do you really

94:32

clean it up with all this you know older

94:35

you know code base then you know what is

94:37

the next generation of search and

94:39

discovery that are AIdriven right you

94:41

know to look like productivity right how

94:44

can we leverage AI to like double output

94:46

on you know future development right so

94:48

all of these thing what does that future

94:50

need to look like and do we have the

94:52

horsepower and and to get there right in

94:55

terms of expertise uh management and the

94:58

planning all that stuff and so and and

95:00

then if the answer is no then it like

95:04

the next question how do we actually

95:06

position oursel there who do we recruit

95:08

and so that that's the job of the co on

95:10

on the sort of the the non-management

95:13

side

95:13

>> and then finally um what advice would

95:16

you give to a young engineer someone

95:17

let's say 25 years old or a new grad who

95:19

is entering the industry right Now, lots

95:21

of change

95:22

>> for folks who are entering the the

95:24

workforce right now. I have to

95:26

acknowledge it's a very scary time

95:27

because it's very bumpy. Even at our

95:30

company right now, we still bring in uh

95:34

new grad, but it come through our uh

95:38

intern co-op channel, right? Uh we're

95:41

not in the world where we just hire

95:43

massive number of new college grad like

95:45

the old days anymore, right? But if

95:48

great people are still finding

95:50

opportunity, right? That we have a a

95:52

healthy cohort of co-op every single um

95:57

four months that come through, right?

95:59

And the best of the best still get offer

96:02

from us because if we don't hire those

96:05

folks today, what senior engineer will

96:07

we have for yeah years from now, right?

96:09

You have to feed the talent pipeline and

96:11

great people are great people. They will

96:12

learn and grow and

96:13

>> Yeah. And so so that will always the

96:16

opportunity will always be there for

96:18

great talent. So invest in yourself when

96:21

a student you know volunteer doing solve

96:24

hard problem early on. The earlier and

96:26

harder you work early on the better you

96:29

will have in in the in the in the

96:31

future. If you take it too easy right

96:33

now then the road in the future might be

96:35

a little harder. So I think that's the

96:37

key. And then when you enter the

96:38

industry it depend on uh I think career

96:43

phases. I would say the first five 10

96:46

years or so find opportunity where you

96:48

learn the most that push you the most

96:50

because those are the time that you you

96:52

have the most energy to develop your

96:54

skill and ramp up really fast and when

96:56

you get to like senior engineer staff

96:58

engineer range then you know enough to

97:00

be very dangerous in terms of making a

97:01

big impact then seek opportunity where

97:03

you can make a big impact. Maybe a

97:05

smaller company will allow you like a

97:06

you know a bigger stage to actually make

97:08

a huge impact, right? Take some of that

97:10

risk and do that. And that phase should

97:12

be about using what you know and make

97:15

this big impact as you can. And you will

97:16

learn along the way too. And then when

97:18

you get to the next phase where

97:19

hopefully if you're really good, you're

97:21

already at this, you know, principal

97:22

engineer, senior staff or on the

97:24

management side, senior director, VP,

97:26

whatever it is. And then that point you

97:30

learn to give back, right? You learn to

97:31

coach and develop people along the way.

97:33

you'll be leading and responsible for

97:35

you know very big things uh you know

97:37

apply that knowledge to do a really

97:38

great job but also teach and bring other

97:41

people along so different phases you

97:43

should change the priority a little bit

97:45

>> to thank you so much this was a great

97:49

conversation so I hope that everyone be

97:52

um will find this useful

97:54

>> what a conversation so many of these

97:56

stories have not been told before and I

97:58

hope you enjoyed them as much as I did

97:59

the microser story is such a good one

98:02

nobody at Uber planned to have thousands

98:03

of microservices. It happened because

98:05

every time they tried to decompose the

98:07

monolith, the business was growing so

98:08

fast that other teams were adding to it

98:10

faster than the decomposition team could

98:12

pull things out. It took 2 years to do

98:14

something that in isolation would have

98:16

taken 3 to 6 months. Uber had unusually

98:19

violent business growth that resulted in

98:20

unusually fast code growth and

98:22

microservices helped Uber tame its

98:24

growth. But unless you're growing at the

98:26

speed of Uber, you probably will not

98:27

need thousands of microservices. Oh, and

98:30

fun fact, in 2026, Uber has fewer

98:32

microservices than they had in 2016. I

98:35

also found it fascinating how Tuan's

98:37

entire career was shaped by

98:38

relationships he built by simply doing

98:40

great work. Bill Gurley reached out

98:42

about Uber because he remembered Tuan

98:44

from Netgravity, a company from a decade

98:46

earlier that didn't even win his market.

98:49

The engineers Tuan pulled from VMware

98:51

into Uber came because they genuinely

98:53

enjoyed working with him. There was no

98:55

networking strategy. just years of being

98:57

good to people compounding quietly in

99:00

the background. Finally, Tuan's point

99:01

about AI was an interesting one.

99:03

Complacency is death. The traits that

99:05

made someone a great engineer before

99:07

these AI tools: curiosity, fearlessness,

99:09

willingness to try new things are

99:11

exactly the same traits that make

99:13

someone great with AI tools. The tools

99:15

changed. What makes people exceptional

99:17

has not. Do check out the show notes

99:19

below for more deep dives on Uber and

99:21

Uber's engineering culture as covered in

99:23

the pragmatic engineering newsletter and

99:24

podcast. If you've enjoyed this podcast,

99:26

please do subscribe on your favorite

99:27

podcast platform and on YouTube. A

99:29

special thank you if you also leave a

99:31

rating on the show.

Interactive Summary

This video features an in-depth conversation with Tuan, a prominent figure in the tech industry, discussing his career journey and experiences at companies like Uber, VMware, and Fair. Tuan shares insights into scaling complex systems, the challenges of rapid growth, and the evolution of software engineering. Key topics include Uber's massive microservice architecture, the necessity of building internal tools, and the rigorous interview process with Travis Kalanick. Tuan also reflects on his personal background, immigrating from Vietnam and his early exposure to technology. The discussion touches upon the dot-com bubble, the importance of adaptability, and the current landscape of AI in software development. Tuan emphasizes the value of relationships, continuous learning, and cultivating a strong work ethic, sharing lessons learned from both successes and failures throughout his career.

Suggested questions

11 ready-made prompts