I am a Software Quality Engineer team lead, part of a large Solutions Quality Engineering team. SQE is separate from Software Development, but part of the same organization. Most of my teammates were hired as testers, but a few of us were brought over from development.
On my current project the ratio of developers to testers is almost 1:1 testers to developers. I think there are 13 developers and 11 testers on the project right now. It is a large, complex and mature system. The development effort is about 60 percent enhancements, 40 percent fixes.
Most of our testers are new hires, direct from school. Majority of the team is offshore and are assigned to either development or testing regardless of preference. Short-term contractors are typically developers who take a testing role until something better comes around. Inexperience and boredom are enemies of accuracy. I have not yet experienced a newcomer with rigorous testing experience. We have well-documented processes and job-aids. I spend a lot of time with newcomers during their first planning effort to enforce and explain the process and hammering home that the functional specs are the base of all planning. The turnover is high. The good testers often get promoted (becoming too expensive) or stolen by other projects. I’m biased in this, but I think the best testers are those who have development experience, but choose to be testers.
When the organization was less mature there was no separate test team or consistently applied test practices. When we merged with another organization with a designated test team it was a struggle to convince Project Managers that the extra costs were worth it. Seven years later SQE is indispensable and built in to all project plans.
Quality testing takes a lot of effort and planning. The developers component test before sending it to SQE, but all the integration, performance, product and UAT testing are handled by SQE. A product test with UAT for a typical release takes six weeks. After the first pass, most of the developers move on to their requirements for the next release.
Our customers are happy with the consistent high quality of our products. Developers who take jobs elsewhere are shocked at the shoddy test practices they find.