Evaluation Guide: Universal Catalog
In this post, we explore how to evaluate the universal catalog component of an internal developer portal.
Internal Developer Portals are experiencing a wave of adoption; however, evaluating the capabilities of these platforms to determine which one is right for you can be difficult. In this post, we explore how to evaluate the universal catalog component of an internal developer portal.
An internal developer portal is comprised of 3 core capabilities:
Think of a universal catalog as the database for your developer portal. It needs to be comprehensively populated in order to enable the full range of insights and actions that will improve your developer experience. It also needs to have the expressiveness necessary to map to how you think about your systems. Finally, it needs to be easy to set-up and drift-free.
Let’s explore these concepts, starting with comprehensiveness.
Comprehensiveness refers to the completeness of the knowledge about your system captured in the catalog. We unpack this based on the layers of your system:
Applications: Is the catalog aware of applications and the services that comprise them, or does its data model start with microservices? Application awareness is important because it enables engineers and managers to understand at a glance all of the services that comprise an application and key information about them, such as health and other key measures. It also enables analytics to be presented in ways that have meaning to your stakeholders (i.e., seeing cloud costs at the application level).
Environment: Environments are groupings of resources that power an individual service. Environment “awareness” is important for self-serve actions (i.e., which environment does a developer need access to for a given service?) as well as for analytics (i.e., are there orphaned resources not mapped to an environment burning your cloud budget?) and a developer’s understanding during an incident, learning a system, and other scenarios.
Resources: Here are some helpful evaluation dimensions to aid in your review of a catalog’s resource “awareness”:
It’s important to diligence the flexibility of a catalog’s data model in order to understand if it is sufficiently expressive to map to how you think about your system (or will it lock you into an predetermined schema that is at odds with your organization’s mental model). This has implications for the value of the analytics you are able to run in addition to the intuitiveness of the portal for developers. Does the data model allow you to create your own custom relationships?
Set-up and drift management can be two non-obvious costs with the potential to dramatically impact the total cost of ownership and usefulness of your internal developer portal. It’s important to understand these burdens to gauge your time to value internally as well. Here are some helpful questions you can ask to better understand the relative ease of a given platform:
Internal developer portals are transforming how organizations improve their developer experience. By making this knowledge and functionality available on a self-serve basis, developer portals can offer rapid time-to-value as well as significantly improve your organization’s development velocity and ability to achieve best practices. We hope this guide helps you conduct a rigorous assessment of the catalog component of an internal develop portal in order to find the solution that is right for the needs of your organization.