Letter to Devs

Operating the cloud shouldn't be this hard

Cloud computing has evolved beyond mere infrastructure and hosting. Specialized tools such as pipelines, queues, and notifications have become increasingly prevalent. The number of cloud services used to build an application has rapidly increased, while also moving "up the stack" and becoming an integral part of the application's functionality.

While feature-rich cloud services have enabled engineering teams to build rapidly, their experiences have largely been isolated, despite their configurations being tightly coupled. This has left developers overwhelmed with the cloud, fighting through consoles and configuration, with no way to have a unified experience or automate daily workflows. We found ourselves navigating through endless screens for day to day operations. Even worse, we sometimes made costly mistakes by accidentally operating on the wrong resource.

Overwhelmed with managing all the services we use, we realized that we were spending more time navigating than actually operating. It was a never-ending cycle of clicks to find the endpoint of a pipeline, secrets of a service, load balancer associated with a cluster, its scale settings, and its network configuration. We had to open multiple tabs and consoles, comb through config settings, and had no ability to shortcut or save the process.

Map of AWS services

Our initial solution was to create a Notion page with deep links to essential resources, organized by microservice or project. This allowed us to navigate to related resources easily. However, we still had to go through the same set of clicks repeatedly to access information such as environment variables or deployment statuses. Additionally, we wished we could save and run common workflows within this view to update things like scaling settings.

To manage this complexity, we created our own ops console tailored to our developer experience needs. This allowed us to map related resources, centralize key information, and streamline daily workflows. Initially, the first version hardcoded a bunch of resources and views, but every time we added another project, we had to start from scratch. This realization prompted us to build an Ops Console framework that enables developers, regardless of frontend experience, to create their own ops console in just a few minutes.

We're thrilled to open-source the Ops Console, a framework that delivers a dashboard and workflow engine so developers can organize resources in sensible ways, view key service metadata in one place and automate cloud workflows. With a low-code, widget-based approach, developers can design custom dashboards and workflows and even build their own custom widgets.

What problems is the Ops Console intended to solve?

  1. Cloud sprawl is real - modern cloud applications are built with hundreds of cloud services and resources. It's tough to manage the sprawl.
  2. Viewing and organizing cloud resources (to your preference) is difficult especially when debugging or monitoring deployments.
  3. The daily workflows of engineers involve guessing through tens of screens and clicks to find information. There's no way to save these steps or build repeatable workflows.
  4. Inability for developers to centralize and evaluate cloud configurations alongside observability tools.
  5. Drive down cloud costs with 1-click workflows for stale and underutilized resources.

With the Ops Console, engineering and DevOps teams can:
✅ Organize cloud resources with a single pane of glass
✅ Build deep operational health dashboards
✅ Share and run operational scripts via the CLI plugin
✅ Manage cloud sprawl and automate resolution for underutilized resources

The Ops Console is the ultimate solution for streamlining cloud operations and enhancing developer productivity. Give it a whirl and let us know how you're 10xing cloud workflows!

See the GitHub repo here: https://github.com/tinystacks/opsconsole


© 2023 TinyStacks, Inc. All rights reserved.