Debasis: What led you to become a software tester? And what was the topmost reason that attracted you to the field of testing?
Jonathan: I started in testing when a small software company offered me an intern position in a QA department. They tended to start people with no professional software experience in QA. That way you could get an overall view of the organization, products, tools and methodologies and learn the basics. If you wanted to move on to programming, support, marketing, etc. then you had a good basic understanding from your QA experience. I enjoyed testing because I saw it as "philosophy of software". I had taken a lot of philosophy and logic courses as an undergrad, and I enjoyed the investigative, experimental approach of problem solving in testing, making a good case for bug fixes in bug reports, and having to make my test strategy, approach and decisions defensible to the rest of the team.
I later moved on to technical writing and then became a full time programmer, but I missed the variation of skills and activities in testing, so I went back into a testing role. My topmost reason for staying is the software investigation angle of my work. It’s challenging and fun to help track down and solve important problems that help teams succeed. I am still attracted to the variety of skills I use: investigative, analysis, observation, programming, writing, psychology… the list goes on. I can make testing into whatever I need to help discover and report important information that stakeholders need to make decisions.
Debasis: Did you try testing anything other than software before diving into software testing?
Jonathan: I grew up in a family where critical thinking and coming up for different explanations of why things are the way they are were rewarded. My father was a teacher, and is a brilliant critical thinker. He is able to quickly work through a massive amount of data, synthesize it, come to conclusions and make his thinking process defensible. We have debated many issues over the years, and it took me a long time to be able to spar with him. That background was really valuable as a tester, because he taught me to look for things other people might miss, would point out inconsistencies or flaws in my arguments, and he also taught me a lot about strategic thinking. From that, I went on to study a lot of logic and philosophy in university, and the critical thinking and argumentation analysis was vital to transitioning to thinking about software systems from a testing perspective.
Other than that, I used to take apart everything I owned and tried to put it back together. I needed to know why things worked the way they did so I could understand them. As a software tester, I decompose or reverse engineer products all the time so that I can find areas of potential weakness and I exploit those with tests.
Also, as an undergrad, I took part in experiment design (qualitative research), as well as a participant (helping with quantitative research.) In Biology, my experiments always went horribly awry and I frequently skewed the results in a sample set, much to the chagrin of the grad student who was overseeing us. They didn't like my results because they didn't map to their expectations (a problem with the hypothetical deductive model that scientific research hinges on) so they discouraged me from doing any more work for them. In testing, having experiments go horribly awry leads to fabulous information that stakeholders value, so I get paid to have failed experiments and my audience likes that information. I suppose my failed Biology experiments contributed to my career in testing.
Debasis: Tell me 5 unknown/least-known facts about you.
Jonathan: 1. I own, drive and work on a 1955 Pontiac custom. It is done in the style that car customizers and hot rodders used in the late '50s and early '60s. I belong to a car club with a local group of car and motorcycle builders who all drive and work on hot rods or customs. Some are original hot rodders from the '50s, right up to me, the youngest and least experienced.
2. I was involved heavily in music for most of my life, until quite recently. From the age of 4 when my parents put me on stage to sing a solo, to saxophone in junior high band, singing classical music in a high school chamber choir that traveled around to interesting places, playing guitar or bass and singing in alternative bands through university, to dabbling in my spare time after graduating. Music has always been a big part of my life and I have learned that a lot of that experience has shaped my approach to software projects.
3. I have an entrepreneurial streak. As a kid, I started money-making ventures from roadside lemon-aid stands to a tiny museum. None of them made much money, but they were a lot of fun. As I got older, I worked in sales part-time. I sold anything from shoes, to clothes, to house wares, and later, I even sold web-based software to help pay for university. I also helped start a software company in university, and now as an independent consultant I work with startup companies and advise founders and executives and help them with their business plans, strategic vision, product or service vision, and as they develop pitches to investors. It takes an enormous amount of effort to start something from nothing, and I have huge respect for software entrepreneurs. It irritates me when we techies make fun of management, or sale. They are hard jobs to do well and can come with enormous pressure and responsibility.
4. I'm a trained manager with experience from corporate training and undergrad work while in university. I started management training on the job as an assistant at the age of 18, during a recession a few years ago. Many employees reporting to me were former entrepreneurs or former senior managers from firms that had laid them off, and they were working part-time to help make ends meet. To lead people who were old enough to be my parents took a special combination of skill and diplomacy. I had to earn their respect by being willing to do any job I asked them to do, to work hard, and to not be a dictator. I learned something important from them - they were willing to work and do whatever it took to do right by their ethics and their families. They weren't distracted by titles or status; they just did whatever needed to be done. They were successful prior to the last big recession, survived it, and were even more successful afterwards. Those early lessons had a huge impact on my career.
5. I've been writing for most of my life, and I love it. Now I write on technical topics, but I plan on branching out into fiction eventually.
Debasis: What was the hardest challenge that you found in your career as a tester?
Jonathan: Overcoming narrow thinking about testing. Early in my career, I worked for small startups, and they demanded that all employees provide value. They didn't really care how we did that as testers, as long as we provided them with the information they needed. Some of them were using iterative, incremental lifecycles and practices back in the '90s, and we had to be creative and solve problems differently than traditional testing texts recommended. As I moved on, I found that some testing groups were less concerned about results than they were in some adhering to some process ideal. Back then, people were more concerned about heavyweight processes. More recently, being Agile-compliant is often more important than providing good results. (By the way, I’ve been involved on a lot of Agile projects over the past several years, some successful, others not.)
I don't understand why we have so many extreme views in software that have so much emotion and blind faith wrapped up in them. I value sustainable results, and so do most stakeholders I work with. On most real-world projects, there is a mix of practices: Agile and traditional, exploratory and scripted testing, manual and automation. It bothers me that we have to be one thing or another, or be at one extreme and denigrate other ideas, tools and practices. Why not broaden thinking and try for a mix of tools and practices in testing? Thankfully, there has been a softening of views and more people are open to trying whatever it is that can help them create value, rather than being pure adherents to some methodology or tool ideal.
That has been interesting and rewarding to see. Even five years ago exploratory testing was often misunderstood and discouraged. Now, people are interested in trying out practices to learn how to do it better and add it to their process and tool mix. The same thing goes for open source testing tools, and different software development methodologies. The fusion of ideas, and the mashups of tools, processes, practices and methodologies different teams use to create value over time is fun to watch.
Debasis: Tell me about the most satisfying moment in your testing career.
Jonathan: When I first realized my work mapped directly to our company being able to provide more value to our customers and end users. Now, I get satisfaction when I help track down high impact intermittent bugs that not only help the team create value for their users, but also it takes a weight of pressure off the team. As a trainer of software testers, I get enormous satisfaction when I see a tester learn and grow as I help them develop their skills, and learn how to learn the craft of software testing. It's fun to have a manager ask me what on earth I did to help this junior tester rocket to a bug finding and bug-preventing star in such a short time. Of course, I did very little but encourage an interested tester figure out how to tap into their own skill set and potential.
I hope all of you enjoyed the interview as much as I did. I will be posting the final part of this interview soon. So stay tuned.