Hello there! 👋
📖 Story time! 📖
It’s Friday.
The feature was due yesterday.
The code review took longer than expected.
A couple of days ago, you submitted the PR for review.
Some change was requested, you update it and submit for another review.
Another small change was requested. You update and re-submit.
Wait, another change request? Why aren’t they reviewing thoroughly in one go?
Oh, they seem to be pretty darn busy too? I mean, what could you do eh?
Wind whooshes around you…
And suddenly, a tap on your shoulder.
You turn around, and it’s…
YOUR MANAGER! 😱
And you’re asked the dreaded question…
“Where’s the feature? You said it’ll be ready to go yesterday, yet here I am. 🤷”
Ever been in those shoes?
You're not alone.
Management often doesn’t want to hear about the blockers; they just want to know why the release didn’t go out as planned. You try to explain, but it feels like you’re just making excuses. It’s frustrating, especially when you know these delays aren’t your fault. Yet, you’re not sure what you can do to convince them otherwise.
You Can’t Fix What You Don’t Measure
Here’s the thing: It’s impossible to fix problems if you don’t know what they are. And it’s even harder to explain those problems if you don’t have the data to back you up. When your team’s performance is being judged solely on outcomes without considering the roadblocks, you’re set up to fail.
“You can’t fix what you don’t measure,” couldn’t be more relevant here. Without accurate metrics, you’re flying blind. But it’s not just about measuring; it’s about measuring the right things.
“But how do I know what to measure?”
Google Search: Did you mean, “What are Dora metrics?”
This is where Dora metrics come into play. Dora metrics were developed by the team behind the Accelerate book (if you haven’t read it, it’s worth your time) to provide a data-driven approach to understanding and improving software delivery performance.
(It used to be related to DevOps, but Google is changing that up now to be more generally applicable)
Dora focuses on four key metrics:
- Deployment Frequency: How often you’re deploying code to production.
- Lead Time for Changes: The time it takes from code committed to code successfully running in production.
- Change Failure Rate: The percentage of deployments that result in a failure in production.
- Time to Restore Service: How long it takes to recover from a failure in production.
These metrics are powerful because they don’t just focus on speed—they balance it with quality and reliability. It’s not just about pushing code out quickly; it’s about pushing code that doesn’t break things and can be quickly fixed when it does.
Resilience Against Goodhart’s Law
Goodhart’s Law says that when a measure becomes a target, it ceases to be a good measure. The beauty of Dora metrics is that they’re designed to avoid this trap. Because these metrics are interconnected, focusing on one to the detriment of others won’t help you game the system. For instance, increasing deployment frequency at the cost of a higher change failure rate isn’t going to make you look good. These metrics work together to give a comprehensive view of your team’s performance—balancing speed with stability.
How Open-Source Dora Metrics Can Help
This is where Middleware comes into play. Middleware is designed to give you the full picture, not just the highlights that management wants to see. By tracking Dora metrics, Middleware provides actionable insights into both your successes and the challenges that slow you down.
But here’s what makes Middleware truly stand out: it’s fully open-source and self-hostable.
You can run it locally using docker
right now, and have your insights live in 5 minutes!
The Benefits of Open Source
Transparency and Trust: With open-source software, you can look under the hood. There’s no mystery about how your data is being handled because you can inspect the code yourself. No hidden telemetry, no data being siphoned off to some third-party service. What you see is what you get.
Total Ownership of Your Data: Since Middleware is self-hostable, your data stays exactly where you want it—on your own infrastructure. This means zero external telemetry, so your team’s performance data isn’t being sent off to someone else’s servers. You’re in full control of your data, from start to finish.
Flexibility, and Community Support: Being open-source means you can tailor Middleware to fit your exact needs. Whether it’s tweaking the dashboards, adding new integrations, or modifying how metrics are calculated, you’ve got the freedom to make it your own, and the community is there to help you out instead of waiting for an arbitrary roadmap.
How Middleware Helps You Measure What Matters
Capturing Blockers: Middleware doesn’t just track how fast you’re delivering; it captures the why behind any delays. Whether it’s a review blockage, deployment issues, or a critical bug that held things up, Middleware makes sure those blockers are visible and accounted for.
Avoiding the Goodhart’s Law Trap: By providing a balanced view of your performance, Middleware helps prevent management from zeroing in on a single metric. Instead, they see the full story, which leads to more informed decisions and fairer evaluations of your team’s work.
Turning Data into Action: Once you have the right metrics, you can start fixing the real issues. Middleware’s insights help you identify bottlenecks and inefficiencies, so you can focus on improving the process, not just chasing numbers.
Middleware: The Tool That Helps You Fix What You Measure
At the end of the day, you’re doing everything you can to deliver great software. But when things go wrong, it’s essential to have the data to show why—and to make sure you’re measuring what truly matters, not just what looks good on a report.
Middleware empowers you to do just that. By providing clear, actionable insights into your team’s performance and the challenges you face, Middleware helps you move from justifying delays to fixing the root causes. And because it’s open-source and self-hostable, you can do all of this with total control over your data. Your answers are literally a docker pull
away!
Check out Middleware on Github today and start measuring what matters, while keeping your data exactly where it belongs—with you.
We’re early in our journey right now, and we’ll love to have the support of devs like you to present insights in a way that DEVS would love. 🤝
Top comments (1)
Great read! Have been in those shoes, one thing that helped me ship my work faster, was to figure out that my PRs had high lead time because of the high rework times. This lead me to reviewing my PRs myself before even submitting them for review.