Understands testing concepts and knows how to automate them: unit testing, functional, integration, performance, regression. Uses the QA as a consultant only.
Builds significative unit tests.
Integrates the unit test execution into the build process.
Uses a coverage tool.
Feels ownership of what they do, including testing.