When looking at the entire developer journey, there are many tools that may contribute to the developer’s experience (DevEx or DX), either positively or negatively.
One such tool that has been in much discussion over the past decade are APIs for developers. API Developer Experience is focussed on improving API design so it provides developers with a seamless experience when writing software. In order to achieve an optimum API developer experience, it is important to understand the context of how developers use APIs, what developers need to complete tasks through each stage of the development cycle, the underlying technology, integration points, and looking at how developers
feel while using the APIs.
Similar to the User Experience (UX) of any technology platform, it is not adequate to just develop an innovative and useful tool, the user (in this case, developers) needs to feel comfortable using the product and thus it needs to be intuitive. The more an API is used satisfactorily, the more they will use and promote an API, leading to a better product and ultimately, more business and increased
Amit Jotwani, currently a Developer Advocate at Retool (previously Amazon Alexa), said that “people who are really serious about API should care about developer experience.” Here are 10 aspects he suggested to build a great API experience: –
1. Simplicity: Keep APIs simple. Overcomplicating things is unnecessary and may confuse and already complex tasks for developers.
2. Language: Speak the language of your developers speak. Avoid marketing jargon and be clear about what developers can stop doing if they use your API.
3. Onboarding: Make it quick and easy for organisations and developers to sign up and start using your API. Avoid marketing jargon, and be clear about the problem that your API solves.
4. Time to first “hello world”: From signup, it should not take more than five minutes for a developer to create the first ‘hello world’ app .
5. Documentation: Provide stellar and interactive documentation that is complete and up to date and avoid using PDFs.
6. Code Samples: Provide clear and concise code samples in different programming languages.
7. Limitations: Be clear about costs and limitations of your APIs. Provide free trials so your developers can get familiar with it in a safe environment.
8. Support: Have an FAQ and provide developers with exceptional support. Make it easy and quick for them to raise tickets or chat to get support when they encounter issues with your APIs.
9. Community: Inspire developers to create a space for them to engage with peers, developer evangelists and API product teams through forums, chat or channels such as Stack Overflow, Twitter and Facebook.
10. Measure: Measure the progress of your API developer experience, keep track of how well you are achieving the targets mentioned above and make changes accordingly.
Just as with any app or website, good API starts with understanding its audience. Ronnie Mitra, DX Evangelist and Director of API Design at the API Academy said: “You can’t design for usability if you don’t know who is using your API.”
Further reading on this topic: A great article that explores the API developer experience in more detail; how to achieve it and how to measure it, can be found here: https://nordicapis.com/why-api-developer-experience-matters-more-than-ever/