Saturday, November 30, 2019

Why it is important & what it takes to create API as a Product?

Recently, i took up reading the book: Continuous API Management: Making the Right Decisions in an Evolving Landscape

Currently, I am 1/4th through the book and enjoyed what I have read so far and found it quite relevant to what I am doing at work currently.

I am providing here, my summary and highlights from the chapter on the subject of API as a Product.

My Sketchnote Summary:

My Highlights from the chapter: (full credit to the authors: Mehdi Medjaoui, Erik Wilde, Ronnie Mitra, Mike Amundsen for the content that follow)

API is a product fully deserving of proper design thinking, prototyping, customer research, and testing, as well as long-term monitoring and maintenance.

Three lessons:
1. Design thinking in order to make sure you know your audience and understand their problems
2. Customer onboarding as a way to quickly show customers how they can succeed with your product
3. Developer experience for managing the post-release lifecycle of your product and to gain insights for future modifications.

Amazon's application of AaaP:Should You Apply AaaP to Both Internal and External APIs? Yes. Maybe not with the same level of investment of time and resources — we will cover that the next section — but this is one of the lessons Jeff Bezos taught us in “The Bezos Mandate” that led Amazon to open the initially internal AWS platform for use as a revenue-generating external API. Because Amazon adopted AaaP from the start, not only was it possible (e.g., safe) to start to offer the same internal API to external users, but it was also profitable.

Bezos issued a mandate that all teams must expose their functionality through APIs and that the only way to consume other teams’ functionality must be through APIs. In other words, APIs are the only way to get things done. He also required that all APIs be designed and built as if they would be exposed outside the company boundaries. This idea that “APIs must be externalizable” was another key constraint that affected the way the APIs were designed, built, and managed.

Applying Design Thinking to APIs:You can elevate your APIs from utilities to products by applying the principles of design thinking to your design and creation process.

It is important to remember that the results of design thinking are more than just improved usability or aesthetic appeal of your APIs. It can result in better understanding of the target audience (customers), a focus on creating APIs that meet viable business strategies, and a more reliable process for measuring the relative success of the APIs your team releases into the ecosystem.

Customer Onboarding:Stripe case study: Stripe is a successful payment service delivered via a great API that developers really love. The startup’s recent valuation was about $ 10 bn with less than 700 employees. The founders’ entire business strategy was to deliver their payment services via APIs. For this reason, they decided to invest in design thinking and the API-as-a-Product approach from the very beginning. For Stripe, the API was their only product.

Time to Wow:

In the API world, the time it takes to “get things working” is often referred to as TTFHW, or “Time to first Hello, World.” In the online application space this is sometimes called “Time to Wow!” (TTW).
In his article “Growth Hacking: Creating a Wow Moment,” David Skok, part of the equity investment firm Matrix Partners, describes the importance of a customer’s “Wow!” moment as a key hurdle to cross in any customer relationship: “Wow! is the moment… where your buyer suddenly sees the benefit they get from using your product, and says to themselves ‘Wow! This is great!’”
The effort it takes to reach a point where the API consumer understands how to use the API and learns that it will solve their important problems is the hurdle each and every API must cross in order to win over the consumer.

Apple Analogy:

just as Apple makes sure the battery is already charged up when you open your new mobile phone, media player, tablet, etc., APIs can be “fully charged” at first use, making it easy for developers to get started and make an impact within minutes of trying out a new API.

So, a great onboarding experience is more than just the result of a good design process. It includes well-crafted “getting started” and other initial tutorials, and diligent tracking of API consumers’ use of these tutorials.

Developer Experience:Even though it is important to make sure the product “works right out of the box,” it is also important to keep in mind that the customer will (hopefully) continue to use the product for quite a while. And, over time, customers’ expectations change. They want to try new things. They get bored with some things they loved at the beginning. They start to explore options and even come up with unique ways to use the product and its features to solve new problems not initially covered by the product release. This continuing relationship between consumer and product is typically called the user experience (UX).

Know your audience:

A big part of creating a successful API as a product is to make sure you target the right audience. That means knowing who is using your API and what problems they are trying to solve.
By focusing on the who and what of your API, you not only gain insight into what is important, but you can also think more creatively about the how of your API: what it is your API has to do in order to help your audience solve their problems.

API Discovery:

One of the challenges of API programs at large organizations is that, even when an appropriate API is available, developers end up creating their own APIs.

Searching for APIs: there is no single, commonly used public search engine for APIs.
Suggestion: At least one company we talked to made publishing to a central discovery registry a required step in the build pipeline. That meant the developers building an API could not actually release it into production until they’d added it to the company’s API registry and ensured all important APIs within the organization would be findable in one location — a big step toward improving the discovery quotient of their API program.

API Error reporting: Error reporting is a great way to get important feedback on how your API is being used and where problems occur. But it is only half of the tracking story. It is also important to track successful API usage.
API evangelist Kin Lane puts it: “Understanding [how] APIs will (or won’t) assist [the] organization to better reach their audience is what the API( s) are all about.”

Making APIs safe to use and Making APIs easy to use.

My LinkedIn post:

My Twitter post:

No comments: