Cluster-wide Observability inside Devtron

A zero to one tool that let engineers discover and debug any Kubernetes resource without leaving the product, and without memorizing kubectl.

0 -> 1

Developer Tools

Interaction Design

Timeline

MVP: 1 week
Phase II: 3 months

Platform

Web application

Team

Product Designer (Me)

Product Manager

Developers

TL;DR

Mirantis turned their widely used open-source Kubernetes IDE (Lens), into a paid product. Devtron founders identified the opportunity and set a one-week timeline to ship an open-source tool to capture users who were looking for an alternative.


I owned the design for a cluster-wide observability tool that let engineers discover and debug any resource without leaving Devtron, and without memorizing terminal commands, while keeping the flexibility kubectl (Kubernetes CLI) offers. We shipped an MVP in a week, then improved it through phased releases shaped by user feedback.

Context

Mirantis announced it was transitioning Lens, a widely used open-source Kubernetes IDE, from a free open-source tool to a commercial closed-source product.


Devtron's founders saw an opportunity, and proposed to ship an MVP in one week to capture users who were actively looking for potential open-source alternatives.

UsersDevOps Engineers and SREs managing Kubernetes clusters
Their setupTwo distinct audiences: existing Devtron users who relied on Kubernetes Dashboard or kubectl alongside Devtron, and net-new users who used Lens or similar tools for cluster observability.
Devtron's stateThe App Detail page showed Kubernetes resources scoped to a specific application. Cluster-wide visibility did not exist inside the product.
Business goalWin net-new users actively leaving Lens, and deepen retention for existing users by eliminating context switching.
UsersDevOps Engineers and SREs managing Kubernetes clusters
Their setupTwo distinct audiences: existing Devtron users who relied on Kubernetes Dashboard or kubectl alongside Devtron, and net-new users who used Lens or similar tools for cluster observability.
Devtron's stateThe App Detail page showed Kubernetes resources scoped to a specific application. Cluster-wide visibility did not exist inside the product.
Business goalWin net-new users actively leaving Lens, and deepen retention for existing users by eliminating context switching.

The Problem Space

Devtron showed application-scoped resources only: Pods, deployments, replica sets tied to a specific deployment. The cluster around it was invisible.

Debugging beyond a single application meant leaving Devtron entirely. Checking a node, browsing events across namespaces, inspecting a ConfigMap, managing CRDs: all of it happened in an external tool.

Debugging was a blackbox the moment a user had to look beyond a single application in Devtron

Identifying core tasks

What does cluster observability actually mean in daily practice?

To identify the MVP, I ran a brainstorming session with Devtron's internal DevOps team, mapping how cluster observability tools fit into their daily workflows. Two personas and their core jobs emerged.

DevOps Engineer

Builds the delivery highway: CI/CD, application packaging, and environment provisioning. High terminal usage for Infrastructure-as-Code, but tracks pipeline runs through web UIs.

When a deployment I shipped is having issues, I need to inspect the resources it created across the cluster, so I can fix it without leaving the delivery flow or picking up another tool.

Task / ContextCapability
A deployment can touch resources beyond its own app. I need the whole cluster in view to confirm what's working and what's not.Browse cluster-wide resources
Production clusters have dozens of namespaces. Appropriate filtering is required to cut through the noise.Search & Filter
Logs are the first place to look when something breaks at the application level.View logs for a pod
Events show what Kubernetes did to a resource: scheduling failures, restarts, probe failures. Logs alone do not tell this story.View events for any resource
Critical for diagnosing misconfigurations. Shows actual state vs. desired state.Inspect the live manifest of any resource
Some debugging requires running commands inside a container directly. No UI substitutes for this.Open a terminal session on a pod

Site Reliability Engineer (SRE)

Keeps production available and scalable. Owns incident response, observability, and root-cause analysis. Extremely high terminal usage: scans dashboards for macro health, then drops straight to the terminal for deep debugging.

When I am responding to an incident, I need to inspect and correlate resources, events, and logs across the whole cluster fast, so I can reach root cause and protect uptime.

Task / ContextCapability
I monitor the entire cluster. A single view surfaces anomalies faster than checking app by app.Check resource status across namespaces
Something is wrong but the source is not known. Cumulative view showing all events in the cluster helps identify the issue sourceView cluster-wide events

A differentiation opportunity

While debugging and investigation, users need to simultaneously jump between multiple Kubernetes resources. Most Kubernetes dashboards did not cater to this workflow slowing users down.

Workarounds:

  • Web-based tools: Users end up opening multiple instances of the dashboard in browser tabs

  • Terminal tools: Run multiple sessions in terminal tabs

Defining the MVP

The goal was to ship a first version to capitalize on the market opportunity

  • Ability to discover and browse Kubernetes resources across resource kinds

  • Search and filter resources

    • Search by name

    • Filter by namespace, status

  • View details for any resource -> Manifest, Logs, Events

  • View cluster-wide events to narrow down the root-cause

  • Initiate a terminal session in a Pod

Approach

Start from what users already know and focus on the details

I studied some existing Kubernetes resource observability tools in the market. kubectl, k9s, Lens, Official Kubernetes Dashboard. The following Information Architecture and Layout emerged as a well established pattern that users were familiar with.

Navigation Model

Typical drill-down workflow while debugging

Layout

Standard layout in Kubernetes dashboards that users are familiar with

Resource Detail View Patterns

Some dashboards display a resources' detail in a dedicated detail page some show it in a drawer.

Decision: Layout

Spending time on reinventing a simple and familiar layout did not seem worthy. I decided to stick to the 2-column layout users already trusted.

Decision: Dedicated Page vs Drawer

A drawer offers a quick interaction to get in and out of a resource but offers a limited screen space to work with which might become a UI scalability bottleneck.

I went ahead with a dedicated detail page in favour of providing a more focused view into the resource detail.

MVP Designs

Get it infront of users and gather feedback

Initiate marketing efforts ASAP to capitalize on the opportunity

01.

Discover & Browse Resources

Grouped resource kinds and filterable list, the structure users are already familiar with

1

3

4

5

6

2

01

Resource kinds tree

Resource kinds grouped by cluster domains (Workloads, Config & Storage, Networking, etc.)

02

Search resource kind

Shortcut enabled resource kind search to quickly search a desired kind

03

Resource list

List for the selected resource kind with resource specific columns and a quick action kebab menu

04

Search Resource

Shortcut enabled resource search that allows searching across resource fields

05

Filtering

Cluster and cluster-dependent namespace filtering

06

Pagination Controls

Pagination controls to navigate through large resource lists

02.

Resource Detail View

Dedicated resource detail view with resource information and tools to dig deep and debug

03.

Create Resource

Apply a manifest directly to create multiple Kubernetes resources at once, directly from the dashboard

Feedback

Gathered from internal, enterprise and open-source users

CategoryFeedbackWhy it mattered
Critical to workflowBulk actions: select multiple resources and act on all at onceOne-by-one operations at scale were a bottleneck for users acting across multiple resources.
Critical to workflowAuto-refresh resource state every few secondsInspecting issues requires the latest cluster state to avoid false diagnosis.
Critical to workflowCluster terminal accessible directly from within DevtronDebugging still required an external terminal for anything the UI did not expose.
Slowing users downJumping between resources during critical debugging sessions reduces efficiencyIncident response meant constant switching between resources. Without it, users lost context and time on every navigation.
Slowing users downJump from App Detail to Resource Dashboard with context preservedEnables users to quickly zoom out from an application to cluster-wide resource visibility, expanding the debugging scope.
Slowing users downSearching and switching resource kinds is slowSwitching resource kinds is frequent during debugging. The MVP interaction hindered speed.

A pattern in potential enterprise conversations kept surfacing: some users wanted cluster observability alone, with no inclination towards Devtron's CI/CD pipeline.

Post-MVP Updates

Feedback received from users was incorporated and shipped in a phased manner to deliver continuous improvements to the MVP

A desktop client with tab-based browsing

Distributed as a standalone desktop client in addition to the web-based version to cater to segments interested in cluster observability alone

Multi-resource investigation: Resource detail opens in a tab, allowing users to quickly switch between resources

Interaction: Hovering over a tab shows resource kind and name for context

Tab management at scale: All open tabs appear in a dropdown allowing users to quickly search, close or switch tabs

Bulk resource actions

Select multiple resources of a kind and act on all of them in one operation

Resource kind switching interaction

Faster search and switching between resource kinds, with shorthand support for power users

Improved usability for searching and switching resource kind with Kubernetes defined shorthand support (Eg. Searching cm returns ConfigMap)

Terminal for deeper debugging

Ability to launch a terminal session on any node, for information or actions the UI doesn't expose yet

A live shell session launched inside the cluster node, no external terminal required

Quick link from App Detail with contextual filters

Jump from App Detail into the Resource Browser with cluster and namespace context already applied

Shows cluster and namespace context in which the application is deployed. Actions serve as quick links to dig deeper.

Outcome

The internal team completely transitioned to the Resource Browser for routine tasks.

This was followed by strong adoption by existing enterprise users and interest by potential customers leading to deal conversions.

90%

Daily Active Usage across enterprise users after core updates were delivered

6 deals won

standalone enterprise deals closed for the Resource Browser alone

Reflection

Constraints force clarity

We had one week to design and ship the MVP, which left me about two days to finalize scope and hand over the fundamental designs. The aggressive timeline taught me to take hard decisions quickly: what to build now, and how to set the base for updates to come later.

The details build the experience

Do not change something for the sake of change. If it works well with no obvious drawbacks, adopt it and build on top of it. Set a stable base, then craft the minor details that lift the experience. They compound, and eventually result in a differentiating and delightful product.

Let's Talk?

If you're looking for a designer and problem-solver who knows their way around tech, is comfortable with ambiguity and has experience in elevating developer experiences.


Drop me a message.

uxarya@gmail.com

/uxarya

Let's Talk?

If you're looking for a designer and problem-solver who knows their way around tech, is comfortable with ambiguity and has experience in elevating developer experiences.


Drop me a message.

uxarya@gmail.com

/uxarya

Let's Talk?

If you're looking for a designer and problem-solver who knows their way around tech, is comfortable with ambiguity and has experience in elevating developer experiences.


Drop me a message.

uxarya@gmail.com

/uxarya