One of the things that is often strange about making software is that the thing you make isn't really something that you can see directly, if it isn't something on the front end. So much of what we build is on the back end, some kind of service or thing that has no user interface. And heck, as a manager, I'm not building anything myself at all, it's the excellent team that I get to work with. Maybe it's a little bit that, but I like to be able to see in real time how it's behaving because I love to think about performance and throughput and numbers that measure what it does. This is especially true with things that run at scale.
The team built a new thing in record time, and now we're learning about how it could fail, slow down or otherwise not live up to its purpose. The only way that you can make informed decisions about how to firm up the software is to measure all of the things that it does. I'm not sure why, but I love to geek out on this sort of thing. And as I was speculating, I think part of the reason is that there aren't any buttons to click on, so this offers some validation that the thing is useful. There are a ton of things that you can measure that are pretty typical technical stuff, like how much memory you use or how long requests take, but I like getting into the behavioral stuff, too. What does it actually do and how much? If it does three things, in what proportions do they happen? Is there some kind of logical funnel of events to follow? How much money does it make? How much money does it cost? Sometimes interruptions or changes in behavior can mean that something is wrong as well. When it's not, it gives you the feels about how it's providing value.
Fortunately, while I'm not writing the code to generate all of this data, I can mess around with dashboarding it. It's so satisfying. That's the kind of weird that I will proudly own.
No comments yet.