SlideShare uma empresa Scribd logo
1 de 29
Netflix API To Infinity and Beyond…
Growth of the Netflix API Over 10 BILLION requests in November (Peaks at about 10,000 requests per second)
It is time to get back to thinking about the future…
First Step: Back to the Drawing Board…
Some of our Key Goals Resiliency, Reliability and Stability Maximize uptime Scalability System can grow without needing frequent refactoring Simplicity Easier integration for API consumers Agility Architecture will support rapid development without compromising the core of the system
Wii iPad App PS3 iPhone App Netflix  API Apple TV Google TV TiVo Roku XBox
Future Architecture needs to support key audience first with a trickle down of features to the public audience Wii Roku PS3 iPhone App iPad App Google TV Netflix  API Apple TV XBox TiVo
Hide Our Internal Business Dependencies from API Consumers
(Some) API Interfaces and Their Dependencies Auto-Complete Rental History Agg Lists Similars LIsts Queues SEARCH SIMILARS SYSTEM RECOMMENDATION ENGINE QUEUE RENTAL HISTORY Title Details Previews Ratings Recommendations Title States CINEMATCH CONTENT MANAGEMENT SYSTEM TITLE STATES REST Interface API Dependency
INTERNET REQUEST UNIFIED LIST/TITLE RESPONSE WITH PARTIAL RESPONSE BUILT IN SIMILARS LIST SEARCH LIST RENTAL HISTORY LIST TITLE LIST QUEUE LIST AUTO COMPLETE LIST ETC… TITLE INFORMATION TITLE STATE RATING RECOMMEND ATION TITLE DETAILS
iPhone Wrapper Recommend-ation Recommend-ation Service Xbox Wrapper Ratings Service SHARED API INTER-FACES LIST API Ratings Wii Wrapper PS3 Wrapper TITLE API Rental History Rental History Service Roku Wrapper USER API User Account iPad Wrapper Normal-ization And Resiiency AppleTV Wrapper Queue AUTH API PC / Mac Wrapper Title Catalog TiVo Wrapper Source Data  Layer API Repository  Layer Web Service  Layer Shared  Layer Wrapper  Layer API Layer App Layer
iPhone Wrapper Recommend-ation Recommend-ation Service Xbox Wrapper Ratings Service SHARED API INTER-FACES LIST API Ratings Wii Wrapper THESE ARE SOME OF THE DATA SOURCES THAT PROVIDE CONTENT TO THE API PS3 Wrapper TITLE API Rental History Rental History Service Roku Wrapper USER API User Account iPad Wrapper Normal-ization And Resiiency AppleTV Wrapper Queue AUTH API PC / Mac Wrapper Title Catalog TiVo Wrapper Source Data  Layer API Repository  Layer Web Service  Layer Shared  Layer Wrapper  Layer API Layer App Layer
iPhone Wrapper Recommend-ation Recommend-ation Service Xbox Wrapper Ratings Service SHARED API INTER-FACES LIST API Ratings Wii Wrapper THESE ARE SOME OF THE  SERVICES PROVIDED BY SOME OF THE API DEPENDENCIES THROUGH WHICH CONTENT IS MADE AVAILABLE TO THE API PS3 Wrapper TITLE API Rental History Rental History Service Roku Wrapper USER API User Account iPad Wrapper Normal-ization And Resiiency AppleTV Wrapper Queue AUTH API PC / Mac Wrapper Title Catalog TiVo Wrapper Source Data  Layer API Repository  Layer Web Service  Layer Shared  Layer Wrapper  Layer API Layer App Layer
iPhone Wrapper Recommend-ation Recommend-ation Service Xbox Wrapper Ratings Service SHARED API INTER-FACES LIST API Ratings Wii Wrapper THIS IS THE LAYER WHERE THE API CAN NORMALIZE THE DATA TO PREPARE IT FOR CONSUMPTION BY API CLIENTS.  IT COULD ALSO BE WHERE THE API CAN APPLY RESILIENCY MEASURES TO PROTECT AGAINST FAILURES FROM THE API DEPENDENCIES. ALTHOUGH THE DIAGRAM REPRESENTS THIS AS A DISCRETE API LAYER, IT COULD JUST AS EASILY BE A DISTRIBUTED MODEL ACROSS THE DEPENDENCIES. PS3 Wrapper TITLE API Rental History Rental History Service Roku Wrapper USER API User Account iPad Wrapper Normal-ization And Resiiency AppleTV Wrapper Queue AUTH API PC / Mac Wrapper Title Catalog TiVo Wrapper Source Data  Layer API Repository  Layer Web Service  Layer Shared  Layer Wrapper  Layer API Layer App Layer
iPhone Wrapper Recommend-ation Recommend-ation Service Xbox Wrapper Ratings Service SHARED API INTER-FACES LIST API Ratings Wii Wrapper MAKING PURE APIs WILL IMPROVE THE CONSISTENCY OF THE API CODE AND THOSE THAT CONSUME IT. THIS WOULD HELP PRODUCT MANAGERS AS WELL SINCE THE CODE FOR THEIR PRODUCTS CAN ALSO BECOME MORE UNIFORM. PS3 Wrapper TITLE API Rental History Rental History Service Roku Wrapper USER API User Account iPad Wrapper Normal-ization And Resiiency AppleTV Wrapper Queue AUTH API PC / Mac Wrapper Title Catalog TiVo Wrapper Source Data  Layer API Repository  Layer Web Service  Layer Shared  Layer Wrapper  Layer API Layer App Layer
iPhone Wrapper Recommend-ation Recommend-ation Service Xbox Wrapper Ratings Service SHARED API INTER-FACES LIST API Ratings Wii Wrapper THE SHARED API INTERFACE LAYER ALLOWS THE VARIOUS CLIENTS TO MERGE RESULTS FROM THE PURE APIs AND PREPARE THEM IN WAYS THAT ARE CONDUCIVE TO THE GOALS OF THEIR APP.  MEANWHILE, ANY OF THESE INTERFACES CAN BE SHARED ACROSS THE CLIENTS SINCE MANY OF THESE INTERFACES WILL BE COMMON ACROSS THE PLATFORMS. PS3 Wrapper TITLE API Rental History Rental History Service Roku Wrapper USER API User Account iPad Wrapper Normal-ization And Resiiency AppleTV Wrapper Queue AUTH API PC / Mac Wrapper Title Catalog TiVo Wrapper Source Data  Layer API Repository  Layer Web Service  Layer Shared  Layer Wrapper  Layer API Layer App Layer
iPhone Wrapper Recommend-ation Recommend-ation Service Xbox Wrapper Ratings Service SHARED API INTER-FACES LIST API Ratings Wii Wrapper THE WRAPPER LAYER IS DESIGNED TO CONSUME THE PURE APIS AND/OR THE SHARED INTERFACES WHILE ALLOWING DEVICE/APP-SPECIFIC IMPLEMENTATIONS.  SOME OF THESE WRAPPERS ARE THEORETICAL WHILE OTHERS MAY ACTUALLY TAKE ADVANTAGE OF THIS TIER. PS3 Wrapper TITLE API Rental History Rental History Service Roku Wrapper USER API User Account iPad Wrapper Normal-ization And Resiiency AppleTV Wrapper Queue AUTH API PC / Mac Wrapper Title Catalog TiVo Wrapper Source Data  Layer API Repository  Layer Web Service  Layer Shared  Layer Wrapper  Layer API Layer App Layer
iPhone Wrapper Recommend-ation Recommend-ation Service Xbox Wrapper Ratings Service SHARED API INTER-FACES LIST API Ratings Wii Wrapper THESE ARE SOME OF THE ACTUAL INTERNAL API CUSTOMERS TODAY.  THIS LIST WILL GROW OVER TIME, BUT THIS ARCHITECTURE WILL SCALE ACCORDINGLY. PS3 Wrapper TITLE API Rental History Rental History Service Roku Wrapper USER API User Account iPad Wrapper Normal-ization And Resiiency AppleTV Wrapper Queue AUTH API PC / Mac Wrapper Title Catalog TiVo Wrapper Source Data  Layer API Repository  Layer Web Service  Layer Shared  Layer Wrapper  Layer API Layer App Layer
Flexible API RequestsAs flexible as SQL SELECT person_first_name, person_last_name, dept_name FROM person, department  WHERE UPPER(dept_name) LIKE ‘%Engineering%’ AND person_added_date BETWEEN ‘2002-01-01’ AND sysdate ORDER BY person_last_name ASC Manages Partial Response Determines the Selected API Restricts Output Sorts Results GOAL: API should be able to handle any request that you can do in SQL
The Problem with Versioning 1.0 1.5 2.0 3.0? 4.0? 5.0? Today
Maybe we don’t need versioning? 1.0 1.5 2.0 Future APIs Today
Branching can always be done later… 1.0 1.5 2.0 New API Today
XML vs. JSON?Or both?  Or other? xml
REST…as long as it makes sense for the business
Questions? API Management Engineering Manager – Web API Systems: http://bit.ly/9O3Hic API Integration Systems Analyst: http://bit.ly/hyPxCh API Engineering Senior Software Engineer/Architect – Web API Platform: http://bit.ly/e0AKw4 API Test Engineering Senior Software Engineer in Test – API: http://bit.ly/9zHPtJ Senior Software Engineer in Test – API Platform: http://bit.ly/eD3tLn Lead Software Engineer in Test – API: http://bit.ly/fqxBYC Social Engineering Social Systems – Engineer Architect: http://bit.ly/dYq6C8

Mais conteúdo relacionado

Mais procurados

APIs for Internal Audiences - Netflix - App Dev Conference
APIs for Internal Audiences - Netflix - App Dev ConferenceAPIs for Internal Audiences - Netflix - App Dev Conference
APIs for Internal Audiences - Netflix - App Dev ConferenceDaniel Jacobson
 
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPRSet Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPRDaniel Jacobson
 
Netflix API: Keynote at Disney Tech Conference
Netflix API: Keynote at Disney Tech ConferenceNetflix API: Keynote at Disney Tech Conference
Netflix API: Keynote at Disney Tech ConferenceDaniel Jacobson
 
Maintaining the Netflix Front Door - Presentation at Intuit Meetup
Maintaining the Netflix Front Door - Presentation at Intuit MeetupMaintaining the Netflix Front Door - Presentation at Intuit Meetup
Maintaining the Netflix Front Door - Presentation at Intuit MeetupDaniel Jacobson
 
Why API? - Business of APIs Conference
Why API? - Business of APIs ConferenceWhy API? - Business of APIs Conference
Why API? - Business of APIs ConferenceDaniel Jacobson
 
Techniques for Scaling the Netflix API - QCon SF
Techniques for Scaling the Netflix API - QCon SFTechniques for Scaling the Netflix API - QCon SF
Techniques for Scaling the Netflix API - QCon SFDaniel Jacobson
 
API Revolutions : Netflix's API Redesign
API Revolutions : Netflix's API RedesignAPI Revolutions : Netflix's API Redesign
API Revolutions : Netflix's API RedesignDaniel Jacobson
 
Netflix API - Separation of Concerns
Netflix API - Separation of ConcernsNetflix API - Separation of Concerns
Netflix API - Separation of ConcernsDaniel Jacobson
 
Scaling the Netflix API - From Atlassian Dev Den
Scaling the Netflix API - From Atlassian Dev DenScaling the Netflix API - From Atlassian Dev Den
Scaling the Netflix API - From Atlassian Dev DenDaniel Jacobson
 
Maintaining the Front Door to Netflix
Maintaining the Front Door to NetflixMaintaining the Front Door to Netflix
Maintaining the Front Door to NetflixBenjamin Schmaus
 
Your API is So 2006 - MoDevEast 2011
Your API is So 2006 - MoDevEast 2011Your API is So 2006 - MoDevEast 2011
Your API is So 2006 - MoDevEast 2011Delyn Simons
 
Open APIs: What's Hot, What's Not?
Open APIs: What's Hot, What's Not?Open APIs: What's Hot, What's Not?
Open APIs: What's Hot, What's Not?John Musser
 
Open APIs - State of the Market 2011
Open APIs - State of the Market 2011Open APIs - State of the Market 2011
Open APIs - State of the Market 2011John Musser
 
Open APIs and the Semantic Web 2011
Open APIs and the Semantic Web 2011Open APIs and the Semantic Web 2011
Open APIs and the Semantic Web 2011John Musser
 
Open APIs: State of the Market, May 2010
Open APIs: State of the Market, May 2010Open APIs: State of the Market, May 2010
Open APIs: State of the Market, May 2010John Musser
 
Gotta Block ‘Em All – Observations on Controlling Access to Mobile APIs using...
Gotta Block ‘Em All – Observations on Controlling Access to Mobile APIs using...Gotta Block ‘Em All – Observations on Controlling Access to Mobile APIs using...
Gotta Block ‘Em All – Observations on Controlling Access to Mobile APIs using...Nordic APIs
 
Who Cares About APIs? (NordicAPIS April 2014)
Who Cares About APIs? (NordicAPIS April 2014)Who Cares About APIs? (NordicAPIS April 2014)
Who Cares About APIs? (NordicAPIS April 2014)Nordic APIs
 
KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...
KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...
KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...John Musser
 
NPR: Digital Distribution Strategy: OSCON2010
NPR: Digital Distribution Strategy: OSCON2010NPR: Digital Distribution Strategy: OSCON2010
NPR: Digital Distribution Strategy: OSCON2010Daniel Jacobson
 

Mais procurados (20)

APIs for Internal Audiences - Netflix - App Dev Conference
APIs for Internal Audiences - Netflix - App Dev ConferenceAPIs for Internal Audiences - Netflix - App Dev Conference
APIs for Internal Audiences - Netflix - App Dev Conference
 
Set Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPRSet Your Content Free! : Case Studies from Netflix and NPR
Set Your Content Free! : Case Studies from Netflix and NPR
 
Netflix API: Keynote at Disney Tech Conference
Netflix API: Keynote at Disney Tech ConferenceNetflix API: Keynote at Disney Tech Conference
Netflix API: Keynote at Disney Tech Conference
 
Maintaining the Netflix Front Door - Presentation at Intuit Meetup
Maintaining the Netflix Front Door - Presentation at Intuit MeetupMaintaining the Netflix Front Door - Presentation at Intuit Meetup
Maintaining the Netflix Front Door - Presentation at Intuit Meetup
 
Why API? - Business of APIs Conference
Why API? - Business of APIs ConferenceWhy API? - Business of APIs Conference
Why API? - Business of APIs Conference
 
Techniques for Scaling the Netflix API - QCon SF
Techniques for Scaling the Netflix API - QCon SFTechniques for Scaling the Netflix API - QCon SF
Techniques for Scaling the Netflix API - QCon SF
 
API Revolutions : Netflix's API Redesign
API Revolutions : Netflix's API RedesignAPI Revolutions : Netflix's API Redesign
API Revolutions : Netflix's API Redesign
 
Netflix API - Separation of Concerns
Netflix API - Separation of ConcernsNetflix API - Separation of Concerns
Netflix API - Separation of Concerns
 
Scaling the Netflix API - From Atlassian Dev Den
Scaling the Netflix API - From Atlassian Dev DenScaling the Netflix API - From Atlassian Dev Den
Scaling the Netflix API - From Atlassian Dev Den
 
Maintaining the Front Door to Netflix
Maintaining the Front Door to NetflixMaintaining the Front Door to Netflix
Maintaining the Front Door to Netflix
 
Huge: Running an API at Scale
Huge: Running an API at ScaleHuge: Running an API at Scale
Huge: Running an API at Scale
 
Your API is So 2006 - MoDevEast 2011
Your API is So 2006 - MoDevEast 2011Your API is So 2006 - MoDevEast 2011
Your API is So 2006 - MoDevEast 2011
 
Open APIs: What's Hot, What's Not?
Open APIs: What's Hot, What's Not?Open APIs: What's Hot, What's Not?
Open APIs: What's Hot, What's Not?
 
Open APIs - State of the Market 2011
Open APIs - State of the Market 2011Open APIs - State of the Market 2011
Open APIs - State of the Market 2011
 
Open APIs and the Semantic Web 2011
Open APIs and the Semantic Web 2011Open APIs and the Semantic Web 2011
Open APIs and the Semantic Web 2011
 
Open APIs: State of the Market, May 2010
Open APIs: State of the Market, May 2010Open APIs: State of the Market, May 2010
Open APIs: State of the Market, May 2010
 
Gotta Block ‘Em All – Observations on Controlling Access to Mobile APIs using...
Gotta Block ‘Em All – Observations on Controlling Access to Mobile APIs using...Gotta Block ‘Em All – Observations on Controlling Access to Mobile APIs using...
Gotta Block ‘Em All – Observations on Controlling Access to Mobile APIs using...
 
Who Cares About APIs? (NordicAPIS April 2014)
Who Cares About APIs? (NordicAPIS April 2014)Who Cares About APIs? (NordicAPIS April 2014)
Who Cares About APIs? (NordicAPIS April 2014)
 
KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...
KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...
KPIs for APIs (and how API Calls are the new Web Hits, and you may be measuri...
 
NPR: Digital Distribution Strategy: OSCON2010
NPR: Digital Distribution Strategy: OSCON2010NPR: Digital Distribution Strategy: OSCON2010
NPR: Digital Distribution Strategy: OSCON2010
 

Destaque

API Strategy Evolution at Netflix
API Strategy Evolution at NetflixAPI Strategy Evolution at Netflix
API Strategy Evolution at NetflixMichael Hart
 
20110611 Facebook Case Study
20110611 Facebook Case Study20110611 Facebook Case Study
20110611 Facebook Case StudyYuki MAEJIMA
 
The better PHP API (EN)
The better PHP API (EN)The better PHP API (EN)
The better PHP API (EN)boen_robot
 
PIXNET iOS SDK @OSDC 2014
PIXNET iOS SDK @OSDC 2014PIXNET iOS SDK @OSDC 2014
PIXNET iOS SDK @OSDC 2014Cloud Sung
 
The Marketing Playbook for API & SDK Adoption
The Marketing Playbook for API & SDK AdoptionThe Marketing Playbook for API & SDK Adoption
The Marketing Playbook for API & SDK AdoptionKate Pietrelli
 
Swagger for-your-api
Swagger for-your-apiSwagger for-your-api
Swagger for-your-apiTony Tam
 
Writing code samples for API/SDK documentation
Writing code samples for API/SDK documentationWriting code samples for API/SDK documentation
Writing code samples for API/SDK documentationTom Johnson
 
[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js
[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js
[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.jsAmazon Web Services Japan
 
I Love APIs 2015: Crash Course Foundational Topics in Apigee Edge Workshop
I Love APIs 2015: Crash Course Foundational Topics in Apigee Edge WorkshopI Love APIs 2015: Crash Course Foundational Topics in Apigee Edge Workshop
I Love APIs 2015: Crash Course Foundational Topics in Apigee Edge WorkshopApigee | Google Cloud
 
Netflix Global Cloud Architecture
Netflix Global Cloud ArchitectureNetflix Global Cloud Architecture
Netflix Global Cloud ArchitectureAdrian Cockcroft
 
Best Practices for API Management
Best Practices for API Management Best Practices for API Management
Best Practices for API Management WSO2
 
iPaaS: A platform for Integration technology convergence
iPaaS: A platform for Integration technology convergenceiPaaS: A platform for Integration technology convergence
iPaaS: A platform for Integration technology convergenceRaveendra Babu Darsi
 
20170324 html5j web_paltform_study
20170324 html5j web_paltform_study20170324 html5j web_paltform_study
20170324 html5j web_paltform_studyJunichi Okamura
 
API Management architect presentation
API Management architect presentationAPI Management architect presentation
API Management architect presentationsflynn073
 

Destaque (20)

API Strategy Evolution at Netflix
API Strategy Evolution at NetflixAPI Strategy Evolution at Netflix
API Strategy Evolution at Netflix
 
Culture
CultureCulture
Culture
 
20110611 Facebook Case Study
20110611 Facebook Case Study20110611 Facebook Case Study
20110611 Facebook Case Study
 
Wtf is API and SDK
Wtf is API and SDKWtf is API and SDK
Wtf is API and SDK
 
The better PHP API (EN)
The better PHP API (EN)The better PHP API (EN)
The better PHP API (EN)
 
PIXNET iOS SDK @OSDC 2014
PIXNET iOS SDK @OSDC 2014PIXNET iOS SDK @OSDC 2014
PIXNET iOS SDK @OSDC 2014
 
The Marketing Playbook for API & SDK Adoption
The Marketing Playbook for API & SDK AdoptionThe Marketing Playbook for API & SDK Adoption
The Marketing Playbook for API & SDK Adoption
 
Swagger for-your-api
Swagger for-your-apiSwagger for-your-api
Swagger for-your-api
 
Writing code samples for API/SDK documentation
Writing code samples for API/SDK documentationWriting code samples for API/SDK documentation
Writing code samples for API/SDK documentation
 
[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js
[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js
[AWSマイスターシリーズ] AWS SDK for PHP / Ruby / boto(Python) / JavaScript in Node.js
 
I Love APIs 2015: Crash Course Foundational Topics in Apigee Edge Workshop
I Love APIs 2015: Crash Course Foundational Topics in Apigee Edge WorkshopI Love APIs 2015: Crash Course Foundational Topics in Apigee Edge Workshop
I Love APIs 2015: Crash Course Foundational Topics in Apigee Edge Workshop
 
Rethinking Cloud Proxies
Rethinking Cloud ProxiesRethinking Cloud Proxies
Rethinking Cloud Proxies
 
Zuul @ Netflix SpringOne Platform
Zuul @ Netflix SpringOne PlatformZuul @ Netflix SpringOne Platform
Zuul @ Netflix SpringOne Platform
 
Netflix Global Cloud Architecture
Netflix Global Cloud ArchitectureNetflix Global Cloud Architecture
Netflix Global Cloud Architecture
 
Best Practices for API Management
Best Practices for API Management Best Practices for API Management
Best Practices for API Management
 
iPaaS: A platform for Integration technology convergence
iPaaS: A platform for Integration technology convergenceiPaaS: A platform for Integration technology convergence
iPaaS: A platform for Integration technology convergence
 
Media Workloads on AWS
Media Workloads on AWSMedia Workloads on AWS
Media Workloads on AWS
 
20170324 html5j web_paltform_study
20170324 html5j web_paltform_study20170324 html5j web_paltform_study
20170324 html5j web_paltform_study
 
IoT architecture
IoT architectureIoT architecture
IoT architecture
 
API Management architect presentation
API Management architect presentationAPI Management architect presentation
API Management architect presentation
 

Semelhante a The future-of-netflix-api

API Design - When to buck the trend (Webcast)
API Design - When to buck the trend (Webcast)API Design - When to buck the trend (Webcast)
API Design - When to buck the trend (Webcast)Apigee | Google Cloud
 
Open API Ecosystem Overview: December 2010
Open API Ecosystem Overview: December 2010Open API Ecosystem Overview: December 2010
Open API Ecosystem Overview: December 2010John Musser
 
AWS Webinar Series - Developing and Implementing APIs at Scale
AWS Webinar Series - Developing and Implementing APIs at ScaleAWS Webinar Series - Developing and Implementing APIs at Scale
AWS Webinar Series - Developing and Implementing APIs at ScaleAmazon Web Services
 
Use Alexa to Reach Millions of New Customers by Developing for Multiple Scree...
Use Alexa to Reach Millions of New Customers by Developing for Multiple Scree...Use Alexa to Reach Millions of New Customers by Developing for Multiple Scree...
Use Alexa to Reach Millions of New Customers by Developing for Multiple Scree...Amazon Web Services
 
apidays LIVE Paris 2021 - Deliver real-time data to customer using Streaming ...
apidays LIVE Paris 2021 - Deliver real-time data to customer using Streaming ...apidays LIVE Paris 2021 - Deliver real-time data to customer using Streaming ...
apidays LIVE Paris 2021 - Deliver real-time data to customer using Streaming ...apidays
 
api_101
api_101api_101
api_101samir
 
戦う情シス!全社 API で社内アプリ開発を加速させよう
戦う情シス!全社 API で社内アプリ開発を加速させよう戦う情シス!全社 API で社内アプリ開発を加速させよう
戦う情シス!全社 API で社内アプリ開発を加速させようYuki Hattori
 
Design & Deploy a data-driven Web API in 2 hours
Design & Deploy a data-driven Web API in 2 hoursDesign & Deploy a data-driven Web API in 2 hours
Design & Deploy a data-driven Web API in 2 hoursRestlet
 
Why your next serverless project should use AWS AppSync
Why your next serverless project should use AWS AppSyncWhy your next serverless project should use AWS AppSync
Why your next serverless project should use AWS AppSyncYan Cui
 
Start Up Austin 2017: Serverless Real Time Analytics
Start Up Austin 2017:  Serverless Real Time AnalyticsStart Up Austin 2017:  Serverless Real Time Analytics
Start Up Austin 2017: Serverless Real Time AnalyticsAmazon Web Services
 
Open Ap Is State Of The Market
Open Ap Is State Of The MarketOpen Ap Is State Of The Market
Open Ap Is State Of The MarketConSanFrancisco123
 
APIdays Helsinki 2019 - To What Extent are APIs a Strategic Tool for a Global...
APIdays Helsinki 2019 - To What Extent are APIs a Strategic Tool for a Global...APIdays Helsinki 2019 - To What Extent are APIs a Strategic Tool for a Global...
APIdays Helsinki 2019 - To What Extent are APIs a Strategic Tool for a Global...apidays
 
Developing and Implementing APIs at Scale, the Servless Way - Ed Lima - AWS T...
Developing and Implementing APIs at Scale, the Servless Way - Ed Lima - AWS T...Developing and Implementing APIs at Scale, the Servless Way - Ed Lima - AWS T...
Developing and Implementing APIs at Scale, the Servless Way - Ed Lima - AWS T...Amazon Web Services
 
Open Source Options for Building your WebRTC Solution, May 2015 @ WebRTC Conf...
Open Source Options for Building your WebRTC Solution, May 2015 @ WebRTC Conf...Open Source Options for Building your WebRTC Solution, May 2015 @ WebRTC Conf...
Open Source Options for Building your WebRTC Solution, May 2015 @ WebRTC Conf...Alexandre Gouaillard
 
Building an AWS IoT-Enabled Drink Dispenser (IOT405) - AWS re:Invent 2018
Building an AWS IoT-Enabled Drink Dispenser (IOT405) - AWS re:Invent 2018Building an AWS IoT-Enabled Drink Dispenser (IOT405) - AWS re:Invent 2018
Building an AWS IoT-Enabled Drink Dispenser (IOT405) - AWS re:Invent 2018Amazon Web Services
 
Beyond Infrastructure for SAP on AWS (GPSTEC322) - AWS re:Invent 2018
Beyond Infrastructure for SAP on AWS (GPSTEC322) - AWS re:Invent 2018Beyond Infrastructure for SAP on AWS (GPSTEC322) - AWS re:Invent 2018
Beyond Infrastructure for SAP on AWS (GPSTEC322) - AWS re:Invent 2018Amazon Web Services
 
AWS API Framework Overview
AWS API Framework OverviewAWS API Framework Overview
AWS API Framework OverviewAPI Talent
 
Building APIs with Amazon API Gateway
Building APIs with Amazon API GatewayBuilding APIs with Amazon API Gateway
Building APIs with Amazon API GatewayAmazon Web Services
 
Building APIs with Amazon API Gateway: re:Invent 2018 Recap at the AWS Loft -...
Building APIs with Amazon API Gateway: re:Invent 2018 Recap at the AWS Loft -...Building APIs with Amazon API Gateway: re:Invent 2018 Recap at the AWS Loft -...
Building APIs with Amazon API Gateway: re:Invent 2018 Recap at the AWS Loft -...Amazon Web Services
 

Semelhante a The future-of-netflix-api (20)

API Design - When to buck the trend (Webcast)
API Design - When to buck the trend (Webcast)API Design - When to buck the trend (Webcast)
API Design - When to buck the trend (Webcast)
 
Open API Ecosystem Overview: December 2010
Open API Ecosystem Overview: December 2010Open API Ecosystem Overview: December 2010
Open API Ecosystem Overview: December 2010
 
AWS Webinar Series - Developing and Implementing APIs at Scale
AWS Webinar Series - Developing and Implementing APIs at ScaleAWS Webinar Series - Developing and Implementing APIs at Scale
AWS Webinar Series - Developing and Implementing APIs at Scale
 
Use Alexa to Reach Millions of New Customers by Developing for Multiple Scree...
Use Alexa to Reach Millions of New Customers by Developing for Multiple Scree...Use Alexa to Reach Millions of New Customers by Developing for Multiple Scree...
Use Alexa to Reach Millions of New Customers by Developing for Multiple Scree...
 
apidays LIVE Paris 2021 - Deliver real-time data to customer using Streaming ...
apidays LIVE Paris 2021 - Deliver real-time data to customer using Streaming ...apidays LIVE Paris 2021 - Deliver real-time data to customer using Streaming ...
apidays LIVE Paris 2021 - Deliver real-time data to customer using Streaming ...
 
api_101
api_101api_101
api_101
 
戦う情シス!全社 API で社内アプリ開発を加速させよう
戦う情シス!全社 API で社内アプリ開発を加速させよう戦う情シス!全社 API で社内アプリ開発を加速させよう
戦う情シス!全社 API で社内アプリ開発を加速させよう
 
Design & Deploy a data-driven Web API in 2 hours
Design & Deploy a data-driven Web API in 2 hoursDesign & Deploy a data-driven Web API in 2 hours
Design & Deploy a data-driven Web API in 2 hours
 
Why your next serverless project should use AWS AppSync
Why your next serverless project should use AWS AppSyncWhy your next serverless project should use AWS AppSync
Why your next serverless project should use AWS AppSync
 
Start Up Austin 2017: Serverless Real Time Analytics
Start Up Austin 2017:  Serverless Real Time AnalyticsStart Up Austin 2017:  Serverless Real Time Analytics
Start Up Austin 2017: Serverless Real Time Analytics
 
Open Ap Is State Of The Market
Open Ap Is State Of The MarketOpen Ap Is State Of The Market
Open Ap Is State Of The Market
 
APIdays Helsinki 2019 - To What Extent are APIs a Strategic Tool for a Global...
APIdays Helsinki 2019 - To What Extent are APIs a Strategic Tool for a Global...APIdays Helsinki 2019 - To What Extent are APIs a Strategic Tool for a Global...
APIdays Helsinki 2019 - To What Extent are APIs a Strategic Tool for a Global...
 
Developing and Implementing APIs at Scale, the Servless Way - Ed Lima - AWS T...
Developing and Implementing APIs at Scale, the Servless Way - Ed Lima - AWS T...Developing and Implementing APIs at Scale, the Servless Way - Ed Lima - AWS T...
Developing and Implementing APIs at Scale, the Servless Way - Ed Lima - AWS T...
 
Open Source Options for Building your WebRTC Solution, May 2015 @ WebRTC Conf...
Open Source Options for Building your WebRTC Solution, May 2015 @ WebRTC Conf...Open Source Options for Building your WebRTC Solution, May 2015 @ WebRTC Conf...
Open Source Options for Building your WebRTC Solution, May 2015 @ WebRTC Conf...
 
Building an AWS IoT-Enabled Drink Dispenser (IOT405) - AWS re:Invent 2018
Building an AWS IoT-Enabled Drink Dispenser (IOT405) - AWS re:Invent 2018Building an AWS IoT-Enabled Drink Dispenser (IOT405) - AWS re:Invent 2018
Building an AWS IoT-Enabled Drink Dispenser (IOT405) - AWS re:Invent 2018
 
Beyond Infrastructure for SAP on AWS (GPSTEC322) - AWS re:Invent 2018
Beyond Infrastructure for SAP on AWS (GPSTEC322) - AWS re:Invent 2018Beyond Infrastructure for SAP on AWS (GPSTEC322) - AWS re:Invent 2018
Beyond Infrastructure for SAP on AWS (GPSTEC322) - AWS re:Invent 2018
 
AWS API Framework Overview
AWS API Framework OverviewAWS API Framework Overview
AWS API Framework Overview
 
Building APIs with Amazon API Gateway
Building APIs with Amazon API GatewayBuilding APIs with Amazon API Gateway
Building APIs with Amazon API Gateway
 
Building APIs with Amazon API Gateway: re:Invent 2018 Recap at the AWS Loft -...
Building APIs with Amazon API Gateway: re:Invent 2018 Recap at the AWS Loft -...Building APIs with Amazon API Gateway: re:Invent 2018 Recap at the AWS Loft -...
Building APIs with Amazon API Gateway: re:Invent 2018 Recap at the AWS Loft -...
 
API World Conference
API World ConferenceAPI World Conference
API World Conference
 

Mais de Daniel Jacobson

Netflix Edge Engineering Open House Presentations - June 9, 2016
Netflix Edge Engineering Open House Presentations - June 9, 2016Netflix Edge Engineering Open House Presentations - June 9, 2016
Netflix Edge Engineering Open House Presentations - June 9, 2016Daniel Jacobson
 
Top 10 Lessons Learned from the Netflix API - OSCON 2014
Top 10 Lessons Learned from the Netflix API - OSCON 2014Top 10 Lessons Learned from the Netflix API - OSCON 2014
Top 10 Lessons Learned from the Netflix API - OSCON 2014Daniel Jacobson
 
Maintaining the Front Door to Netflix : The Netflix API
Maintaining the Front Door to Netflix : The Netflix APIMaintaining the Front Door to Netflix : The Netflix API
Maintaining the Front Door to Netflix : The Netflix APIDaniel Jacobson
 
NPR Presentation at Wolfram Data Summit 2010
NPR Presentation at Wolfram Data Summit 2010NPR Presentation at Wolfram Data Summit 2010
NPR Presentation at Wolfram Data Summit 2010Daniel Jacobson
 
NPR's Digital Distribution and Mobile Strategy
NPR's Digital Distribution and Mobile StrategyNPR's Digital Distribution and Mobile Strategy
NPR's Digital Distribution and Mobile StrategyDaniel Jacobson
 
NPR API Usage and Metrics
NPR API Usage and MetricsNPR API Usage and Metrics
NPR API Usage and MetricsDaniel Jacobson
 
OpenID Adoption UX Summit
OpenID Adoption UX SummitOpenID Adoption UX Summit
OpenID Adoption UX SummitDaniel Jacobson
 

Mais de Daniel Jacobson (8)

Netflix Edge Engineering Open House Presentations - June 9, 2016
Netflix Edge Engineering Open House Presentations - June 9, 2016Netflix Edge Engineering Open House Presentations - June 9, 2016
Netflix Edge Engineering Open House Presentations - June 9, 2016
 
Top 10 Lessons Learned from the Netflix API - OSCON 2014
Top 10 Lessons Learned from the Netflix API - OSCON 2014Top 10 Lessons Learned from the Netflix API - OSCON 2014
Top 10 Lessons Learned from the Netflix API - OSCON 2014
 
Maintaining the Front Door to Netflix : The Netflix API
Maintaining the Front Door to Netflix : The Netflix APIMaintaining the Front Door to Netflix : The Netflix API
Maintaining the Front Door to Netflix : The Netflix API
 
NPR Presentation at Wolfram Data Summit 2010
NPR Presentation at Wolfram Data Summit 2010NPR Presentation at Wolfram Data Summit 2010
NPR Presentation at Wolfram Data Summit 2010
 
NPR's Digital Distribution and Mobile Strategy
NPR's Digital Distribution and Mobile StrategyNPR's Digital Distribution and Mobile Strategy
NPR's Digital Distribution and Mobile Strategy
 
NPR API Usage and Metrics
NPR API Usage and MetricsNPR API Usage and Metrics
NPR API Usage and Metrics
 
OpenID Adoption UX Summit
OpenID Adoption UX SummitOpenID Adoption UX Summit
OpenID Adoption UX Summit
 
NPR : Examples of COPE
NPR : Examples of COPENPR : Examples of COPE
NPR : Examples of COPE
 

Último

SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESmohitsingh558521
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demoHarshalMandlekar2
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsNathaniel Shimoni
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek SchlawackFwdays
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 

Último (20)

SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICESSALESFORCE EDUCATION CLOUD | FEXLE SERVICES
SALESFORCE EDUCATION CLOUD | FEXLE SERVICES
 
Sample pptx for embedding into website for demo
Sample pptx for embedding into website for demoSample pptx for embedding into website for demo
Sample pptx for embedding into website for demo
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Time Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directionsTime Series Foundation Models - current state and future directions
Time Series Foundation Models - current state and future directions
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
"Subclassing and Composition – A Pythonic Tour of Trade-Offs", Hynek Schlawack
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 

The future-of-netflix-api

  • 1. Netflix API To Infinity and Beyond…
  • 2. Growth of the Netflix API Over 10 BILLION requests in November (Peaks at about 10,000 requests per second)
  • 3.
  • 4.
  • 5.
  • 6. It is time to get back to thinking about the future…
  • 7. First Step: Back to the Drawing Board…
  • 8. Some of our Key Goals Resiliency, Reliability and Stability Maximize uptime Scalability System can grow without needing frequent refactoring Simplicity Easier integration for API consumers Agility Architecture will support rapid development without compromising the core of the system
  • 9.
  • 10. Wii iPad App PS3 iPhone App Netflix API Apple TV Google TV TiVo Roku XBox
  • 11. Future Architecture needs to support key audience first with a trickle down of features to the public audience Wii Roku PS3 iPhone App iPad App Google TV Netflix API Apple TV XBox TiVo
  • 12. Hide Our Internal Business Dependencies from API Consumers
  • 13. (Some) API Interfaces and Their Dependencies Auto-Complete Rental History Agg Lists Similars LIsts Queues SEARCH SIMILARS SYSTEM RECOMMENDATION ENGINE QUEUE RENTAL HISTORY Title Details Previews Ratings Recommendations Title States CINEMATCH CONTENT MANAGEMENT SYSTEM TITLE STATES REST Interface API Dependency
  • 14. INTERNET REQUEST UNIFIED LIST/TITLE RESPONSE WITH PARTIAL RESPONSE BUILT IN SIMILARS LIST SEARCH LIST RENTAL HISTORY LIST TITLE LIST QUEUE LIST AUTO COMPLETE LIST ETC… TITLE INFORMATION TITLE STATE RATING RECOMMEND ATION TITLE DETAILS
  • 15. iPhone Wrapper Recommend-ation Recommend-ation Service Xbox Wrapper Ratings Service SHARED API INTER-FACES LIST API Ratings Wii Wrapper PS3 Wrapper TITLE API Rental History Rental History Service Roku Wrapper USER API User Account iPad Wrapper Normal-ization And Resiiency AppleTV Wrapper Queue AUTH API PC / Mac Wrapper Title Catalog TiVo Wrapper Source Data Layer API Repository Layer Web Service Layer Shared Layer Wrapper Layer API Layer App Layer
  • 16. iPhone Wrapper Recommend-ation Recommend-ation Service Xbox Wrapper Ratings Service SHARED API INTER-FACES LIST API Ratings Wii Wrapper THESE ARE SOME OF THE DATA SOURCES THAT PROVIDE CONTENT TO THE API PS3 Wrapper TITLE API Rental History Rental History Service Roku Wrapper USER API User Account iPad Wrapper Normal-ization And Resiiency AppleTV Wrapper Queue AUTH API PC / Mac Wrapper Title Catalog TiVo Wrapper Source Data Layer API Repository Layer Web Service Layer Shared Layer Wrapper Layer API Layer App Layer
  • 17. iPhone Wrapper Recommend-ation Recommend-ation Service Xbox Wrapper Ratings Service SHARED API INTER-FACES LIST API Ratings Wii Wrapper THESE ARE SOME OF THE SERVICES PROVIDED BY SOME OF THE API DEPENDENCIES THROUGH WHICH CONTENT IS MADE AVAILABLE TO THE API PS3 Wrapper TITLE API Rental History Rental History Service Roku Wrapper USER API User Account iPad Wrapper Normal-ization And Resiiency AppleTV Wrapper Queue AUTH API PC / Mac Wrapper Title Catalog TiVo Wrapper Source Data Layer API Repository Layer Web Service Layer Shared Layer Wrapper Layer API Layer App Layer
  • 18. iPhone Wrapper Recommend-ation Recommend-ation Service Xbox Wrapper Ratings Service SHARED API INTER-FACES LIST API Ratings Wii Wrapper THIS IS THE LAYER WHERE THE API CAN NORMALIZE THE DATA TO PREPARE IT FOR CONSUMPTION BY API CLIENTS. IT COULD ALSO BE WHERE THE API CAN APPLY RESILIENCY MEASURES TO PROTECT AGAINST FAILURES FROM THE API DEPENDENCIES. ALTHOUGH THE DIAGRAM REPRESENTS THIS AS A DISCRETE API LAYER, IT COULD JUST AS EASILY BE A DISTRIBUTED MODEL ACROSS THE DEPENDENCIES. PS3 Wrapper TITLE API Rental History Rental History Service Roku Wrapper USER API User Account iPad Wrapper Normal-ization And Resiiency AppleTV Wrapper Queue AUTH API PC / Mac Wrapper Title Catalog TiVo Wrapper Source Data Layer API Repository Layer Web Service Layer Shared Layer Wrapper Layer API Layer App Layer
  • 19. iPhone Wrapper Recommend-ation Recommend-ation Service Xbox Wrapper Ratings Service SHARED API INTER-FACES LIST API Ratings Wii Wrapper MAKING PURE APIs WILL IMPROVE THE CONSISTENCY OF THE API CODE AND THOSE THAT CONSUME IT. THIS WOULD HELP PRODUCT MANAGERS AS WELL SINCE THE CODE FOR THEIR PRODUCTS CAN ALSO BECOME MORE UNIFORM. PS3 Wrapper TITLE API Rental History Rental History Service Roku Wrapper USER API User Account iPad Wrapper Normal-ization And Resiiency AppleTV Wrapper Queue AUTH API PC / Mac Wrapper Title Catalog TiVo Wrapper Source Data Layer API Repository Layer Web Service Layer Shared Layer Wrapper Layer API Layer App Layer
  • 20. iPhone Wrapper Recommend-ation Recommend-ation Service Xbox Wrapper Ratings Service SHARED API INTER-FACES LIST API Ratings Wii Wrapper THE SHARED API INTERFACE LAYER ALLOWS THE VARIOUS CLIENTS TO MERGE RESULTS FROM THE PURE APIs AND PREPARE THEM IN WAYS THAT ARE CONDUCIVE TO THE GOALS OF THEIR APP. MEANWHILE, ANY OF THESE INTERFACES CAN BE SHARED ACROSS THE CLIENTS SINCE MANY OF THESE INTERFACES WILL BE COMMON ACROSS THE PLATFORMS. PS3 Wrapper TITLE API Rental History Rental History Service Roku Wrapper USER API User Account iPad Wrapper Normal-ization And Resiiency AppleTV Wrapper Queue AUTH API PC / Mac Wrapper Title Catalog TiVo Wrapper Source Data Layer API Repository Layer Web Service Layer Shared Layer Wrapper Layer API Layer App Layer
  • 21. iPhone Wrapper Recommend-ation Recommend-ation Service Xbox Wrapper Ratings Service SHARED API INTER-FACES LIST API Ratings Wii Wrapper THE WRAPPER LAYER IS DESIGNED TO CONSUME THE PURE APIS AND/OR THE SHARED INTERFACES WHILE ALLOWING DEVICE/APP-SPECIFIC IMPLEMENTATIONS. SOME OF THESE WRAPPERS ARE THEORETICAL WHILE OTHERS MAY ACTUALLY TAKE ADVANTAGE OF THIS TIER. PS3 Wrapper TITLE API Rental History Rental History Service Roku Wrapper USER API User Account iPad Wrapper Normal-ization And Resiiency AppleTV Wrapper Queue AUTH API PC / Mac Wrapper Title Catalog TiVo Wrapper Source Data Layer API Repository Layer Web Service Layer Shared Layer Wrapper Layer API Layer App Layer
  • 22. iPhone Wrapper Recommend-ation Recommend-ation Service Xbox Wrapper Ratings Service SHARED API INTER-FACES LIST API Ratings Wii Wrapper THESE ARE SOME OF THE ACTUAL INTERNAL API CUSTOMERS TODAY. THIS LIST WILL GROW OVER TIME, BUT THIS ARCHITECTURE WILL SCALE ACCORDINGLY. PS3 Wrapper TITLE API Rental History Rental History Service Roku Wrapper USER API User Account iPad Wrapper Normal-ization And Resiiency AppleTV Wrapper Queue AUTH API PC / Mac Wrapper Title Catalog TiVo Wrapper Source Data Layer API Repository Layer Web Service Layer Shared Layer Wrapper Layer API Layer App Layer
  • 23. Flexible API RequestsAs flexible as SQL SELECT person_first_name, person_last_name, dept_name FROM person, department WHERE UPPER(dept_name) LIKE ‘%Engineering%’ AND person_added_date BETWEEN ‘2002-01-01’ AND sysdate ORDER BY person_last_name ASC Manages Partial Response Determines the Selected API Restricts Output Sorts Results GOAL: API should be able to handle any request that you can do in SQL
  • 24. The Problem with Versioning 1.0 1.5 2.0 3.0? 4.0? 5.0? Today
  • 25. Maybe we don’t need versioning? 1.0 1.5 2.0 Future APIs Today
  • 26. Branching can always be done later… 1.0 1.5 2.0 New API Today
  • 27. XML vs. JSON?Or both? Or other? xml
  • 28. REST…as long as it makes sense for the business
  • 29. Questions? API Management Engineering Manager – Web API Systems: http://bit.ly/9O3Hic API Integration Systems Analyst: http://bit.ly/hyPxCh API Engineering Senior Software Engineer/Architect – Web API Platform: http://bit.ly/e0AKw4 API Test Engineering Senior Software Engineer in Test – API: http://bit.ly/9zHPtJ Senior Software Engineer in Test – API Platform: http://bit.ly/eD3tLn Lead Software Engineer in Test – API: http://bit.ly/fqxBYC Social Engineering Social Systems – Engineer Architect: http://bit.ly/dYq6C8

Notas do Editor

  1. Despite these major changes, the API has still been able to achieve the goals of the company to the point that it is now serving roughly ? billion requests per month.
  2. Over the last two years, the API has seen a ton of changes. Some tactical, some fundamental.
  3. All under great time constraints and pressure to propel the business forward.