Slide 1

Slide 1 text

Building Platforms for Developers Dustin Whittle, Developer Advocate Presenting the work of many people at Uber

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

73
 Countries 470+ Cities 75%
 of the U.S. population lives in a county with access to Uber 1.5M+
 Active Driver Partners 5+ Million
 Trips per day 2+ Billion
 Trips completed

Slide 4

Slide 4 text

No content

Slide 5

Slide 5 text

THE UBER PLATFORM VISION BUILD MOVING EXPERIENCES

Slide 6

Slide 6 text

THE UBER PLATFORM VISION BUILD MOVING EXPERIENCES Working with Developers Forging Partnerships Providing Tools Uber Cultural Value: Let Builders Build

Slide 7

Slide 7 text

THE UBER PLATFORM VISION BUILD MOVING EXPERIENCES Getting people from A to B Features for people while they move Products that bring joy Making daily life easier: Saving time & Money Uber Cultural Value: Make Magic

Slide 8

Slide 8 text

THE JOURNEY SO FAR

Slide 9

Slide 9 text

Where there's a will, there's a way

Slide 10

Slide 10 text

It started with a deep link to push a button and get a ride

Slide 11

Slide 11 text

No content

Slide 12

Slide 12 text

Welcome back,

Slide 13

Slide 13 text

No content

Slide 14

Slide 14 text

In 2014 we first released the Uber API

Slide 15

Slide 15 text

In 2015, first partners started building Uber experiences

Slide 16

Slide 16 text

Today, leading global brands elevate their experience with Uber

Slide 17

Slide 17 text

OUR APIS …

Slide 18

Slide 18 text

• An interface between systems • An integration between products • An experience created by people • Builders + Tools + Inspiration = Magic API What does it mean to you?

Slide 19

Slide 19 text

Make an API call, get a ride.

Slide 20

Slide 20 text

Uber Developer Platform Enabling the world to build moving experiences with Uber.

Slide 21

Slide 21 text

A Platform Is Not Just A Product

Slide 22

Slide 22 text

Platforms are ecosystems

Slide 23

Slide 23 text

Building a platform that interacts with the real world adds another level of complexity (and opportunity)

Slide 24

Slide 24 text

No content

Slide 25

Slide 25 text

We make the complex simple

Slide 26

Slide 26 text

POINT A POINT B

Slide 27

Slide 27 text

POINT A POINT B INTENT TO RIDE POST RIDE

Slide 28

Slide 28 text

POINT INTENT TO RIDE Ride Request Button Deep Links Webhooks /request /products /estimates/price /estimates/time /requests/[id] /history /me Ride Details Ride Options Ride Request

Slide 29

Slide 29 text

Citymapper /products /estimates/price /estimates/time

Slide 30

Slide 30 text

Citymapper Deep Links

Slide 31

Slide 31 text

No content

Slide 32

Slide 32 text

Webhooks allow apps to be reactive

Slide 33

Slide 33 text

No content

Slide 34

Slide 34 text

No content

Slide 35

Slide 35 text

POINT POINT O RIDE Webhooks /current all_trips scope Trip Experiences POS

Slide 36

Slide 36 text

POINT A POINT B 2,000,000,000 TRIPS THE TRIP

Slide 37

Slide 37 text

POINT A POINT B 20 MINUTES PER TRIP ~ THE TRIP

Slide 38

Slide 38 text

POINT A POINT B 40,000,000,000 MINUTES OF FREE TIME ~ THE TRIP

Slide 39

Slide 39 text

POINT A POINT B CONTEXT MATTERS The Trip Experiences API can tell you… When the rider has free time How much free time they have Where they’re coming from Where they’re going

Slide 40

Slide 40 text

No content

Slide 41

Slide 41 text

On-Trip Experience Off-Trip Experience

Slide 42

Slide 42 text

We help internal teams release developer products

Slide 43

Slide 43 text

Organized as Programs and Platforms Program Platform Mission Business Focused Technology focused Consumers Non-technical + Internal/External Technical + Internal Products Feature-based products Technology consumed by programs Team Cross-functional Specialized Direction Product drivers Engineering Drivers

Slide 44

Slide 44 text

Languages in use at Uber We are a polyglot engineering organization, and we speak many languages. In order of preference - many services are moving to Go (or Java)

Slide 45

Slide 45 text

No content

Slide 46

Slide 46 text

POINT POINT O RIDE Uber Deliveries /deliveries/[id] Delivery Details /deliveries /deliveries/quote Delivery Options Delivery Request POS

Slide 47

Slide 47 text

No content

Slide 48

Slide 48 text

/partners/trips /partners/me /partner/payments /partner/tax-summary Payments Identity History POST RIDE POINT

Slide 49

Slide 49 text

We help external teams build on top of these developer products

Slide 50

Slide 50 text

Iterate with the developers

Slide 51

Slide 51 text

No content

Slide 52

Slide 52 text

Uber Developer Platform Enabling the world to build moving experiences with Uber.

Slide 53

Slide 53 text

HOW WE BUILT IT

Slide 54

Slide 54 text

https://medium.com/google-developers/why-do-we-pay-these-people-anyway-d7ed706d6d55

Slide 55

Slide 55 text

No content

Slide 56

Slide 56 text

PLATFORM FEATURES SDKS PARTNER ENGINEERING DEVELOPER ADVOCACY

Slide 57

Slide 57 text

Support the community Hackathons and events Drive innovation Make every developer aware of the Uber API DEVELOPER ADVOCACY DEVELOPER ADVOCACY

Slide 58

Slide 58 text

PARTNER ENGINEERING Support partners from idea to launch Influence roadmap and API design Support developer advocacy Align the platform’s direction with developer needs DEVELOPER ADVOCACY

Slide 59

Slide 59 text

PLATFORM FEATURES SDKS PARTNER ENGINEERING Stability needs Integration needs Bug reports Load prediction API design Relay developer feedback DEVELOPER ADVOCACY Integration needs SDK design Relay developer feedback

Slide 60

Slide 60 text

PLATFORM FEATURES SDKS PARTNER ENGINEERING Stability concerns Source of truth Outage alerts Developer issues Solicit API feedback Long tail developer support DEVELOPER ADVOCACY Developer solutions Solicit SDK feedback Long tail developer support

Slide 61

Slide 61 text

Enable developers to go from zero to hero!

Slide 62

Slide 62 text

No content

Slide 63

Slide 63 text

No content

Slide 64

Slide 64 text

Enable partners to quickly understand scope of work for a use-case

Slide 65

Slide 65 text

Be a good shepard of your platform

Slide 66

Slide 66 text

Auth your users via the native Uber app No more username & password One tap and your app can start requesting rides Single Sign On Auth via Uber

Slide 67

Slide 67 text

Just set your ride parameters and let the Uber app handle the ride experience Existing users will feel right at home Keep the focus on your app; let us handle the ride Deep Links Quick & easy

Slide 68

Slide 68 text

Highly configurable buttons let you get started easily Login Button lets you auth users using the method you want (Native, Authorization Code Grant, or Implicit Grant) Ride Request Button allows you to request a ride using Deep Links, the Ride Request Widget, or custom API logic Uber Buttons Ride Request Button & Login Button

Slide 69

Slide 69 text

Provide the full Uber experience without ever leaving your app An entirely embedded experience, from request to drop off Ride Request Widget Experience Uber without the app

Slide 70

Slide 70 text

No content

Slide 71

Slide 71 text

Documentation built for developers

Slide 72

Slide 72 text

No content

Slide 73

Slide 73 text

No content

Slide 74

Slide 74 text

No content

Slide 75

Slide 75 text

SDKs and sample apps enable developers

Slide 76

Slide 76 text

Make it safe to play in a sandbox

Slide 77

Slide 77 text

Automate the tedious tasks

Slide 78

Slide 78 text

No content

Slide 79

Slide 79 text

No content

Slide 80

Slide 80 text

Errors should be obvious and helpful

Slide 81

Slide 81 text

No content

Slide 82

Slide 82 text

Great support is critical. Build a community!

Slide 83

Slide 83 text

No content

Slide 84

Slide 84 text

No content

Slide 85

Slide 85 text

No content

Slide 86

Slide 86 text

No content

Slide 87

Slide 87 text

No content

Slide 88

Slide 88 text

WHAT WE LEARNED

Slide 89

Slide 89 text

What works for a single API… doesn’t work for a developer platform.

Slide 90

Slide 90 text

FEATURES PARTNER ENGINEERING DEVELOPER ADVOCACY PLATFORM SDKS

Slide 91

Slide 91 text

FEATURES PLATFORM SDKS PARTNER ENGINEERING DEVELOPER ADVOCACY

Slide 92

Slide 92 text

DEVELOPER ADVOCACY PLATFORM SDKS FEATURES

Slide 93

Slide 93 text

DEVELOPER ADVOCACY PLATFORM DEVELOPER PRODUCTS

Slide 94

Slide 94 text

DEVELOPER PRODUCTS DRIVER DELIVERIES DEVELOPER ADVOCACY PLATFORM PARTNER ENGINEERING PARTNER ENGINEERING

Slide 95

Slide 95 text

Scale the process and your team.

Slide 96

Slide 96 text

Developer value comes from listening to your developers.

Slide 97

Slide 97 text

Company value comes from discovering what your developer platform uniquely brings to your company.

Slide 98

Slide 98 text

The challenge is not technology… It’s imagination.

Slide 99

Slide 99 text

What future will you build? https://developers.uber.com

Slide 100

Slide 100 text

No content

Slide 101

Slide 101 text

Q & A

Slide 102

Slide 102 text

DEVELOPER PARTNER PL AT FO RM FEA TUR ES SD KS