There has been an interesting discussion happening on twitter as of late about the perceived value of individuals in an organization and the skills they bring to the table. I have found myself in the past several weeks in the interesting position of having to take on much more of a role I had not anticipated needing to take on, that of release manager. At the beginning of April, this was a job that was just done by someone else and I provided testing support to make sure that we had solid code going out the door. Today, I am the release manager, much of which has to do with merging branches, writing and maintaining scripts to make sure the revision numbers are correct, and a variety of small housekeeping jobs.
Prior to taking on this role, I was seen positively by my team, but outside of my immediate test team, I was really just another tester. Helpful, to be sure, but still seen as “other”. Once I started taking over the release management, though, there was a subtle change. My comments for stories were taken a little more seriously and acted on a little more quickly (at least that was my impression). My comments about potential fixes more times than not now get worked on quickly. Comments have generally been positive. What happened? Just a little paradigm shift, but one that has proven to be very interesting to see unfold.
When we test, we are a degree away from the code, and thus often seen as an additional helper, but not specifically related to the programming aspect itself. By stepping into the role of the release manager, I’m now directly connected to the code. Software testers do not make the decision as to what gets released or not (we can advocate, but ultimately the decision is not ours). As the release manager, I do get to decide what goes or does not go. Granted, there are discussions that occur, and I listen to and act on feedback, but the fact that I now turn the literal crank puts me right into the code pipeline. I’m a direct player now, and in a world of programmers, that directness matters, unfairly or not.
I remember an interaction I had a few years ago when I was testing with a team. As I was leaving a project, I turned over some of the test stuff I had cobbled together. Part of that was the Ruby code that we used for tests, mixed in with a fair amount of RSpec and Gherkin, but what caught their attention was what I called my “runner”. I hadn’t given it much thought, really, it was just a script I’d cobbled together over time to maintain and trim reposted runs. It wasn’t elegant, In fact I’m sure a proper programmer could have optimized it immensely, but the reactions to the script and what it did was amusing. “Wow, I had no idea you could do stuff like this!” Translation: Wow, I had no idea that a software tester could actually write code. I get this a lot, and it seems to confuse a number of people over the years. I do understand programming and algorithms, I’m just not a fan of doing programming every day. Really, I’ve spent years trying to convince myself otherwise, and ultimately, I just don’t have that love of writing code each and every day to make myself a master programmer. I do know enough to be dangerous. It’s this state of knowing enough to be dangerous that sometimes raises eyebrows.
Today, I’m the release manager. I have to write code now. It may not be an impressive amount, but it has to be able to work with the systems that perform Continuous Integration, our merging of branches and deployment of staging environments, and other essential components, including automated tests, whether written by me or someone else. What I have now is an authentic problem, and I now own it. It falls to me to make it work, or figure out how to make it work. So far, I’ve been able to learn a lot, and put into practice a number of techniques I’d scratched the surface of thus far. I will learn a lot more in the coming weeks and months. It’s not an option any longer. I am no longer one degree removed from coding. I’m part of the main line, the last stop of the mainline. My work and my efforts are a lot more visible now. Whether I like it or not, I will be judged accordingly.