Friday, 13 June 2014

The occupation question

I have been away on holiday. As I left New Zealand I had to complete immigration paperwork. One of the prompts on immigration forms is for occupation. Before you can enter or leave a country, their government would like to know what you do.

I have done a fair bit of international travel and used to diligently write 'software tester' in this space. I would hand my paperwork to a bored official for them to scan their eyes across, only to have them pause in their process and look at me through narrowed eyes. "Software tester" they would question, "What is that?".

Without fail, I would end up in a long conversation about what my occupation actually was. A conversation that usually concluded with the official saying dismissively "Oh, you work in IT", stamping my passport, and sending me on my way.

Because of this, I've changed my strategy. Now when I fill in the form, I just write 'IT'. This annoys me as it seems so general and sweeping. But the officials are satisfied and there are no questions asked.

Why doesn't everyone know about software testing?

A job exists to fulfill a need. In most cases, the need is obvious when you think of the alternative. For example, a bus driver is employed to drive a bus. Without the driver, the bus would not go. The need for a person to fill this role is very clear.

Without doctors we would stay sick or injured. Without plumbers our toilets would not work. Without electricians we couldn't use our lights. Without dairy farmers we wouldn't have milk, cheese or butter.

Without software testers, then what? My first instinct is to claim that software quality would degrade. To people outside of the software industry that means very little. Computer users are conditioned to expect their software to be imperfect. Though the degree of imperfection would change in the absence of testing, without seeing the better solution many would just assume that what they were given was how it had to be.

How do others within software development avoid this problem? Programmers write code, so it's easy to understand that without them the software would not exist at all. Architects and Project Managers have strong parallels to similar roles outside of our industry, which makes them easier to grasp.

Those with an understanding of software development will, generally, see the need for and value of testing. They have expectations of software and can identify when these expectations are not met. I think it would be nice to see this knowledge spread to a wider audience.

I'd like to be specific about my occupation without having to explain what it is. Wouldn't you?


  1. Completely agree Katrina.

    In many ways, I think we're a victim of the fact that software - and IT in general - remains a kind of magic to those who aren't specifically involved in its creation.

    I actually had this experience myself when I stumbled across the advert for the Graduate Programme that got me into testing three and a half years ago. Coming from an Arts background, I didn't know that software testing was a thing that people did. I admitted as much in my interview, so I think credit goes to my employers for the fact that they still hired me!

    The trouble is that those who don't have a technical understanding of how IT systems work assume that you can create software like you can create anything else. When you create a chair, it's pretty apparent to any observer whether or not it works as a chair. It's aesthetic or comfort value may be up for debate, but its functional one is usually apparent immediately.

    The fact that software systems are infinitely more complex than a chair is part of the problem, but so is the idea that as testers we don't add anything tangible to the pot. Like a carpenter who creates a wooden frame for a chair and an upholsterer who dresses it with cushioning and fabric, laymen understand that programmers contribute the physical realities of software - the code itself.

    The idea that testers exist to provide information about something which is the responsibility of another breed of professionals is a concept that isn't commonly encountered in other disciplines.

    For what it's worth though, I think you should go back to writing "software tester" on the immigration cards. It's one small way to spread the word of our profession!

  2. In the last few years I've had to fill out those immigration forms at least a half dozen times and I ALWAYS write Software Tester! Yet I don't recall any customs official asking me what it was or what it meant to be a software tester (some part of me hopes they would so I could proudly explain it). I don't necessarily believe they /understood/ what I do or what software testing is but it is interesting (maybe sad) that I've never been questioned.

    As for using the term IT versus Software Testing - I guess it depends on the risk / reward scale. At this point my risk seems low so I keep doing it. Maybe I won't feel the same way if it happens at an inopportune moment.

  3. Developers write code to implement an idea.
    How close is the implementation to the idea?
    This is the answer that the testers provides answers to.

    Secondarily the answers can guide on the areas that one might have to spend time and money in order to bring the implementation closer to the desired result.

    We also identify actions and steps that might kill somebody and thus help the others fix it before somebody dies