I began my internship about 11 months back and I initially joined the QA team of the Company. But since I wanted to make a career in the Software Development track, I requested some involvement in certain Development work as well. But consecutively for about six months I solely worked as a Trainee QA Test Analyst. I was allocated to the highest revenue gaining project of the company, which performed updates on particular sites on a daily basis. Unlike the normal projects where the delivery date would be few months later, whereas in this project everyday is a delivery date for us, not less than working in a pizzeria I suppose.
During my QA days, I was the typical QA tester a Developer would encounter 😀 I picked on the silliest mistakes made by the developers, some were genuine while some were illogical bugs…Duh!! And I really could not figure out why the developers always considered the QA sector as their enemies who picked on every single thing they did and reported some illogical bugs which wasted time. Vice versa we QA people also considered the Developers as hard to work with, because it would some times take ages to get their consent on fixing a bug as well as proving that the discovered bug IS in fact a bug! (whew…)
While I was experiencing this tug of war, my request was finally considered and I was given a chance to work as a Developer in the Project that I worked as a QA Test Analyst. This opportunity was an immense eye opener for me as an intern as well as an observer sitting out of the frame.
Following the Cycle, I finished my Development and passed it on for QA. (And YES, if you think I QA’d it myself before sending it for the real QA cycle, you are absolutely CORRECT! I just wanted to make sure that there were no errors when i handed it in 😉 ) And so long for my confidence in zero errors… I got a report back with some errors that I never would have thought existed. But ironically in a developer’s viewpoint I clearly knew that those were not errors caused by the updates that I have made to the site.
For instance if QA reported a design issue, I would play by the cards and the first comment would be “Check if the bug exists in the live site as well”. And next would be, “If it does, let’s inform the leads and if it’s an issue they will let us know if we should fix it or not”. And lastly, “For now, just check the updates I have done, and if you find any issues outside the updates I’ve done, call it for considerations, but not as BUGS! 😉 “. Well these were the very lines I heard every single day when I had to play QA.
No it was not pay back time for me. Though for a second I spoke the same dialogue, I thought from the QA perspective as well. The errors could be certainly illogical, some cannot be solved due to the way it’s coded. But for a QA person, if something looks weird or behaves in an unexpected manner or rather it could be better, that becomes a defect. But when it comes to the hands of the Developer, either the code can’t be changed and it can be ignored or it’s more of a compatibility issue which is not in the hands of the developer.
From what I discovered during my working period was, the reason for the bridge between the understanding of Dev and QA is, that both do not know each others job, in simple terms. If QA got the Dev perspective, I wonder if any bugs would exist for that matter, but still for all, certain bugs that cannot be fixed at all, would be understood in the first place and wouldn’t require time to check those. On the other hand if Dev got a taste of the QA role, again I wonder, if there would be a requirement for a separate group called QA as such. And having said that, it’s better to have a dedicated group of people for that job because at the end of the day, the QA team does report some really good bugs 🙂
Finally for the developers who consider QA as a pain and QA who treat the Developers equally, like it or not, when it comes to the IT arena, both roles complement each other. Else one would be bug prone without the other!