Platform success is mainly determined by developers
Developers’ experiences with a platform are becoming increasingly important for organisations deciding on a certain platform. This means that a good Developer Experience (DX) is essential for its success. Although some providers fail to realise this, fortunately Friso Geerlings, ISAAC Chief Technology Officer, sees other companies who do understand this perfectly.
Developer Experience is the experience a developer has when interacting with a platform’, Geerlings explains. ‘This usually takes place through an Application Programming Interface (API), which ensures that data can be transferred and exchanged easily and scalably. Developers benefit if this can be done quickly and easily. In addition, it is important for them to receive good support using documentation.’
The chance of success for a platform hinges directly on how easy this link can be realised. Developers are scarce and expensive, and costs increase when integrating their own software takes substantial time and effort. At times, a developer’s wish to work with a different platform may even result in them moving over to another organisation. ‘Developers exchange experiences with each other, so if a platform does not work properly, rumours about it will get around’.
A decentralised decision process
Another important development is that developers are given a greater say in decisions about the platform an organisation works with. ‘Decision-making takes a different place within the organisation,’ according to Geerlings. ‘Increasingly often, software development is subdivided into teams that can make their own decisions. This means that decisions are no longer the prerogative of boardrooms, but instead they are taken closer to developers, allowing them a greater say. This is another reason to keep developers happy.’
Six roads to DX
Geerlings lists six ways to make developers happy. First of all, it must be easy for them to experiment with the platform. ‘Developers must be able to test the software and see what comes back, for example executing a search or payment. They should be able to do this without having to commit to any contracts. Any error message that appears must be clear.’
A second aspect is the 3:30:3 principle. ‘You must be able to understand what a platform is doing for you within 3 seconds. The first two sentences of the documentation must clarify this in plain language which can be easily understood by developers, as well as other and less technical stakeholders. It must be possible to carry out a test within 30 seconds, and a valuable result should be returned within 3 minutes.
The third factor is that any documentation must be up to par. ‘Documentation must be layered, and the developers and product owners must be able to quickly access the main information. What functionality does the platform provide? What is the use? Scrum teams have a different level than specialised developers, which should be taken into account. From there, the information can become increasingly specialized.
Another important topic concerning Developer Experience is a logical use of the ‘API triad’: three levels of interaction with the platform. The first level is REST and relates to sending and receiving information. For example, when you send a payment, you receive a confirmation. The second level, Webhooks, involves sending a message when something has changed in the status of a topic, such as when a package has been delivered. Consumers know this as a push message.
The third level of the API triad involves retrieving specific information by means of a free question; a ‘query’. This takes place using GraphQL. Geerlings gives the following example: ‘Suppose you are interested in knowing the number of parcels delivered to a certain postcode area in Amsterdam between 10 am and 11 am. This information could add considerable value to your service, but often proves to be a considerable weakness in many SaaS services, because they haven’t been sufficiently developed yet. GraphQL is quite a challenge and definitely the next step in APIs. Platforms such as CommerceTools and Stripe already offer GraphQL.’
A fifth manner to improve Developer Experience is a layered approach. In addition to a high-quality API and adequate documentation, the platform provider may consider a plug & play solution; a component that allows the service to be integrated with platforms such as AWS, Magento or Salesforce in one go. This may, for example, allow high-speed and seamless integration for the 15 most commonly used platforms.
Finally, Geerlings advises platform owners to share information as widely as possible. ‘Be sure not to hide it on your own website, but instead see to it that developers can learn about it through communities such as Github and Stack Overflow. Opt for open source where possible and resist the temptation to make a profit from the integration. Consider where you can find developers who wish to use your platform, and provide it there.’
A shining example
According to Geerlings, Stripe, a platform for online payments is among the platforms that get the idea. ‘Stripe – a company that provides a complete toolkit for developers, along with documentation, use cases, videos and webinars – went all out for Developer Experience from the beginning. Their website reads ‘Developers first’, and this actually is their basic assumption. This way, Stripe has developed into a market leader.’
Geerlings’s second example is developer.KPN.com. ‘KPN does not immediately strike people as a trendy company, but it actually is a showcase of a large company that has made a turn and which is really trying to hold on to their developers. This has made them leaders in their market. They provide options for the free testing of APIs, as well as relevant documentation and information about API strategies.
Finally, Geerlings presents Schiphol Airport as an excellent example. ‘Schiphol has made huge amounts of information accessible without a concrete goal. They considered that once they make data available, innovative services would naturally emerge. They couldn’t have been more right. People can read the waiting times at security and the delays at the various gates. Service providers can anticipate this by sending additional staff to the coffee corner.’
ISAAC helps to improve
ISAAC is on both the provider and the user side. ‘We have over one hundred developers working at our company,’ says Geerlings. ‘We thus know exactly what they are looking for and what they like. We see that some providers put a lot of effort into marketing via fairs and flashy websites, pushing integration down to a second place. In these cases, the portal for developers has only been developed to a limited extent, while this is where they spend a lot of time.’
ISAAC helps companies to improve the Developers Experience. ‘We measure the experience by interviewing developers, analysing bottlenecks and considering how we can solve them.’ One of ISAAC’s customers is a water pump manufacturer. ‘They make a perfect technical product, but eventually it must be integrated into larger computer-controlled systems. We provide this connection.’
Geerlings hopes that platform providers will be inspired by Stripe, KPN and Schiphol, and will pay increased attention to the Developer Experience. ‘In autumn 2019, we held Frontend Love Eindhoven, a conference for more than 300 developers, during which it became abundantly clear that they crave high-quality interfaces and GraphQL. Providers of that not only do developers a huge favour, but in addition strengthen their market position.’
Do you want to know more about Developer Experience and how to set up a platform effectively? As an experienced consultant in the field of technical integration challenges and platforms, Rudy is happy to answer your questions.Contact us