Michael Larsen retired from a career as a rock and roll singer to pursue software testing full time at Cisco Systems in 1992. Larsen has worked for/with a broad array of technologies and industries including virtual machine software, capacitance touch devices, video game development and distributed database and web applications.

For the better part of his career spanning 18 years, Larsen has found himself in the role of being the “Army of One” or “The Lone Tester” more often than not. This unique view point, along with ideas and advocacy regarding continuous education and learning/re-learning for testers, is frequently the grist of the mill for TESTHEAD

What achievement in the testing field, are you most proud of so far?
Some might say the fact that I’m still doing it after twenty years. 🙂 Actually, I think the thing I’m most proud of is “TESTHEAD“, since it has been the springboard for so many opportunities that have come my way. It’s been a change for me to share what I know, but more importantly, what I don’t know or what I’m actively learning. TESTHEAD was the catalyst that led me to Miagi-do, which led me to AST, which led me to teaching BBST, which led me to get involved with Weekend Testing, which helped me write my first conference talk, which helped me get invited to speak at other conferences… and on and on. 

The fact is, had I not taken a chance three years ago to put myself on the line and challenge what I actually knew, it’s unlikely the other opportunities would have come my way. TESTHEAD has also been a catalyst to meeting so many great people in the software testing world. It’s the comments, page views and encouragement that I get that inspires me to keep learning, keep writing and keep trying new things. 

Did your time as a rock ‘n roll singer help you become a better tester? And if so, how?
Absolutely it did. One of the things that people often do not understand when it comes to being part of a rock band is the fact that, in the heart of it, each of us is striving to make a go of it with our own start-up company. All of the rules of entrepreneurship and business apply when you are in a band. You wear several hats. In addition to writing music and being a singer/musician, I was also a public relations specialist, a database administrator, a desktop publisher, a marketing director, a financial analyst, a troubleshooter and an image maker.

Each one of us handles these aspects at different times, but we all learned about the hard and sometimes cut-throat business of what it took to be active and working musicians during these  years. The lessons I learned as a musician and performer have stood me in great stead as a software tester over the years. It taught me how to do as much as possible with the resources I had, it taught me to respect the people that support our endeavours and it taught me to have a healthy skepticism of grandiose claims. 

George Carlin once said “Scratch any cynic and you’ll find a disappointed idealist”. Well, nothing is as successful as creating “cynics” as being a musician (LOL!). Over time, you see through a lot of hype and promises, and that scars you. In some people’s cases, it makes them jaded. In my case, it made me question and try to find answers. In short, it was a great training ground for testing 🙂

How do you think software testing differs across different cultures?
I don’t know that “testing” per se is necessarily different. I think that there’s a mindset that is more prevalent in certain places that is more structured towards “factory ideals” that it is towards active thinking and exploration. However, the more I talk to people from various parts of the world, the less I think this is really true. It may be true of certain companies, it may be true of large organisations, but overall, the truly dedicated testers I have met over the past few years show me that they believe testing is a vigorous, active pursuit, one that is intellectually challenging, demanding, and worthy of respect as a career in its own right.

My goal is to support as many people that feel this way as possible, and see that more of them propagate in their respective marketplaces. If the old school “check the box and say it’s been done” mentality can die off, and we can infect the world with more testers that want to stand for good work, inquiry and the advancement of testing as a legitimate discipline, I think we will all be in a much better place. I also believe that transformation is already underway, if the people I have met thus far is any indication 🙂

I see you teach the Black Box Software Testing course on AST, what’s the most interesting part of this course?
For me, I love the fact that every course brings fresh perspectives. No two classes are the same, even though the material we teach is the same. Everyone brings their own perspective and since we emphasize long form answers, peer review and incorporating each other’s feedback into our answers, the level of in-depth learning is huge. 

Each class I teach or participate in typically gives me some aspect to consider that I hadn’t previously. It’s because the individual participants, their experiences and their insights make each class work. it also makes it fun for me, since I never experience the same class twice.

What advice would you give people starting a career in testing?
I would ask any person that aims to start a career in testing to ask themselves why they want to do it. I’d also say the same thing to anyone who wanted to go into medicine, law or business too. What do you hope to do, to learn, to get involved in? Software covers a lot of different areas, industries and goals, and each industry has its own demands for rigor, timeliness, domain knowledge and supporting skill sets.

You don’t have to be a stellar programmer to be a good tester, but I think you need to understand the fundamentals of programming and be at least able to read code at a respectable level to be more effective as a tester.

Learn and internalise the scientific method. Ask questions, and don’t be afraid to ask even more as you go through the process of testing. Don’t be confrontational; be persuasive. Help people see why the problems you have found are important. Experiment and tinker. Most important, get involved with and communicate and collaborate with other testers, the more the better. 

Learn about as many approaches to software testing as you can, even those that are not relevant to your current work environment. If you work in an Agile shop, try to understand why a traditional shop works the way it does. If you work in a traditional shop, read up on Agile techniques and technologies. Participate in activities like Weekend Testing. Attend local meetups. Attend local peer conferences or workshops if you are able. Most important, get to know other testers, collaborate with them, learn from them and let them learn from you too.