PayPal SDK
Challenge
PayPal SDKs help developers integrate payment into their website/app. Goal was to facilitate developers to make the first API call in less than 2 minutes. For this, we had to completely rewrite the SDK with the focus on developer experience.
My Role
Principal architect of PayPal SDKs, which have over 8 billion downloads and are part of every single installation of Uber, Snapchat, United Airlines, and other popular apps
I was responsible for architecting, prototyping, developing, and user testing the PHP and node.js SDKs.
Designed and developed the Merchant SDK, Invoice SDK, Permissions SDK, Adaptive Accounts SDK, Adaptive Payments SDK for PHP (see the images below)
Research, Approach and Design
Observed and interviewed more than 100 developers and analyzed over a million
older SDK downloads to understand how different
developers use SDKs.
Brainstormed with developers and architects to synthesize the class
structures and control flows.
Responsible for architecting the PHP and node.js SDKs for different
products. Designed and developed Core SDK, which has all the functionality
for making an API call (web service wrappers) and authentication and
configuration handlers. Other SDKs will use the core to make API calls.
Iteration Validation and Result
We used the new SDKs in hackathons, devcamps, and internal testing events to usertest the new architecture. We went through multiple iterations to accommodate the feedback and observations. As a result, the new SDK enabled developers to make the first API call in less than 1.5 minutes.