In Microservices, API Usability Matters
To deliver compelling digital products, organizations must offer a truly optimal developer experience.
Being quick-to-market with new experiences is one of the core goals of digital transformation. For IT departments, this requires a cultural shift—with less emphasis on tackling internal tech challenges and more on enabling business goals. That’s why many organizations are embracing microservice architecture, using APIs to break down previously monolithic IT systems.
In this new IT culture, the goal is to deliver an exceptional customer experience (CX). This means delivering the best possible user experience (UX) across digital products and services. Therefore, it is essential to understand that, in many cases, customers will interact with more than one product and that the whole cross-product experience must be optimal.
That is why CX has emerged as a generalized idea beyond UX. Exceptional product-focused UX can be further improved by looking at experiences beyond individual products.
Furthermore, in the context of microservices, it is important to see APIs as products and application developers as customers, with the goal of offering an exceptional developer experience (DX). Developers—both internal and third-party—must be able to easily consume a set of APIs to access multiple microservices and build rich, consistent digital experiences.
The Difference Between UX and CX
To understand the difference between UX and CX, think about today’s mobile apps. Mobile apps are often functionally limited, which is understandable because replicating the complete web-based product portfolio of an organization is rarely possible or even desirable in a single mobile app.
Mobile app product teams will often “solve” this problem by sprinkling native apps with links to the company’s web-based apps. However, this can create a sub-optimal overall CX, as it often means taking the customer to different and less mobile-optimized interfaces, particularly if the desired functionality is only available through the desktop version of the website.
The user may be required to access three of the organization’s digital offerings—mobile app, mobile website and desktop site. Many organizations do not have the right setup to evaluate this CX. Instead, three separate product teams do UX testing for their own products. Each might get top UX scores for their individual products but the overall CX does suffer.
“The ability to offer developers a consistently satisfying experience across touchpoints is a good measure of maturity in an organization’s digital transformation journey.”
— Erik Wilde, Director of Technologies, API Academy
Similarly, while an individual microservice API may offer great DX, the cross-product DX for developers who need to consume multiple interfaces and services may be sub-optimal. The ability to offer developers a consistently satisfying experience across touchpoints is a good measure of maturity in an organization’s digital transformation journey.
Optimizing DX Across Products
In the product-focused context of microservice architecture, it may seem counter-intuitive to focus on optimization for anything other than individual products. But developers must often work across API boundaries to get their jobs done. Therefore, one organizational goal must be to optimize DX across the entire API landscape.
This may be one of the areas where we will see new practices and patterns emerge as organizations come to understand that an optimal DX across the whole API portfolio is essential for a developer-centric DX and that developer experience must be viewed as an end-to-end customer experience, not a series of partitioned API-level experiences.
Unfortunately, we still have a way to go before this approach is widespread. “DX” is still most commonly used in the same way as “UX”, rather than “CX”—to describe experience with a single product. Clearly though, the focus should be on the entire cross-API experience at the API landscape level.
We don’t have a word for that right now but—as the practice emerges—terminology will adapt and “DX” will come to have a companion that describes the whole cross-product experience. Because in the application economy, developers are our customers and they deserve the best possible overall customer experience.