BALANCING BETWEEN INTERNAL AND EXTERNAL DEVELOPER (API) EXPERIENCE

BALANCING BETWEEN INTERNAL AND EXTERNAL DEVELOPER (API) EXPERIENCE

Presented at APIDays Finland 2019 in June 4th.

Ca885e6fec0c28dd2effcd58e506778b?s=128

Jarkko Moilanen, PhD

June 04, 2019
Tweet

Transcript

  1. 1.

    Platformoftrust.net @PlatformOfTrust #dataliikkuu #dataflows BALANCING BETWEEN INTERNAL AND EXTERNAL DEVELOPER

    (API) EXPERIENCE Jarkko Moilanen Developer eXperience Lead @jarkko_moilanen
  2. 2.

    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
  3. 3.

    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
  4. 4.

    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
  5. 5.

    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
  6. 6.

    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
  7. 7.

    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
  8. 8.

    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
  9. 9.

    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
  10. 10.

    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
  11. 11.

    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
  12. 12.

    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”
  13. 13.

    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”
  14. 14.

    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
  15. 16.

    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.
  16. 17.

    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.
  17. 18.