Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

API SDK Development – Lessons Learned

529 views

Published on

Building a solid API is a challenge but getting our APIs to be adopted by a larger audience, we quickly realized that having solid SDKs is the key element.

At Rubrik we have been developing SDKs to supplement our APIs for over 3 years and during this process we have been making sure our SDKs provide a seamless experience for end-users to consume. When breaking API changes occur during the development of our product.

The key takeaways of this session are:

* How to strategize SDK development against an ever-changing API
* Securely open-source your SDK development process

Published in: Technology
  • Be the first to comment

  • Be the first to like this

API SDK Development – Lessons Learned

  1. 1. API SDK Development - Lessons Learned Jaap Brasser – Developer Advocate
  2. 2. ▪ Rubrik APIs ▪ The Goal ▪ Challenges ▪ Lessons Learned ▪ Questions
  3. 3. Rubrik APIs
  4. 4. ▪ Backup & Restore ▪ Cloud Data Management ▪ Disaster Recovery ▪ Test-Dev scenarios ▪ CI/CD Integration
  5. 5. ▪ APIs are relatively new here – Legacy tools, executables – Custom modules or integrations – GUIs everywhere ▪ Lack of understanding of the API space
  6. 6. ▪ Build from the ground up to be API-first ▪ Good! ▪ API endpoints classified as internal ▪ Not good! ▪ OpenAPI Spec ▪ Excellent!
  7. 7. The Goal
  8. 8. Session Management No Direct API Calls Structured Output Different Users
  9. 9. Ease of Updating Build Tooling on SDK Extend SDK based on tools
  10. 10. Open Source Unit tests Documentation
  11. 11. The Challenges
  12. 12. Team Enablement Open Source Management Bugs in APIs New API versions
  13. 13. Security of SDK Automate everything Branching and Releases
  14. 14. Lessons Learned
  15. 15. Create coding & contribution standards 01 Enforce Unit Tests 02 Enable the contributiors 03 Integrations & Tooling improvements 04 Issues and Contributions Time! 05 Do not automate everything 06
  16. 16. jaap_brasser jaapbrasser

×