SlideShare uma empresa Scribd logo
1 de 29
Evolution of the PayPal API Platform
Enabling the future of Money
QCon San Francisco 2014
Deepak Nadig, Head of API Platform Engineering
InfoQ.com: News & Community Site
• 750,000 unique visitors/month
• Published in 4 languages (English, Chinese, Japanese and Brazilian
Portuguese)
• Post content from our QCon conferences
• News 15-20 / week
• Articles 3-4 / week
• Presentations (videos) 12-15 / week
• Interviews 2-3 / week
• Books 1 / month
Watch the video with slide
synchronization on InfoQ.com!
http://www.infoq.com/presentations
/paypal-api-evolution
Purpose of QCon
- to empower software development by facilitating the spread of
knowledge and innovation
Strategy
- practitioner-driven conference designed for YOU: influencers of
change and innovation in your teams
- speakers and topics driving the evolution and innovation
- connecting and catalyzing the influencers and innovators
Highlights
- attended by more than 12,000 delegates since 2007
- held in 9 cities worldwide
Presented at QCon San Francisco
www.qconsf.com
PAYPAL CONTEXT
2
– 157 million active digital wallets
– 203 markets and 100 currencies
– Serves 2M+ third-partydevelopers
– 2013: Total Payment Volume was $180 billion
– Q3 2014
– Total Payment Volume was $56.6 Billion, $7118 / second
– Growing 29% YoY
– $12 Billion in mobile payments volume (20% of total)
– 895 million transactions, 9.7 million payments / day
– 2014: >1 Billion Mobile Transactions
– 25% cross border trade
In a globally dynamic environment
– 300+ features per quarter
– We roll 100,000+ lines of code every two weeks
PAYPAL EXTERNAL API EVOLUTION
3
PayPal External API
PayPal Capabilities
2001 Instant Payment Notification
2004 Transaction, Mass Pay API
2005 Direct Payment API, Express Checkout
2007 Payment APIs (NVP)
2009 Adaptive APIs (SOAP/XML, NV, JSON)
2013 Payment APIs (REST)
© 2014 PayPal Inc. All rights reserved. Confidential and proprietary.
API PLATFORM CHALLENGES (2012)
4
External API Platform
• Multiple developer portals
• Overlapping, inconsistent APIs
• Learn from large documents
• Complex sign-up process
• Incomplete, unreliable Sandbox
Internal SOA
• Discovery through tribal knowledge
• Overlapping, inconsistent APIs
• Integrating with an API took weeks
• Tight coupling; monoliths
• Proprietary standards & technology
WHAT GOT US HERE WON’T TAKE US THERE
5
Social
Mobile Local
Digital
WHAT GOT US HERE WON’T TAKE US THERE
5
WHAT GOT US HERE WON’T TAKE US THERE
5
WHAT GOT US HERE WON’T TAKE US THERE
5
Time
Performance
Limits
reached
High
growth
Kickoff
API PLATFORM – 2012 TO TARGET STATE
6
API Definition Internal or External Universal
API Discovery Painful Developer Portal
API Design Project specific API as a Product
Architecture Tightly coupled SOA Loosely coupled SOA
Technology Proprietary Standards based
Integration Expensive TTFHW1 < x min
(1) Time to First Hello World – Time to make a simple call/application
PAYPAL API PLATFORM
7
Portfolio of APIs
aligned by business capabilities,
realized by isolated and encapsulated services,
that can be used by internal and external developers
to develop applications and integrations
quickly and cost effectively
API PLATFORM QUALITIES
8
API First
API as a Product
• Work back from the use cases
• API Design Standards
• API portfolio
• Aligned by capabilities
Developer Experience
• Easy to learn, integrate, diagnose
• Time To First Hello World
API Quality Attributes
• Response-time
• Availability
Service Architecture
• Encapsulated, Isolated
• Craftsmanship
Workingbackfromthecustomer
GUIDING TOWARDS TARGET STATE
9
• Define the Target State
• Define shared goals and measure progress
• Facilitate change across the company
TARGET STATE - RUN-TIME ARCHITECTURE
10
API Facade
Payments Instruments Customer
Credit Risk Compliance
Invoicing
Disputes
PayPal Applications
(Wallet, POS)
2nd-party
Applications
(eBay, Braintree)
3nd-party Server
Applications
(Online websites)
PayPal Web
Applications
Experience
APIs
Capability
APIs
Event Bus
Webhooks
3nd-party Mobile
Applications
(Uber, PhotoCard)
Batch
Processing
External
Events
Batch
APIsProtocol conversion
OAuth, CORS
Routing
Orchestration
SHARED GOALS & MEASURING PROGRESS
11
Maturity
Level
Maturity Level
Name
Characteristics (Design, Functional, Operational)
Level 1 Exists All services (classic & new)
Level 2 Functional Complies with API standards, fully tested, basic documentation
Level 3 Core API aligned with product structure, complete developer experience
Level 4 Performant Complies with SLO (Service Level Objectives)
Level 5 Ideal
Fully encapsulated, isolated, meets all design and implementation
principles
Shared goals for completing at least 75% of platform at Maturity Level 3+
Reported across functions and leaders
FACILITATING CHANGE
12
• Educate & evangelize target architecture & standards
• Make it valuable to conform. Make deviations very expensive
• Partition using API Product Structure & ‘bounded contexts’
• Report progress of each API Product & organization
• Make early adopters your evangelists. Celebrate success!
© 2014 PayPal Inc. All rights reserved. Confidential and proprietary.
API PLATFORM EVOLUTION – THE JOURNEY
13
2016
NORM
2012
INITIATED
President buy-in
Company mandate
Seed organization
Right people
2013
EXTERNAL
Launched externally
Initiated internally
Early adopters
2014
EXPANSION
Complete majority
Educate, evangelize
Recognize success
2015
RETIRE LEGACY
Retire & migrate
Transition to norm
EVOLUTION IS MORE THAN TECHNOLOGY
14
People
• API Design team
• API Product owners
• Developer advocates
Process
• Hackathons
• Developer experience
• Company-wide program
Technology/Product
• REST/OAuth
• API Orchestration w/ Groovy
• GDD(1) based tools/Genio
Developer
(1) Google Discovery Document
CUSTOMERS OF THE API PLATFORM
15
Customer Application: PayPal Web Application
APIs: /v1/apis/applications
CUSTOMERS OF THE API PLATFORM
15
Customer Application: PayPal Mobile Application
APIs: /v1/oauth2/token, /v1/wallet/{user-id}/financial-instruments
CUSTOMERS OF THE API PLATFORM
15
Customer Application: eBay Web Page
APIs: /v1/oauth2/token, /v1/vault/token
CUSTOMERS OF THE API PLATFORM
15
Customer Application: Third-party Mobile Application (based on mSDK)
APIs: /v1/oauth2/token, /v1/payments/payment
CUSTOMERS OF THE API PLATFORM
15
Customer Application: Third-party Web Application
APIs: /v1/oauth2/tokens, /v1/payments/payment
CUSTOMERS OF THE API PLATFORM
15
Customer Application: Samsung Wallet (Samsung Galaxy S5, Gear 2, Gear Fit)
APIs: /v1/oauth2/tokens, /v1/wallet/activities
CUSTOMERS OF THE API PLATFORM
15
Customer Application: PayPal Touch
APIs: /v1/oauth2/tokens, /v1/payments
TO CLOSE
16
• PayPal API Platform has been redesigned to support new needs
• Plan to evolve the complete Architecture Business Cycle
• Define target; goals and metrics; manage change
• Educate, evangelize … repeat
• Flexibility may be the most under-rated quality attribute!
Thank you
@deepak_nadig
17
Watch the video with slide synchronization on
InfoQ.com!
http://www.infoq.com/presentations/paypal-
api-evolution

Mais conteúdo relacionado

Mais de C4Media

Does Java Need Inline Types? What Project Valhalla Can Bring to Java
Does Java Need Inline Types? What Project Valhalla Can Bring to JavaDoes Java Need Inline Types? What Project Valhalla Can Bring to Java
Does Java Need Inline Types? What Project Valhalla Can Bring to JavaC4Media
 
Service Meshes- The Ultimate Guide
Service Meshes- The Ultimate GuideService Meshes- The Ultimate Guide
Service Meshes- The Ultimate GuideC4Media
 
Shifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CDShifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CDC4Media
 
CI/CD for Machine Learning
CI/CD for Machine LearningCI/CD for Machine Learning
CI/CD for Machine LearningC4Media
 
Fault Tolerance at Speed
Fault Tolerance at SpeedFault Tolerance at Speed
Fault Tolerance at SpeedC4Media
 
Architectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep SystemsArchitectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep SystemsC4Media
 
ML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.jsML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.jsC4Media
 
Build Your Own WebAssembly Compiler
Build Your Own WebAssembly CompilerBuild Your Own WebAssembly Compiler
Build Your Own WebAssembly CompilerC4Media
 
User & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix ScaleUser & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix ScaleC4Media
 
Scaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's EdgeScaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's EdgeC4Media
 
Make Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home EverywhereMake Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home EverywhereC4Media
 
The Talk You've Been Await-ing For
The Talk You've Been Await-ing ForThe Talk You've Been Await-ing For
The Talk You've Been Await-ing ForC4Media
 
Future of Data Engineering
Future of Data EngineeringFuture of Data Engineering
Future of Data EngineeringC4Media
 
Automated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and MoreAutomated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and MoreC4Media
 
Navigating Complexity: High-performance Delivery and Discovery Teams
Navigating Complexity: High-performance Delivery and Discovery TeamsNavigating Complexity: High-performance Delivery and Discovery Teams
Navigating Complexity: High-performance Delivery and Discovery TeamsC4Media
 
High Performance Cooperative Distributed Systems in Adtech
High Performance Cooperative Distributed Systems in AdtechHigh Performance Cooperative Distributed Systems in Adtech
High Performance Cooperative Distributed Systems in AdtechC4Media
 
Rust's Journey to Async/await
Rust's Journey to Async/awaitRust's Journey to Async/await
Rust's Journey to Async/awaitC4Media
 
Opportunities and Pitfalls of Event-Driven Utopia
Opportunities and Pitfalls of Event-Driven UtopiaOpportunities and Pitfalls of Event-Driven Utopia
Opportunities and Pitfalls of Event-Driven UtopiaC4Media
 
Datadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/DayDatadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/DayC4Media
 
Are We Really Cloud-Native?
Are We Really Cloud-Native?Are We Really Cloud-Native?
Are We Really Cloud-Native?C4Media
 

Mais de C4Media (20)

Does Java Need Inline Types? What Project Valhalla Can Bring to Java
Does Java Need Inline Types? What Project Valhalla Can Bring to JavaDoes Java Need Inline Types? What Project Valhalla Can Bring to Java
Does Java Need Inline Types? What Project Valhalla Can Bring to Java
 
Service Meshes- The Ultimate Guide
Service Meshes- The Ultimate GuideService Meshes- The Ultimate Guide
Service Meshes- The Ultimate Guide
 
Shifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CDShifting Left with Cloud Native CI/CD
Shifting Left with Cloud Native CI/CD
 
CI/CD for Machine Learning
CI/CD for Machine LearningCI/CD for Machine Learning
CI/CD for Machine Learning
 
Fault Tolerance at Speed
Fault Tolerance at SpeedFault Tolerance at Speed
Fault Tolerance at Speed
 
Architectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep SystemsArchitectures That Scale Deep - Regaining Control in Deep Systems
Architectures That Scale Deep - Regaining Control in Deep Systems
 
ML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.jsML in the Browser: Interactive Experiences with Tensorflow.js
ML in the Browser: Interactive Experiences with Tensorflow.js
 
Build Your Own WebAssembly Compiler
Build Your Own WebAssembly CompilerBuild Your Own WebAssembly Compiler
Build Your Own WebAssembly Compiler
 
User & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix ScaleUser & Device Identity for Microservices @ Netflix Scale
User & Device Identity for Microservices @ Netflix Scale
 
Scaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's EdgeScaling Patterns for Netflix's Edge
Scaling Patterns for Netflix's Edge
 
Make Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home EverywhereMake Your Electron App Feel at Home Everywhere
Make Your Electron App Feel at Home Everywhere
 
The Talk You've Been Await-ing For
The Talk You've Been Await-ing ForThe Talk You've Been Await-ing For
The Talk You've Been Await-ing For
 
Future of Data Engineering
Future of Data EngineeringFuture of Data Engineering
Future of Data Engineering
 
Automated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and MoreAutomated Testing for Terraform, Docker, Packer, Kubernetes, and More
Automated Testing for Terraform, Docker, Packer, Kubernetes, and More
 
Navigating Complexity: High-performance Delivery and Discovery Teams
Navigating Complexity: High-performance Delivery and Discovery TeamsNavigating Complexity: High-performance Delivery and Discovery Teams
Navigating Complexity: High-performance Delivery and Discovery Teams
 
High Performance Cooperative Distributed Systems in Adtech
High Performance Cooperative Distributed Systems in AdtechHigh Performance Cooperative Distributed Systems in Adtech
High Performance Cooperative Distributed Systems in Adtech
 
Rust's Journey to Async/await
Rust's Journey to Async/awaitRust's Journey to Async/await
Rust's Journey to Async/await
 
Opportunities and Pitfalls of Event-Driven Utopia
Opportunities and Pitfalls of Event-Driven UtopiaOpportunities and Pitfalls of Event-Driven Utopia
Opportunities and Pitfalls of Event-Driven Utopia
 
Datadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/DayDatadog: a Real-Time Metrics Database for One Quadrillion Points/Day
Datadog: a Real-Time Metrics Database for One Quadrillion Points/Day
 
Are We Really Cloud-Native?
Are We Really Cloud-Native?Are We Really Cloud-Native?
Are We Really Cloud-Native?
 

Último

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 

Último (20)

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 

Evolution of the PayPal API Platform: Enabling the Future of Money

  • 1. Evolution of the PayPal API Platform Enabling the future of Money QCon San Francisco 2014 Deepak Nadig, Head of API Platform Engineering
  • 2. InfoQ.com: News & Community Site • 750,000 unique visitors/month • Published in 4 languages (English, Chinese, Japanese and Brazilian Portuguese) • Post content from our QCon conferences • News 15-20 / week • Articles 3-4 / week • Presentations (videos) 12-15 / week • Interviews 2-3 / week • Books 1 / month Watch the video with slide synchronization on InfoQ.com! http://www.infoq.com/presentations /paypal-api-evolution
  • 3. Purpose of QCon - to empower software development by facilitating the spread of knowledge and innovation Strategy - practitioner-driven conference designed for YOU: influencers of change and innovation in your teams - speakers and topics driving the evolution and innovation - connecting and catalyzing the influencers and innovators Highlights - attended by more than 12,000 delegates since 2007 - held in 9 cities worldwide Presented at QCon San Francisco www.qconsf.com
  • 4. PAYPAL CONTEXT 2 – 157 million active digital wallets – 203 markets and 100 currencies – Serves 2M+ third-partydevelopers – 2013: Total Payment Volume was $180 billion – Q3 2014 – Total Payment Volume was $56.6 Billion, $7118 / second – Growing 29% YoY – $12 Billion in mobile payments volume (20% of total) – 895 million transactions, 9.7 million payments / day – 2014: >1 Billion Mobile Transactions – 25% cross border trade In a globally dynamic environment – 300+ features per quarter – We roll 100,000+ lines of code every two weeks
  • 5. PAYPAL EXTERNAL API EVOLUTION 3 PayPal External API PayPal Capabilities 2001 Instant Payment Notification 2004 Transaction, Mass Pay API 2005 Direct Payment API, Express Checkout 2007 Payment APIs (NVP) 2009 Adaptive APIs (SOAP/XML, NV, JSON) 2013 Payment APIs (REST)
  • 6. © 2014 PayPal Inc. All rights reserved. Confidential and proprietary. API PLATFORM CHALLENGES (2012) 4 External API Platform • Multiple developer portals • Overlapping, inconsistent APIs • Learn from large documents • Complex sign-up process • Incomplete, unreliable Sandbox Internal SOA • Discovery through tribal knowledge • Overlapping, inconsistent APIs • Integrating with an API took weeks • Tight coupling; monoliths • Proprietary standards & technology
  • 7. WHAT GOT US HERE WON’T TAKE US THERE 5 Social Mobile Local Digital
  • 8. WHAT GOT US HERE WON’T TAKE US THERE 5
  • 9. WHAT GOT US HERE WON’T TAKE US THERE 5
  • 10. WHAT GOT US HERE WON’T TAKE US THERE 5 Time Performance Limits reached High growth Kickoff
  • 11. API PLATFORM – 2012 TO TARGET STATE 6 API Definition Internal or External Universal API Discovery Painful Developer Portal API Design Project specific API as a Product Architecture Tightly coupled SOA Loosely coupled SOA Technology Proprietary Standards based Integration Expensive TTFHW1 < x min (1) Time to First Hello World – Time to make a simple call/application
  • 12. PAYPAL API PLATFORM 7 Portfolio of APIs aligned by business capabilities, realized by isolated and encapsulated services, that can be used by internal and external developers to develop applications and integrations quickly and cost effectively
  • 13. API PLATFORM QUALITIES 8 API First API as a Product • Work back from the use cases • API Design Standards • API portfolio • Aligned by capabilities Developer Experience • Easy to learn, integrate, diagnose • Time To First Hello World API Quality Attributes • Response-time • Availability Service Architecture • Encapsulated, Isolated • Craftsmanship Workingbackfromthecustomer
  • 14. GUIDING TOWARDS TARGET STATE 9 • Define the Target State • Define shared goals and measure progress • Facilitate change across the company
  • 15. TARGET STATE - RUN-TIME ARCHITECTURE 10 API Facade Payments Instruments Customer Credit Risk Compliance Invoicing Disputes PayPal Applications (Wallet, POS) 2nd-party Applications (eBay, Braintree) 3nd-party Server Applications (Online websites) PayPal Web Applications Experience APIs Capability APIs Event Bus Webhooks 3nd-party Mobile Applications (Uber, PhotoCard) Batch Processing External Events Batch APIsProtocol conversion OAuth, CORS Routing Orchestration
  • 16. SHARED GOALS & MEASURING PROGRESS 11 Maturity Level Maturity Level Name Characteristics (Design, Functional, Operational) Level 1 Exists All services (classic & new) Level 2 Functional Complies with API standards, fully tested, basic documentation Level 3 Core API aligned with product structure, complete developer experience Level 4 Performant Complies with SLO (Service Level Objectives) Level 5 Ideal Fully encapsulated, isolated, meets all design and implementation principles Shared goals for completing at least 75% of platform at Maturity Level 3+ Reported across functions and leaders
  • 17. FACILITATING CHANGE 12 • Educate & evangelize target architecture & standards • Make it valuable to conform. Make deviations very expensive • Partition using API Product Structure & ‘bounded contexts’ • Report progress of each API Product & organization • Make early adopters your evangelists. Celebrate success!
  • 18. © 2014 PayPal Inc. All rights reserved. Confidential and proprietary. API PLATFORM EVOLUTION – THE JOURNEY 13 2016 NORM 2012 INITIATED President buy-in Company mandate Seed organization Right people 2013 EXTERNAL Launched externally Initiated internally Early adopters 2014 EXPANSION Complete majority Educate, evangelize Recognize success 2015 RETIRE LEGACY Retire & migrate Transition to norm
  • 19. EVOLUTION IS MORE THAN TECHNOLOGY 14 People • API Design team • API Product owners • Developer advocates Process • Hackathons • Developer experience • Company-wide program Technology/Product • REST/OAuth • API Orchestration w/ Groovy • GDD(1) based tools/Genio Developer (1) Google Discovery Document
  • 20. CUSTOMERS OF THE API PLATFORM 15 Customer Application: PayPal Web Application APIs: /v1/apis/applications
  • 21. CUSTOMERS OF THE API PLATFORM 15 Customer Application: PayPal Mobile Application APIs: /v1/oauth2/token, /v1/wallet/{user-id}/financial-instruments
  • 22. CUSTOMERS OF THE API PLATFORM 15 Customer Application: eBay Web Page APIs: /v1/oauth2/token, /v1/vault/token
  • 23. CUSTOMERS OF THE API PLATFORM 15 Customer Application: Third-party Mobile Application (based on mSDK) APIs: /v1/oauth2/token, /v1/payments/payment
  • 24. CUSTOMERS OF THE API PLATFORM 15 Customer Application: Third-party Web Application APIs: /v1/oauth2/tokens, /v1/payments/payment
  • 25. CUSTOMERS OF THE API PLATFORM 15 Customer Application: Samsung Wallet (Samsung Galaxy S5, Gear 2, Gear Fit) APIs: /v1/oauth2/tokens, /v1/wallet/activities
  • 26. CUSTOMERS OF THE API PLATFORM 15 Customer Application: PayPal Touch APIs: /v1/oauth2/tokens, /v1/payments
  • 27. TO CLOSE 16 • PayPal API Platform has been redesigned to support new needs • Plan to evolve the complete Architecture Business Cycle • Define target; goals and metrics; manage change • Educate, evangelize … repeat • Flexibility may be the most under-rated quality attribute!
  • 29. Watch the video with slide synchronization on InfoQ.com! http://www.infoq.com/presentations/paypal- api-evolution