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

Consumer APIs Must be Product-Driven

Z
September 13, 2019

Consumer APIs Must be Product-Driven

Successful consumer APIs that bring value to businesses aren't snowflakes. Behind every thriving API is the hardship of an API Product owner. But the API product ownership is an emerging discipline, and great product owners are hard to find. In this talk, we will follow the story of great API products. You will learn what it takes to be an API product owner, and how treating APIs as product change the way companies deliver value to consumers.

Z

September 13, 2019
Tweet

More Decks by Z

Other Decks in Programming

Transcript

  1. goodapi.co
    Consumer APIs Must be
    Product-Driven
    Zdenek “Z” Nemec
    [email protected]

    View Slide

  2. goodapi.co
    supermodel.io

    View Slide

  3. Good API are three experienced and knowledgeable leaders in the
    API and Digital Transformation space: Adam Kliment, Erik Wilde, and
    Zdenek "Z" Nemec.
    Good API was founded by Zdenek Nemec in 2016 when he left the
    position of the Director of API Design at Apiary (acquired by Oracle).
    Z has previously authored API Blueprint at Apiary and pioneered the
    API design-first approach.
    Adam, former Senior Principal Product Manager for Oracle API
    platform, is the author of API testing framework Dredd and creator
    of one of the first service virtualization platforms.
    Erik, holder of a Ph.D. from ETH Zürich, is a co-author of Continuous
    API Management book and has deep experience with setting API
    strategies and distributed systems.
    We're driven by our goal to make APIs and Digital Transformation
    work. Both in terms of the technical depth and understanding of the
    non-technical aspects of making initiatives succeed inside
    organizations.
    Independent API Consulting

    View Slide

  4. goodapi.co
    Who is API Product Owner and
    Manger?

    View Slide

  5. goodapi.co
    API-first

    View Slide

  6. goodapi.co
    Bezos Mandate
    1. All teams will henceforth expose their data and functionality through service interfaces.
    2. Teams must communicate with each other through these interfaces.
    3. There will be no other form of interprocess communication allowed: no direct linking, no direct reads of another team's
    data store, no shared-memory model, no back-doors whatsoever. The only communication allowed is via service interface
    calls over the network.
    4. It doesn't matter what technology they use. HTTP, Corba,Pubsub, custom protocols -- doesn't matter. Bezos doesn't care.
    5. All service interfaces, without exception, must be designed from the ground up to be externalizable. That is to say, the team
    must plan and design to be able to expose the interface to developers in the outside world. No exceptions.
    6. Anyone who doesn't do this will be fired.
    7. Thank you; have a nice day!
    source

    View Slide

  7. goodapi.co
    Bezos Mandate
    Famous small set of SOA design rules
    ● Teams must expose functionality through
    services
    ● Communication happens only through
    service interfaces
    ● There are no hard guidelines for service
    design
    ● Internal/external service is a matter of
    policy, not one of design
    Consequences
    ● API-first
    ○ Every product is or has an API
    ● More freedom and more responsibility
    ● Requirements for sophisticated tooling

    View Slide

  8. goodapi.co
    API-first fallacies
    1. Setting a vision is enough to make it happen
    a. Digital transformation is a deep process touching everything in the organization
    b. Defining and executing business, organizational, and technical strategies is essential
    2. Restructuring IT will cause digital transformation to bubble up
    a. IT has to align with the digital transformation strategy and program
    b. The business and organizational pillars are essential to success
    source

    View Slide

  9. goodapi.co
    Three Pillars of API-first
    Business Organization Technology

    View Slide

  10. goodapi.co
    Business
    APIs are the products that you create,
    manage, sell, measure, recombine, and retire.
    API First means that if a product in your
    organization does not have an API, it
    essentially does not exist.
    APIs are the connective fabric.

    View Slide

  11. goodapi.co
    Organization
    No matter how good your service or product
    is, if it is delivered through a bad API, this
    substantially diminishes the quality of the
    product.
    Teams embrace the fact that APIs is their main
    deliverables.

    View Slide

  12. goodapi.co
    Everything that gets created or consumed in
    the organization is based on APIs.
    The quality of APIs greatly matter for how
    easy it is to create and consume company
    products.
    APIs change must not create expensive and
    time-consuming ripple effects through a chain
    of API dependencies.
    Technology

    View Slide

  13. goodapi.co
    APIs are no longer just
    about the technology

    View Slide

  14. goodapi.co
    Everything produced and consumed in the
    organization has an API
    sports vs. tech company?

    View Slide

  15. goodapi.co
    API Product

    View Slide

  16. goodapi.co
    The API Product
    API-as-a-Product
    Direct API monetization.
    Where possible, the company product is offered
    directly through a paid API.
    Product as API
    Indirect “monetization”.
    Each product is an API and used through its API.
    APIs are contributing indirectly to the
    bottomline through increasing stickiness,
    driving revenue-generating activities,
    leveraging partner channels, increasing
    efficiency or leading innovation.

    View Slide

  17. goodapi.co
    API Product Hierarchy
    ● UIs are the human-oriented representation of API products
    User Interface (UI) for allowing human users access to a service
    through an API
    ● APIs are the technical representation of services
    Application Programming Interface (API) as a programmable
    service representation
    ● Services are the concepts that provide business value
    Decomposing organizations in composable services makes
    management easier
    Service
    API
    UI
    API Product

    View Slide

  18. goodapi.co
    API Landscapes

    View Slide

  19. goodapi.co
    API Product
    API Product
    API Product
    API Product
    API Product Landscape Hierarchy
    ● Experience APIs
    Realize the API product value for API consumers
    ● Core APIs
    Provide core (raw) business capabilities and necessary
    supporting services
    ● Backend APIs
    Provide access to backends like databases, CRMs, ERPs or
    other 3rd party services, serves as first level of
    vendor-independence abstraction layer
    Backend APIs
    Core APIs
    Experience APIs

    View Slide

  20. goodapi.co
    Design Consistency

    View Slide

  21. goodapi.co
    API Product Maturity

    View Slide

  22. goodapi.co
    Consistency
    Consistency
    Consistency is a win-win for both API
    consumers and providers:
    ● Reduces complexity
    ● Encourages re-use
    ● Enables upsell
    ● Reduces time-to-market
    ● Reduces maintenance
    ● Enables scaling

    View Slide

  23. goodapi.co
    API Product Lifecycle

    View Slide

  24. goodapi.co
    API Development as Product Development
    Product Lifecycle Management

    View Slide

  25. goodapi.co
    API Product Market Lifecycle

    View Slide

  26. goodapi.co
    API Product Lifecycle
    Create Publish Realize Maintain Update/Retire
    Strategy x x x
    Design x x x
    Documentation x x x
    Development x x x
    Testing x x x
    Deployment x x
    Security x x
    Monitoring x x
    Discovery x x
    Change management x x x

    View Slide

  27. goodapi.co
    Design-first
    API Before Implementation
    As with any good product, the work on API
    product starts with hypothesis,
    verification and design–prototyping.

    View Slide

  28. goodapi.co
    API Product Owner

    View Slide

  29. goodapi.co
    Product Manager
    A product manager is a professional role which is responsible for the development of products for an
    organization, known as the practice of product management. Product managers own the business
    strategy behind a product , specify its functional requirements and generally manage the launch of
    features. They coordinate work done by many other functions (like software engineers, data
    scientists and product designers) and are ultimately responsible for the business success of the
    product.
    – Wikipedia

    View Slide

  30. goodapi.co
    Product Manager and Product Owner
    Product Owner is a role you play on a Scrum team. Product Manager is the job.
    – Melissa Perri

    Product Manager is a strategical role Product Owner is tactical one.
    – Product Plan

    View Slide

  31. goodapi.co
    Product Owner
    as
    Product Manager

    View Slide

  32. goodapi.co
    API Product Owner
    ● Owns and manages a product for software developers
    ○ DX
    ○ Engineering background
    ● Understands API Economy
    ● As such Product Owner musts be highly technical, yet still driven by the business (as opposed
    to technology)

    View Slide

  33. goodapi.co
    Absent Product Owner
    ● Code-first
    ● No outreach to users
    ● Unverified product hypotheses
    ● Poor or no product specification
    ● Poor relation with business, sales
    ● Poor contribution to overall company
    strategic goals
    ● Limited visibility
    ● Poor or documentation
    ● Absent roadmap, backlog prioritization
    ● Minimal usage insights
    ● Technology-driven decisions
    ○ API architectural style is decision of
    engineers taste, not product/market fit
    ● No alignment with other API products
    ● Bloated interface
    ● Lower level of abstraction - exposing
    internals
    ● Lack of end-to-end testing
    ● No go-live strategy
    Pitfalls of “Designed by engineers” *
    * unless “talking to yourself”

    View Slide

  34. goodapi.co
    Successful API products are
    driven by product-market
    fit
    not by technology

    View Slide

  35. goodapi.co
    Who Acts as Product Owner
    Public APIs
    Partner APIs
    Organizational APIs
    Cross-team APIs
    Team APIs
    Backend-for-frontend APIs (one team)
    Dedicated Product Owner
    Architect acting as Product Owner
    Engineer acting as Product Owner
    “talking to yourself”

    View Slide

  36. goodapi.co
    API Product Owner
    Areas of Responsibility

    View Slide

  37. goodapi.co
    Evolution
    Consumption
    Implementation
    Product Foundation
    Areas of Responsibility
    Strategy
    Specification
    Deployment
    Development
    Documentation
    Support
    Customer Success
    DX
    Marketing & Evangelism
    Reporting
    Updates
    Tactics
    Retirement
    Publishing
    Create & Publish
    Create
    Realize & Maintain
    Update / Retire

    View Slide

  38. goodapi.co
    API Product
    Foundation
    ● Vision & Business case for product
    ● Positioning and product-market fit
    ● User and stakeholder identification
    ● Positioning in organizational API
    Landscape
    ● Hypotheses-driven product
    development, Domain-driven
    ● Outreach, marketing, and
    evangelism strategies
    ● Go-live strategy
    ● Roadmap
    ● Goals and objectives
    ● Budget, financials
    Strategy

    View Slide

  39. goodapi.co
    API Product
    Foundation
    ● Design-fist (contract-driven)
    ● Realization of requirements
    ● Specification verification
    ○ Prototyping
    ● Functional requirement
    ● Non-functional specifications
    ○ For example: estimated load, usage,
    geographical (and other availability)
    ● API architectural style
    ○ In cooperation with architecture or
    engineering
    ● Evolvability
    ● Landscape Product Consistency
    Product Specification

    View Slide

  40. goodapi.co
    ● Product backlog
    ○ Clear backlog items
    ○ Backlog prioritizations to achieve
    the goals
    ○ Visibility
    ● Works with the development team
    (e.g. part of sprints)
    ● Optimizes value of the team’s work
    ● What to work on next
    API Product
    Implementation
    Tactics, Development

    View Slide

  41. goodapi.co
    API Product
    Implementation
    ● With the engineering and OPS
    ● Deployment environments
    ○ Product accessibility
    ■ Production
    ■ Staging
    ■ Sandbox
    ● Deployment zones
    ○ Product availability
    ● API Management
    ○ Product setup
    ○ Product bundles
    ○ Monetization & metric setups
    ○ Authentication, identity
    Deployment, Publishing

    View Slide

  42. goodapi.co
    ● Overview
    ● Getting started including use-cases
    ● Vocabulary
    ● API description
    ● Non-functional requirements like
    SLAs, rate limits, support
    ● Change-log, release notes
    ● Versions
    ● Roadmap
    API Product
    Consumption
    Documentation

    View Slide

  43. goodapi.co
    ● DX
    ○ Interactive Documentation
    ○ Sample code
    ○ SDKs
    ○ API Mock, Sandbox
    ○ Postman collections, traffic
    recordings (HAR)
    ● Support
    ○ Contacts
    ■ Support availability
    ■ Expectations settings
    ○ Q&A
    ○ Forums, chat and other channels
    ○ Bug tracking and backlog keeping
    API Product
    Consumption
    DX, Support

    View Slide

  44. goodapi.co
    API Product
    Consumption
    Marketing, Evangelism,
    Customer Success
    ● Marketing
    ● Evangelism
    ○ Internal
    ○ External
    ○ Meetups & conferences
    ○ Feedback loop to product research
    ● Customer Success
    ○ Sales (pre-sales)
    ○ After-sales
    ■ In cooperation with
    engineering

    View Slide

  45. goodapi.co
    ● Usage
    ○ Use-case
    ○ Design-wise
    ● Operations
    ○ Performance
    ○ Response times
    ○ Errors
    ● Non-functional
    ○ Quotas, limits
    ● User satisfaction – NPS
    ● Financials
    ○ Monetization
    ○ Business impact
    ○ Product budget report
    API Product
    Consumption
    Reporting

    View Slide

  46. goodapi.co
    ● Updates
    ○ Iteration
    ○ Continuous evaluation of product
    foundations
    ■ Objectives
    ■ Business alignment
    ■ Roadmap
    ● Deprecation & Retirement
    ○ Decision when and what should be
    deprecated or retired
    ○ Phasing out
    ■ Implementation
    ■ Communication &
    documentation
    API Product
    Evolution
    Updates, Deprecation &
    Retirement

    View Slide

  47. goodapi.co
    There is no such thing as “no API
    product management.”
    It is either good product
    management or bad product
    management.

    View Slide

  48. goodapi.co
    Independent API Consulting

    View Slide

  49. goodapi.co
    Icons by IconMark from the Noun Project.
    Images by Unsplash.

    View Slide