Lately, I've been really tied up by my contract at Microsoft. Until I can afford to not have a day job, that's the way it's going to be for a while. I'm not here to complain about my job or anything, but I've been thinking of something one of my managers of my first Microsoft contract told me in 2010. He pulled me off to the side and told me his honest opinions, and the biggest one (IMO) was when he said "You're probably one of the many people who do great in coding, but suck at testing". This was during the end of my first contract for a testing job. So far, I've had 4 test related contracts, and none of them involved coding, including the one I'm on now. The previous 3 all ended with the same result, only I saw it coming each time except for the first. I'm the first person they lay off because I'm considered the least valuable tester because I don't perform as well or learn as fast as the others. So far, it appears that it's going to be the case for this contract too. A co-worker of mine told me that he heard them talking about my performance and ability to learn and execute test cases. I knew from the beginning that it would boil down to this and I'm 90% sure that they are going to either lay me off first or replace me with someone else more capable. Am I worried about that in particular? Not at all. It's the fact that this happens every time and I almost always see it coming because mindlessly following a pre-written test case for me is problematic.
You might be thinking a) "Why not just get a coding gig?" or b) "What's so hard about following a pre-written test case?".
A) Here (where I live), the vast majority of companies absolutely WILL NOT take a chance on someone who hasn't done coding on the job unless you know someone behind the scenes who's able to "pull some strings". My resume along side of it's format always got at least 1 interview a week and I've been told that my resume is like a work of art with lots of impressive game projects I've written from scratch. But no matter how good I am at coding, their response is "not enough experience". If there's one thing I've learned about being experienced, it doesn't make one individual "skilled" or "capable" either. I have a resume filled with previous test experience, but I totally suck at it. People tell me all the time that I'm one of the most skilled programmers they've ever seen and I've had a handful of people tell me that they are jealous of my skill sets (even I don't think I'm THAT great), but it's not enough to convince an interviewer. Sucks, but IMO, it's their loss, not mine.
B) This one is a bit tougher to explain, and I'll try the best I can without making excuses. I find it difficult to do repetitive tasks that don't require much thinking and stay focused on them. Performing tasks that require trial and error, a white board to jot down flow charts while trying to find the most efficient way to do it is something I do much better at. A good example of this was the 3rd testing contract I had. I won't get too detailed about what I did because of the NDA, but I was doing Xbox 360 compliance TCR testing. Once again, I often had trouble with certain test cases (especially when it came to memorization) and the thing that helped me the most was to envision why these test cases were important on a programmatic level, but I still wasn't very good at it. The interesting side was getting aquatinted with the hardware/software I was using. I was able to learn programming for the 360, it's APIs, the differences between the DirectX superset and debugging *MUCH* faster than I could learn doing the test cases. Some of my co-workers were impressed that I was able to build and port game code to the 360 during my lunch breaks. It just came naturally and I picked it up rather well in just a few days of reading the documentation, experimenting with the dev kits, testing various APIs and sometimes modifying existing code bases and frameworks. It's not because I enjoyed the code part more than the testing, but because I could find myself building upon something and discover new principles upon it.
Regardless of whether the job or task interests me or not, I find myself struggling to focus on it. Focusing on anything is a major challenge for me. From coding a game, to paying attention to an interesting lecture, or sometimes playing an one of my favourite games, keeping my focus is really hard. School? Nope. Church? Heh, I wish. Team meetings? No chance in hell. There's more to it than what I've said so far, but I won't get too detailed. I've gone to a doctor for a psyche evaluation and although I have yet to go through an extensive psyche evaluation, he's already convinced that I do have some sort of mental disorder and possibly ADD. That could add to the problem, but recognizing the problem(s) brings me one step closer to a solution.
So, has anyone else had similar experiences when working in the test/QA field? I've shared my thoughts with others in the industry; some agree while others can't grasp it because they don't code. I don't like the test field, but doing a job I don't like alone has never impacted my ability to do a job and do it right (I've had some really nasty blue collar jobs in my younger years).
Shogun.