Do they differ in role and responsibilities. Or the terms are dependant on geographical area.
migrated from stackoverflow.com Feb 22 '11 at 10:56
I'm not surprised you're confused. It's completely arbitrary. You can do exactly the same job and be called a Test Analyst one day, a Test Engineer the next, a Quality Analyst, a Software Tester, a Systems Integration Tester, a Quality Assurance Analyst, a Technical Test Specialist, an Integration Test Engineer...and so on. I was hired in one role as a Technical and Performance Tester, arrived for my first day to discover that I was now a Test Analyst, and shortly before I moved on to my next role they changed the title again, to something I never actually bothered to commit to memory.
Really. The only way to know what it means for any specific job role you go for is to ask. Try the following questions to feel out what you'll be doing, and what the status of that role is in the company:
The worst thing is that lots of people have quite firm ideas about what different names mean: unfortunately they all have very different ideas of the meaning.
An analyst will evaluate the testing requirements of a system based on formal requirements/specs i.e. the logical investigation of what to test, to get as much as possible tested according to priorities specs using e.g. boundary value analysis, truth tables.
An engineer will build the test suite/execute the manual test scripts based on the analyst's work.
Most testers/developers writing unit tests will carry out both analysis and engineering.