I have had a couple of interviews recently for Tester/Test Automation positions. The strange thing is that the interviewers didn’t seem too interested in my test certifications or test automation experience. Or, my experience using automated tests in Continuous Integration servers, or in higher environments in a Continuous Delivery pipeline. But, they were very interested to know if I do Java development. <:-?
It seems a strange request, since when I am testing I am usually up to my ears “testing” and writing test automation. It’s hard to imagine when I would have time to write Java, or what I would be writing it to do. So, what is this fixation all about? I keep wondering what I am missing. Maybe testers telling developers how to write more testable code or is it just more code review? There are some good automated test tools for that; they run in your CI server. A tester’s life is hard enough without going toe to toe with development at the code level. Who in management is trained to referee a cat fight?
I suspect that Kent Beck is at it again/still, I guess he is never going to figure out that 98% of the people who develop, don’t want to test for a living, and trained testers who do test automation are busy developing test automation.
Don’t get me wrong, developers can do good testing, but you have to train them to test. Testing is a discipline; it has a body of technical knowledge behind it, just like development. I used to train developers how to test. There was a market for this in regulated and safety critical industries just before the turn of the century. It took a mandate from high up to get them into the right mood, and they were almost always very skeptical in the beginning, but once they got started they found testing techniques very useful. They became very good testers for the most part, and their code quality improved greatly.
It seems to me that the real question here is about the tester’s technical competency. (As well it should be after all the off shore testing fiascoes. ) But, if you want to make sure that the tester has enough technical background, an engineering degree and two years coursework in a Masters in Computer Science is probably a better indicator. Better yet, give the candidate a test that will tell you if the candidate has enough understanding of programming techniques and the language to meet your goals. (You do know what your goals are right?)
That said, I would love to be part of this great new experiment where you, “give every developer a pet-developer-to-test-for-him.” I have been working next to developers for years, but they would not let me write any code; that would have taken me away from testing their code. So, I am most curious to see what is different this time.