Testing in Australia has a problem. The Australian IT industry still views testing as a job that anyone can perform with minimal technical skills. A quick search on a leading recruitment site has a number of advertisements for Testers with requirements similar to the following:
- At least 3 years experience in a Tester or Test Analyst role with demonstrated experience in planning and executing functional, systems and regression tests.
- Excellent written and verbal communications skills will be a must for this role – the right candidates must be able to develop clear and concise test cases and test scripts
- Some previous experience using Test Director or Quality Center – any exposure to automated test tools (particularly QTP) would be a benefit
- Experience of various software testing approaches and SQL in oder to extract data for tests.
- A methodical nature and high levels of attention to detail.
(Extra points to those of you who noticed the spelling error in the advertisement = “oder” instead of “order”.)
This ad is typical of those here in Australia for testing positions. No programming skills required, no industry specific knowledge, just X number of years in testing, good communication skills and some experience with a particular test tool vendor’s product.
I’m a big fan of analogies so let’s imagine for a second that a car company uses non technical testers to evaluate new cars under development. I can imagine a dialogue between a test driver and an engineer going something like this:
“The new car feels a bit funny at the front”
“What do you mean by funny?”
“Well I turn the round thinngy in the there …”
“oh you mean the steering wheel”
“yeah, the steering feel. I turn the steering feel to this way, but the car doesn’t turn as much as I thought it would.”
“It’s a wheel, not a feel.”
“oh sorry, wheel”
“Anyway, so let me see if I understand you. When you turn the wheel, and the front of the car doesn’t turn as much as you expect it to.”
“Exactly”
By comparison, a test driver that understands how a car works can have a much more meaningful conversation with the engineer:
“It has mid-corner understeer, after turn in.”
“Ok we can solve that by increasing camber slightly or adjusting the rear springs.”
“Let’s try the spring adjustment, as changing camber will also effect tire wear.”
The technical tester is much more effective than the non technical equivalent as they have similar, equivalent or superior knowledge to the engineer but simply a different focus and specialist skills. Whilst my example is fictional, the exact same difference in conversation should be expected between a “Tester” and a SDE/T. What is an SDE/T? An SDE/T is one of the common, technical testing roles at Microsoft. Their testing careers page has the following description:
Software Design Engineer in Test
Tests and critiques software components and interfaces in more technical depth, writes test programs to assure quality, and develops test tools to increase effectiveness.
At Devtest, this is what we do as well using, the same tools, knowledge and experience, as all the other “developers” on the project. The key difference, however is we have a different focus, live in different .Net namespaces (lately System.windows.Automation) and have different goals. However we aren’t any less capable at writing code that the “developers” on the project.
What we constantly have to battle is a prejudice that if you have test somewhere in your job title we are somehow lesser beings, and are not valued or required on most projects. We are seen by people starting out in the industry as un-cool and very few people would consider testing as a career, this is just crazy, we use C#, visual studio, TFS and other cool tools, just like everyone else, we just have a different focus. The “tester is dead” long live the SDE/T.

Great post. Indeed, testing is so much more than poking and prodding, and your example was right on the money.
Your blog covers Testing much better than any other blogs I have seen. Most of the oter blogs are copy-paste of Testing related definitions, while yours discusses technical aspects of testing and some real life practical aspects much better. I liked your analogy. Thanks and keep blogging.
If you can programm you cannot test. Ying and yang. Positive and negative. Create and destroy. Shiva and Visnu. A ‘technical tester’ is a ‘contradictio in terminis’ (latin adagio). Like a “honorable prostitute”.
The tester is the user (read ‘the client’). Not a developer, not a manager, not a technical consultant, not… .Just the final customer. Period. The only thing is that he is experienced in techniques to find out in a short period of time, how things could go wrong in the tool. And point them clear and positive.
This is a bad web, because it brings confusion. I thought you were a tester. You are not. So you should put this “The tester is dead! Long live the SDE/T” in the vey begining of your site, so every tester can read it first, and don’t waste anymore time. Time, for testers, is precious. But you cannot understand it, honorable.
Jose. I it is how the programming knowledge is applied that is important, and being able to code, talk to developers and be a great tester do not preclude you from being a customer advocate.
If you think that I have said “if you cannot program you cannot test, then you have mis understood the meaning behind the post.