QA тестировщику уметь программировать совсем не обязательно, хотя и приветствуется.На QA тестировщика накладываются совершенно другие задачи ну на пример изучение реестра опций отдельных компонентов системы(Функциональное тестирование), оценка устойчивости кода системы на нагрузку большого количества данных(Нагрузочное тестирование),проверка в автоматическом режиме(автоматизированное тестирование,проверка комфортности использования (юзабилити) , безопасность,конфигурирование(работоспособность системы на разных платформах), игровое тестирование- поиск багов в игровых приложениях ну и т.д.