This really means one of several things:
- I want someone who can code (developer-lite)
- I want someone who will create a robust automated test suite and tools to run it
- I want someone who knows what a mouse is and has a prayer of understanding a command line.
- I want someone who knows how to understand and manipulate a system, and to apply thoughts derived from computer science to a mental model of how it works.
These are all legitimate needs. It's up to you to figure out which one is your true "technical tester".
Testers who are primarily coders are great. They make wonderful tools engineers (really just a name for someone who writes code used by testers). They are great for testing APIs and other things where interaction with the system under test is done through code.
Testers who don't code much are fine. They can still think deeply about a system. Some of them are great with usability and user interface because they don't think about the code but about the system. Testers like this can also usually put together scripts and other helper code snippets when they need to as well.
Testers who don't code at all are fine. They're more limited in what they can do, but the tester who can't work on Linux is limited as well, just in a different way.
Don't tell me you need a technical tester. Tell me you need a tester who can do X, Y, and Z. Only if you're specific about your needs can I find you a tester who actually meets those needs.
I'd like to thank Matt Heusser for the inspiration for this post.