Your first point: It is not listed in "essential duties and responsibilities." I am a Software Engineer. Today, I have put on a Tester hat. I feel if you have written any part of the software, you should not be testing it. I can see testing a change to make sure it worked, and then tweaking it.
But after you've finished, you're not going to find any more edge cases for that piece of the software. If you had, you would have programmed them in. It is better for other people to work on this because they can come in with new ideas.
I am mainly bitching today at how boring and stupid this is. I am doing it (I don't believe it's for the greater good, as this is how we're going to have major bugs slip out into customer systems, but I'm not the decision maker). It is not part of my job, but I am capable of doing it. My boss told me to do it and here I am, suffering.
EDIT: This post on stackexchange basically puts what I meant into much better terms: http://programmers.stackexchange.com...rk/77157#77157
tl;dr: Developers normally work with the developer mindset of "how to make this work?". A good tester is thinking about "how to break this?" - a very different mindset.
Comment