Should QA people write some production code and should devs do some QA?
In small enough organizations, should there be completely independent QA and Dev roles, or should each role involve some time (e.g., 1 day a week) doing the role of the other side?

I'm not talking about unit tests. I'm talking about a QA focusing on the system also contributing some production code, and a dev spending some time analyzing and testing a separate part of the system.

It seems to me that this sort of juggling might make sense because the QA gets a better understanding and personal stake in the system, while the dev gets a better understanding of quality and testing issues beyond unit testing. But I am sure there are also reasons against it...
Should QA people write some production code and should devs do some QA?
===

In small enough organizations, should there be completely independent QA and Dev roles, or should each role involve some time (e.g., 1 day a week) doing the role of the other side?

I'm not talking about unit tests. I'm talking about a QA focusing on the system also contributing some production code, and a dev spending some time analyzing and testing a separate part of the system.

It seems to me that this sort of juggling might make sense because the QA gets a better understanding and personal stake in the system, while the dev gets a better understanding of quality and testing issues beyond unit testing. But I am sure there are also reasons against it...