Een positieve developer-experience (DX) is essentieel voor het succes van een platform. De ervaringen van ontwikkelaars met een platform worden steeds belangrijker bij de keuze van een organisatie voor het ene of het andere platform. Aanbieders van software as a service (SaaS) lijken dat nog niet altijd te beseffen, al zijn er mooie voorbeelden van bedrijven die het wél begrijpen.

Developer-experience is de ervaring die een developer heeft wanneer hij interacties aangaat met een platform. Meestal gebeurt dit via een application-programminginterface of api. Voor een developer is het fijn als dat eenvoudig en snel kan. Daarnaast is het belangrijk dat de developer goede ondersteuning krijgt via documentatie en eventueel een helpdesk.

Het belang van DX is toegenomen door een aantal ontwikkelingen. Steeds meer software wordt niet geleverd als een dienst in de cloud: SaaS. Developers ontwikkelen daar stukjes software tegen-aan voor specifieke processen in hun bedrijf. Voor uniforme processen zoals pakketbezorging en betalingen kun je gebruikmaken van de geleverde software; bedrijfseigen processen koppel je met een api.

Rondzingen

Hoe eenvoudiger die koppeling tot stand gebracht kan worden, hoe groter de kans op succes voor het platform. Developers zijn schaars en duur, dus als het veel tijd en moeite kost om eigen software te integreren, stijgen de kosten. Het komt zelfs voor dat ontwikkelaars overstappen naar een andere organisatie omdat ze het fijner vinden om met een ander platform te werken. Developers wisselen ervaringen met elkaar uit. Als een platform problemen geeft, gaat dat rondzingen.

Een andere belangrijke trend is dat ontwikkelaars een grotere stem krijgen bij beslissingen over het platform waarmee een organisatie werkt. Besluitvorming komt lager in de organisatie te liggen. Softwareontwikkeling wordt vaker verdeeld over teams die zelf keuzes maken. De beslissing wordt niet altijd meer in de directiekamer genomen, maar dichter bij de developer. Zijn stem wordt dan beter gehoord. Dat is een extra reden om de developer tevreden te houden.

Zes wegen naar DX

Er zijn zes manieren om developers blij te maken. Om te beginnen moet de developer eenvoudig kunnen experimenteren met het platform. Je moet de software kunnen aanroepen en dan zien wat er terugkomt. Bijvoorbeeld een zoekopdracht of een betaling. Dat moet mogelijk zijn zonder dat je je eerst moet verbinden aan contracten. En als er een foutmelding komt, moet die duidelijk zijn.

“Als een platform problemen geeft, gaat dat rondzingen”

Een tweede aspect is het 3:30:3-beginsel. In 3 seconden moet je kunnen snappen wat het platform voor je doet. De eerste twee zinnen van de documentatie moeten dat duidelijk maken in heldere taal. Begrijpelijk voor de developer maar ook voor andere, minder technische stakeholders. In 30 seconden moet je een test kunnen doen. En binnen 3 minuten moet je een waardevol resultaat hebben.

Als derde factor dient de documentatie op orde te zijn. De documentatie moet gelaagd zijn. De developers en product-owners moeten snel bij de belangrijkste informatie kunnen. Welke functionaliteit biedt het platform? Wat heb je eraan? Scrum-teams hebben een ander niveau dan de gespecialiseerde developer. Daar moet je rekening mee houden. Vervolgens kun je steeds verder de diepte in.

Api-triad

Belangrijk voor de developer-experience is ook een logische inzet van de ‘api-triad’: drie niveaus van interactie met het platform. Het eerste niveau is REST. Dit heeft betrekking op het versturen en ontvangen van informatie. Je stuurt bijvoorbeeld een betaling en je krijgt daar een bevestiging van. Het tweede niveau, Webhooks, houdt in dat je een bericht verstuurt als er iets is veranderd in de status van een onderwerp, bijvoorbeeld als een pakje is bezorgd. Consumenten kennen dit als push-bericht.

Het derde niveau van de api-triad heeft te maken met het ophalen van specifieke informatie middels een vrije vraag: een ‘query’. Dit gebeurt met GraphQL. Stel dat je wil weten hoeveel pakjes er bezorgd zijn in een bepaald postcodegebied in Amsterdam tussen 10 en 11 uur. Dat is informatie die veel waarde kan toevoegen aan je dienstverlening. Dit is echter de achilleshiel van veel SaaS-diensten; die zijn nog niet zover. GraphQL is best een uitdaging, echt de volgende stap in api’s. Platformen als CommerceTools en Stripe bieden wel al GraphQL.

Plug-in

Een vijfde manier om de DX te verbeteren is een gelaagde aanpak. Naast een goede api en adequate documentatie kan de aanbieder van het platform overwegen of er een plug & play-oplossing mogelijk is. Een component waarmee de dienst in één keer geïntegreerd kan worden met platforms als iOS en Android. ISAAC bouwt plug-ins voor de vijftien meest gebruikte platforms om een snelle en naadloze integratie mogelijk te maken.

Tot slot is het platformeigenaren aan te raden om informatie zo breed mogelijk te delen. Verstop het niet op je eigen website, maar zorg dat developers er ook via community’s kennis van kunnen nemen, zoals Github en Stack Overflow. Kies zoveel mogelijk voor open source en weersta de verleiding om aan de integratie te willen verdienen. Bedenk waar developers zitten die van jouw platform gebruik willen maken en bied het daar aan.

Lichtend voorbeeld

Een lichtend voorbeeld onder de platforms die het snappen is Stripe, een platform voor online betalingen. Stripe heeft vanaf het begin ingezet op developer-experience. Het bedrijf levert een complete toolkit voor developers, met documentatie, use cases, video’s en webinars. ‘Developers first’ staat op hun website, en dat is ook echt het uitgangspunt.

Als tweede voorbeeld noem ik developer.KPN.com. Als je KPN zegt, denk je misschien niet meteen aan een hip bedrijf. Maar het is een showcase van een grote onderneming die een draai aan het maken is en heel bewust developers aan zich probeert te binden. Daardoor zijn ze in hun markt koploper. Ze bieden mogelijkheden om gratis api’s te testen, documentatie en informatie over api-strategieën.

“Kies zoveel mogelijk voor open source en weersta de verleiding om aan de integratie te willen verdienen”

Tot slot steek ik de loftrompet over Schiphol. Het heeft veel informatie toegankelijk gemaakt zonder concreet doel. Het idee was: als we de gegevens beschikbaar stellen, dan komen er vanzelf wel innovatieve diensten. En dat gebeurt ook. Je kunt bijvoorbeeld aflezen wat de wachttijd is bij de security en welke vertraging er is bij welke gate. Dienstverleners kunnen daarop inspelen door extra medewerkers naar de koffiecorner te sturen.

Ik hoop dat aanbieders van platforms een voorbeeld nemen aan Stripe, KPN en Schiphol en meer aandacht schenken aan de developer-experience. We hebben in de herfst van 2019 een conferentie georganiseerd met meer dan 300 developers. Als één ding duidelijk is geworden, dan is het dat zij snakken naar goede interfaces en GraphQL. Aanbieders doen niet alleen de developers er een plezier mee, ze versterken daarmee ook hun marktpositie.

REAGEREN

Plaats je reactie
Je naam