Just a word about the QA automation craze if I may... the big push in IT nowadays is to 'automate' testing.
At an earlier job, I automated a keypunch department. Instead of the requesting company sending paper documents, I had them send a flat file with different 'rec' and 'trans' codes which my program translated into which PF keys to hit. I learned the Attachmate Now! coding language and it worked fine.
At CVS I was entering data into online screens for regression testing, first for the 'baseline' version, then for the 'changed' version, then running comparators on the output files to verify that only the expected changes occurred.
I suggested that they automate the process, found a contractor who knew QTP, and we worked together to successfully complete the automation, which saved considerable time & money. Certain redundant processing you can automate, but not QA testing in general.
If the automated regression test script just enters data into screens and runs, what does that tell you - not much, except that it didn't abend, so every time you make a code change you are going to write a Java script to test it?
The QA 'automation' testers I worked with didn't know how to code the Java Scripts, they just executed them... manually.