Share
Embed
BALANCING BETWEEN INTERNAL AND EXTERNAL DEVELOPER (API) EXPERIENCE
Presented at APIDays Finland 2019 in June 4th.
Jarkko Moilanen, PhD
June 04, 2019
Transcript
18 slides
-
Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows BALANCING BETWEEN INTERNAL AND EXTERNAL DEVELOPER
(API) EXPERIENCE Jarkko Moilanen Developer eXperience Lead @jarkko_moilanen -
Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows ANNUAL LOSS
85$ BILLION Developers spend approximately four hours a week on “bad code,” which equates to nearly $85 billion worldwide in opportunity cost lost annually Bad Developer eXperience is the Joker of the API Economy, burning billions of dollars while just watching the flames. @Jarkko_Moilanen -
Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows LACK OF
DEVELOPERS The amount of skilled developers is limiting development More easily usable tools and APIs can increase the developer base and speed in development @Jarkko_Moilanen -
Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows REDUCED TIME
TO MARKET Getting product to markets fast is essential. Great Developer eXperience with tools and APIs can significantly reduce the time to market timespan. @Jarkko_Moilanen -
Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows DATA LINKING
PLATFORM we make your data flow easily, with marginal of cost while you rule your data @Jarkko_Moilanen -
Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows DX LEAD
GOAL Provide easy access to data and efficient tools to foster creation of applications. Make world more developer friendly Improve the developer experience in everything @Jarkko_Moilanen -
Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows API DEVELOPER
EXPERIENCE Creates value (solves a problem) Reliable Low learning curve Self-service Up-to-date accurate documentation Support Unified and consistent @Jarkko_Moilanen -
Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows DX LEAD
GOAL WITH LIMITATIONS Maximum positive developer experience for the platform (developer) consumers without killing the internal developer experience. @Jarkko_Moilanen -
Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows APIS PLAY
CRUCIAL ROLE @Jarkko_Moilanen The Developer Coefficient report 2018, Stripe & Harris Pol, More than 1,000 developers and more than 1,000 C-level executives -
Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows LANDSCAPE @Jarkko_Moilanen
API Docs API management Sandbox environment Data Product creation Data Consuming Developer Portal API Design Guide CLI tools and libraries Analytics -
Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows 3 CASES
FROM PAST 6 MONTHS @Jarkko_Moilanen Architecture vs exposed APIs RAML vs OpenAPI spec Postman vs Insomnia Related to API Docs -
Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows @Jarkko_Moilanen ARCHITECTURE
EXPOSED APIS • Microservices architecture • Lots of internal APIs • Identity API • Broker API • Product API • …. • Developer needs logical entities • Product and data from same • As few API calls as possible • No chatty APIs ”Your and my primary concern requires compromises. Let’s use HAProxy / API management to solve this” -
Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows @Jarkko_Moilanen RAML
OPEN API • Internal choice • Reuse efficiency • Fading ecosystem • Not possible to use in Slate based documentation • ”Consumer’s choice” • Default and expected • Growing ecosystem • Tooling grows • Can be used in Slate ”Use RAML, I’ll make a tool to handle gap between Slate and RAML” -
Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows @Jarkko_Moilanen Github
Custom tool Slate Github RAML 6 Code examples 40+ Open API spec Slate formatted markdown Build static html pages Stripe style 3 column API documentation Served via Github pages under own domain Change in Github master automatically fires regeneration and deployment of API Docs ALWAYS UP-TO-DATE API DOCUMENTATION docs.oftrust.net -
Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows @Jarkko_Moilanen INSOMNIA
POSTMAN Both provide pretty much the same capabilities to test APs -
Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows @Jarkko_Moilanen INSOMNIA
“They [Insomnia] tend to address the bugs and feature requests in GitHub pretty fast”. “I initially switched to it [Insomnia] simply because the `hosts` bug made Postman unusable” [Insomnia] easier for both new users and experienced users, as well as just having more useful features, and most critically - less bugs. -
Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows @Jarkko_Moilanen INTERNAL
EFFICIENCY WINS Internal developer experience is more important in the beginning to assure development speed Find tools or build processes to satisfy 3rd party DX needs derived from internal DX. -
Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows @Jarkko_Moilanen BECOMING
OPERATIONAL IN 2019! Psst! Sandbox is open already and free for all. developers.oftrust.net