You hear all of the time that everyone should work in Retail at some point in their life. This is supposed to be because it teaches you basic time management skills and teaches you how to deal with other people. I completely agree with this, I also think that all software developers should have worked in or have some experience in QA.
I think that this is a great idea because it gives devs a chance to learn about regressions, edge cases and other things that can be tested before code is deployed. By doing QA and writing tests, you learn how to avoid a ton of these simple mistakes that end up coming back to bite you. When it comes to writing good software if you are able to pass off your code to QA with all of the obvious bugs squashed, QA can then do a better job at finding and writing up the more in depth bugs, resulting in a better end product.
This doesn’t mean that I think you should turn down a development job if offered just to work in QA for a while. You should always shoot for what you want to do. Just spend some time exposing yourself to QA practices by reading blogs, creating side projects, contributing to open source, etc.
Just a short post of a few thoughts. Please comment and let me know what you think. I’m working on a few longer blog posts so be sure to watch out for those.