Фраза 'for 5 years' указывает на продолжительность действия, которое началось в прошлом и имеет связь с настоящим, что соответствует времени Present Perfect. Вопрос сформулирован корректно для данного времени.
Ответ: What have you done for 5 years?