‘Why would a company choose to integrate services from KBC Bank? There's a lot to say about that in terms of the business value of those services. But just as relevant is how companies select services and components for their platforms and apps. A large part of the success of services is determined by the ease of integration, the richness of the API’s, the documentation and the overall Developer Experience', says Friso Geerlings (CTO of Digital Agency Isaac). Geerlings, specialised in the effective use of - mostly - open source internet technology in highly integrated contexts, took the test himself and dived into KBC's Developer Portal. He talks about the strengths of the APIs and outlines developments for the near future.
Digital services as an enrichment of partners
'KBC pays great attention to services that fit perfectly into the workflow of companies. The bicycle credit service is an example of this. Companies that sell bicycles can easily integrate KBC's bicycle credit service into their digital environment. This often results in a significant boost of their sales, while the process of applying for credit is taken care of entirely by KBC. Making these kinds of services available via an API is of course a good way to innovate your business model. But at the same time, it also offers new ways to interact you’re your customers, build loyalty and collect data that you can use in a service-oriented way'.
‘In order to get companies enthusiastic about services such as bicycle credit, it is crucial nowadays to take well into account the experiences of developers. Your product can be fantastic, but if it's too complex or unattractive for developers, you can forget about it. They are the ones that will eventually integrate it and their experiences are of key importance in the selection process. Good Developer Experience of technical and digital products is therefore essential to become successful with such a strategy. Think of it as the importance of User Experience, but for technical products', explains Geerlings.
Six rules of thumb for Developer Experience
To guarantee and assess the quality and maturity of Developer Experience, they have six rules of thumb at digital agency Isaac:
- Simple experimentation: is there an 'explore and play' Sandbox and to what extent does it behave like a production environment?
- The 3:30:3 principle: is it possible to understand in 3 seconds what the platform or service is doing? Can I do a test in 30 seconds and do I have a first valuable result within 3 minutes?
- Layered documentation: do developers and product owners quickly get the most important information? And do they find out what functionalities a platform or service offers and what value that adds? Scrum teams look at other things than the specialised developer that will eventually integrate. This has to be taken into account in the documentation.
- The API triad: at what levels can you interact with the platform and services? Is it limited to REST, or are the other two options Webhooks and GraphQL also offered?
- Availability and traceability: to what extent are services with SDKs and plug-ins available in platform-specific marketplaces, such as Magento, and on public cloud serverless integration platforms (also often called iPaaS), such as Azure or Amazon?
- Availability of information: Is the information hidden on the own website or is it also widely accessible on websites and communities where there are many developers, such as Github and Stack Overflow?
3:30:3 principle strongly applied
'If we look at the way in which KBC tries to connect to workflows of companies, for example with the bicycle credit, it is interesting to zoom in on two aspects: the 3:30:3 principle and the API triad. What really stands out about the application of the 3:30:3 principle are three things. First of all, it explains concisely and from a business perspective what you can expect from the API. In addition, KBC is investing heavily in the testability of the API. The Sandbox functionality is a good example of this, where developers can also test without integration and experiment fully. Finally, context is provided for the first API test result, so that the user can easily assess when things are going well or when things are going wrong and how your own software can easily respond to this. In our opinion, the application of the 3:30:3 principle is one of the most powerful tools you can use to make the Developer Experience work well. If, like KBC, you have already done this well, then you have already taken a big step,' Geerlings emphasizes.
Geerlings also discusses the API triad: 'If the API triad is used in its richest form, it is possible to interact with a platform or service on three levels. The first level is REST, which concerns the synchronous sending and receiving of information. The second level is Webhooks that send (asynchronous) push messages from the service in case of status updates or other relevant events, such as successful or failed collection of the bicycle credit. The third level is GraphQL, which enables users to retrieve specific data via queries at their own discretion. For example, if you want to know how many bicycle credits have been taken out in a certain area, in a certain period of time, or until when credits run out. Information from the GraphQL API can be very valuable for the service to the end customer, but the reality is also that for many services and digital products it is still in its very early stages'.
Two-way traffic between provider and user
‘If you were to ask me where things are going, I think the enrichment of API’s according to the API triad is the next big step in the improvement of Developer Experience of many companies. The information that you can make available with GraphQL is now often displayed in portals and dashboards. For both the provider of the API and the user, it is valuable to exchange this for queries against the GraphQL API. This enables the provider to better meet the demands. And it is easier for the user, because he can use queries instead of struggling with often complicated and manual filtering in dashboards and portals'.
Two-way traffic is the motto, says Geerlings: 'APIs promote the openness and possibilities of services. You want to make the best possible use of that. It is quite conceivable that the seller of the bicycles would like to have a customer contact moment after a bicycle credit has been successfully taken out. It is therefore very useful if he can retrieve that data using a query via the GraphQL API at KBC. With the use of GraphQL, the offering party always has an immediate answer, within the data that is available'.
The potential of Azure Logic Apps and AWS AppFlow
Although the richness of the API triad offers many possibilities and benefits for the business, Geerlings also sees a lot of things lurking ahead for development. ‘This richness with the triad of REST, Webhooks and GraphQL also creates a considerable level of integration. In that case, you basically have your Developer Experience as a service provider, but you are not so much responding to the popularity of low code development or the desire for 'results as quickly as possible'. More and more companies are building their integration and business layer functionality on the large public cloud serverless integration platforms. Think of Azure Logic Apps integrations and AWS AppFlow. You can't really ignore them. It is therefore obvious to develop SDKs and plug-ins on top of your API, which you offer on those public cloud serverless integration platforms and in well-known platform-specific marketplaces, such as Magento Commerce, Salesforce Commerce Cloud, CommerceTools and WooCommerce.’
Geerlings proceeds: 'A big advantage of visibility in these kinds of stores is that it’s the new place where companies are looking for interesting integrations and connectors. Unlike the on-premise integration platforms (including Oracle, Camel, Dell Boomi and IBM) for which the connectors were usually only available on a protocol level, the public cloud platforms are now creating marketplace ecosystems on which you can be immediately available as a service provider with your business service. A company like Stripe for example, was present very early on in payments on Azure. For many companies there are opportunities there at the moment.'
Finally, Geerlings says: 'I get excited when companies, such as KBC, are doing a good job of presenting their technical products and thinking about the developer experience in a thorough way. It's just really fun and interesting to see where it’s all going. Certainly with the position that Azure has already conquered and the path that Amazon is now taking. We simply have a lot waiting for us that will offer endless new opportunities. And to KBC I would say: keep up the good work!'
Author: Friso Geerlings, CTO at ISAAC