$30 off During Our Annual Pro Sale. View Details »

Kokemuksia API-lähtöisen alustan kehittäjäkokemuksen rakentamisesta

Kokemuksia API-lähtöisen alustan kehittäjäkokemuksen rakentamisesta

APIen ensisijainen asiakas on sovelluskehittäjä. Tästä varmaan moni on samaa mieltä, mutta mitä se käytännössä tarkoittaa ja miten se toimialan parhaan kehittäjäkokemuksen tarjoava API ja alusta tehdään? Esityksessä kerron kokemuksista aiheeseen liittyen viimeisen 6 kuukauden ajalta Platform of Trust -alustan kohdalla. Esitys sisältää käytännönläheistä asiaa innostavien ja suorapuheisten tarinoiden muodossa. Mukana myös aiheesta tehtyjen tutkimusten tuloksia tukemassa ja perustelemassa tehtyjä ratkaisuja. Loistavan kehittäjäkokemuksen suunnittelu ja toteutus on maratoni eikä 110 metrin aidat. Matkalla tulee vastaan tilanteita joihin on sopeuduttava ja ratkaisut pitää rakentaa asiakaslähtöisesti ilman turhaa markkinointihöttöä. Matka vaatii kestävyyttä ja ketteryyttä. Esityksestä saat vinkkejä miten selvitä maratonin maaliviivalle. Esitys on suunnattu ensisijaisesti APIen ja alustojen kehityksestä ja myynnistä, kehittäjäkokemuksesta (DX) ja asiakaskokemuksesta (CX) vastaaville henkilöille.

Esitetty 21.5.2019 Prosessipäivillä https://www.oppia.fi/events/prosessipaivat-2019/

Jarkko Moilanen, PhD

May 19, 2019
Tweet

More Decks by Jarkko Moilanen, PhD

Other Decks in Business

Transcript

  1. Kokemuksia API-lähtöisen alustan
    kehittäjäkokemuksen rakentamisesta
    Jarkko Moilanen (PhD),
    Leading API Economist in Nordics
    Platform Developer eXperience Lead
    Twitter: @Jarkko_Moilanen
    [email protected]
    +358 40 535 9066
    Prosessipäivät 2019

    View Slide

  2. @Jarkko_Moilanen - Prosessipäivät 2019
    Developer eXperience Lead’s duty is to find
    the solutions how to enable
    maximum positive developer experience
    for the platform (developer) consumers
    without killing the internal developer
    experience.

    View Slide

  3. Monesti DX
    kohdalla
    puhutaan vain
    lopputuloksesta.
    6 kk Platform of
    Trust -alustan
    rakentamista
    Tasapainoilua
    sisäisen ja
    ulkoisen DX:n
    välillä
    puhutaanpa
    prosessista

    View Slide

  4. Mikä kehittäjäkokemus (DX)?
    @Jarkko_Moilanen - Prosessipäivät 2019
    ● API tuottaa lisäarvoa (nopeasti)
    ● Loiva oppimiskynnys (getting started ohjeita)
    ● Itsepalveluna käyttöön (sis. tunnukset)
    ● Hyvä ajantasainen dokumentaatio
    ● Kopioitavia koodiesimerkkejä
    ● Tuki
    ● APIt yhtenäisiä ja ennakoitavia

    View Slide

  5. @Jarkko_Moilanen - Prosessipäivät 2019
    Hyödyntäjälle koodi on paras dokumentaatio

    View Slide

  6. @Jarkko_Moilanen - Prosessipäivät 2019
    Building a “developer-first”
    product that makes it easy
    for companies and
    developers to accept
    payments immediately.
    100 000 asiakasta,
    100 Mrd $ transaktioita,
    1,5 Mrd $ liikevaihtoa

    View Slide

  7. Alustan sisäinen
    kehittäjäkokemus
    Alustan ulkoinen
    kehittäjäkokemus
    ● Omat yrityksen alustan kehittäjät
    ● Työskentelymukavuus
    ● CI/CD prosessin tehokkuus
    ● Työn minimointi (uudelleenkäyttö)
    ● Arkkitehtuuriset valinnat
    ● Ulkoiset sovelluskehittäjät
    ● Nopea käyttöönotto
    ● Ennakoitavuus
    ● Luotettavuus
    ● Tehokkuus
    @Jarkko_Moilanen - Prosessipäivät 2019

    View Slide

  8. Arkkitehtuuri vs
    julkaistut APIt
    RAML vs OpenAPI
    spec
    Postman vs
    Insomnia
    1
    2
    3

    View Slide

  9. @Jarkko_Moilanen - Prosessipäivät 2019
    Arkkitehtuuri julkaistut APIt
    ● Mikropalveluarkkitehtuuri
    ● Paljon pieniä rajapintoja
    ○ Identity API
    ○ Broker API
    ○ Product API
    ● Hyödyntäjä tarvitsee loogisia
    kokonaisuuksia
    ● Tuotetiedot ja sisältö
    samasta
    ● Mahdollisimman vähän API
    -kutsuja
    yhdistä APIen toimintoja avoimissa julkaistuissa rajapinnoissa
    1

    View Slide

  10. @Jarkko_Moilanen - Prosessipäivät 2019
    RAML OpenAPI spec
    ● Tiimin valinta RAML
    ○ Määritysten
    uudelleenkäyttö
    ○ Hiipuva ekosysteemi
    ○ Ei mahdollista tehdä
    Slate muunnosta
    ● Open APISpec
    ○ Default ja odotetuin
    ○ OpenAPI spec odotetaan
    olevan saatavilla
    ○ Laaja yhteisö
    ○ Paljon työkaluja
    Tiimin tehokkuus tärkeintä tässä vaiheessa, käytä
    konversiotyökaluja, “ujuta” muutosta organisaatioon
    2

    View Slide

  11. Ajantasainen API dokumentaatio
    @Jarkko_Moilanen - Prosessipäivät 2019
    OpenAPI
    kuvaukset
    rajapinnoista
    Github Custom työkalu Slate Github
    3 sarakkeen
    API
    dokumen
    taatio (html)
    Stripe
    -tyylisesti
    Omassa
    domainissa
    Slate
    työkalu
    (open
    source)
    RAML
    kuvaukset
    rajapinnoista
    Koodiesimer-
    kit
    lisätään
    oikeisiin kohtiin
    Muutos Githubin lähdekoodissa käynnistää uudelleengeneroinnin ja julkaisun automaattisesti
    40+
    8
    docs.oftrust.net

    View Slide

  12. @Jarkko_Moilanen - Prosessipäivät 2019

    View Slide

  13. @Jarkko_Moilanen - Prosessipäivät 2019
    Insomnia Postman
    3
    Usein osana API -kuluttajan työkalupakkia. Korvaa jossain määrin
    sivustoilla olevan API -konsolin.

    View Slide

  14. @Jarkko_Moilanen - Prosessipäivät 2019
    Insomnia Postman
    ● Tiimin valinta
    ● Suosittu (nousussa)
    ● Helppokäyttöinen
    ● Vähemmän ominaisuuksia
    ● Omat kehittäjät käyttää
    arjessaan
    ● Kuuluisin ja eniten käytetty
    työkalu APIen testaamiseen
    ● Iso yhteisö
    ● Pitkä kehityskaari
    ● Paljon ominaisuuksia
    3
    Usein osana API -kuluttajan työkalupakkia. Korvaa jossain määrin
    sivustoilla olevan API -konsolin.

    View Slide

  15. Postman vs Insomnia
    @Jarkko_Moilanen - Prosessipäivät 2019
    “I initially switched to it [Insomnia]
    simply because the `hosts` bug
    made Postman unusable”
    Valittiin Insomnia ja sille tehdään import tiedosto. Etsitään
    konversiotyökalu Postmania varten
    “They [Insomnia] tend to address the
    bugs and feature requests in GitHub
    pretty fast”.
    [Insomnia] easier for both new users and
    experienced users, as well as just having more useful
    features, and most critically - less bugs.

    View Slide

  16. @Jarkko_Moilanen - Prosessipäivät 2019
    Developer eXperience Lead’s duty is to find
    the solutions how to enable
    maximum positive developer experience
    for the platform (developer) consumers
    without killing the internal developer
    experience.

    View Slide

  17. BuildForDevelopers.com
    To be published 2019
    apitalous101.fi
    Bestseller in Finland!
    Kiitos!
    Kysymyksiä?

    View Slide