Latest blog posts
DevOps resources tips and best practices
On the latest episode of Level Up, we delve into developing top-notch software catalogs and their essential role in scaling engineering teams. Ezra Cohen, OpsLevel's first-ever Customer Success Manager, joined us to share his insights on this crucial aspect of software management and the good, bad and ugly of the catalogs he has seen.
Are you putting together an effective software catalog for your engineering teams? Or is your catalog already stale by the time you finish updating it?
On the latest episode of Level Up, we delve into developing top-notch software catalogs and their essential role in scaling engineering teams. Ezra Cohen, OpsLevel's first-ever Customer Success Manager, joined us to share his insights on this crucial aspect of software management and the good, bad and ugly of the catalogs he has seen. We explore why cataloging is an essential engineering best practice, how to effectively catalog your software and what makes an efficient catalog. Plus, we will dive into OpsLevel’s evolution into a robust developer portal that brings you the power of a comprehensive software and service catalog.
Join as we discuss:
Want to try our full software catalog yourself? Find it here.
Cataloging is important across myriad professional roles, but it’s especially important for engineering leaders, regardless of industry. While many companies rely on a graveyard of rudimentary and outdated spreadsheets, those who utilize modern, effective cataloging practices see widespread benefits in the effectiveness and efficiency of their teams.
It can be difficult to navigate systems that you didn’t build — tools that most businesses use many of. But cataloging allows you to organize, track, understand and access the different tools and software your teams utilize.
“A platform team might use a catalog to drive a change across the entire organization, while DevOps would use it to find out about specific metrics,” Ezra says. “There’s a bunch of different use cases within an engineering organization.”
An effective catalog can help solve and prevent many major problems across organizations, particularly when implementing organization-wide changes. It does this by creating standardization.
“Once you have a good catalog that's built, maintained, up-to-date and automated, a migration tool becomes so much easier. Then, you can automate in ways you couldn't before,” Ezra says.
While there are many different characteristics that determine whether a catalog is good and effective,
Ezra breaks it down into four major attributes. A catalog is effective when it is:
Unfortunately, many organizations struggle to create catalogs and fall short of establishing systems that meet the table stakes of effectiveness. Fortunately, through experience, Ezra has noticed several patterns that can help organizations navigate these challenges.
According to Ezra, most organizations face one of two paths when working toward building an effective catalog. Companies either:
Don’t know which category you’re in? Ask yourself these questions:
If you’ve answered yes, your business belongs to the first category—you have a technology or an automation problem that can be much more easily addressed.
However, if you laugh at the thought of consistency, you may have a much more complicated road to effective cataloging. But there is hope.
“Understand that this will require some toil,” Ezra says. “You’ve got to pay down some organizational technical debt.”
When you move fast and grow quickly, it can be easy to fall into situations where corners are cut and consistency is sacrificed. Creating an effective catalog will help ease future developments and the implementation of feature releases, but it will require some elbow grease to create those systems and integrate them in a previously less-organized system.
That work begins with building a roadmap and dedicating time to manually cataloging, Ezra says. You can use automation moving forward and perhaps build systems that can retrieve certain types of data, but manual cataloging will be necessary for any previous data.
Dedicate time to clearly define:
Next, go team-by-team and have them do the work needed to fulfill the roadmap your leaders designed. Often, a Platform SRE team will work with the various teams to support and encourage each team to compile everything necessary.
“It’s not easy and it’s not a week-long task,” Ezra says. “ But it pays off in meaningful ways in the short and long term.”
YAML is often thought to be a quick and easy fix for documentation and cataloging issues. You can simply ask each team to write and drop YAML files to synchronize. But according to Ezra, this is a trap and definitely not the ideal path to take.
“People like YAML because it’s not a spreadsheet. It looks like code,” Ezra says. “But it's not good, scalable work. It's not automation. It's not building value for your customers.”
While there is some value to using YAML, particularly when it exists behind a Git workflow, it is impossible to use YAML to build a scalable, valuable cataloging system that is automated. Therefore, it should only be used as a last resort when all other options have been exhausted.
When you opt to use YAML, you actually decentralize your database by distributing it across several different Git repositories, therefore assigning Git as the authoritative place for your catalog. This is inefficient and simply shifts access and consistency issues to a different platform.
When working towards a scalable, affordable and automatable catalog, YAML is not an ideal solution and will ultimately lock you out of the potential for automation later down the line.
Ready to find a cataloging service that is scalable, eases processes and meets the needs of you and your customers? OpsLevel has the solution.
Kenneth (Ken) Rose is the CTO and Co-Founder of OpsLevel. Ken has spent over 15 years scaling engineering teams as an early engineer at PagerDuty and Shopify. Having in-the-trenches experience has allowed Ken a unique perspective on how some of the best teams are built and scaled and lends this viewpoint to building products for OpsLevel, a service ownership platform built to turn chaos into consistency for engineering leaders.
Conversations with technical leaders delivered right to your inbox.
DevOps resources tips and best practices