When should I delete questions?
Closed questions that are of no lasting value whatsoever should be flagged and deleted.
Before voting to delete, please check that there are no good answers;
if so, then the question should be flagged for moderator attention as
a potential merge candidate. We don't like to lose great answers!
Also, be cautious when deleting questions closed as duplicates; they
can serve as a signpost, directing users to useful answers on another
Help Center >> Privileges >> Moderator Tools
As the help center states, closed questions that can not be salvaged can be deleted by the community. Questions that have quality (upvoted) answers should not be deleted.
I personally see no reason to wait for the roomba to get around to it. Community will not remove a negatively scored, closed question for 9 days. So, it depends on how bad the question is. Actively harmful (spam) questions should absolutely be deleted by the community without waiting for the roomba to clean it up.
The only point where I disagree with the help center are the duplicate questions. It seems the only duplicates we get here on Code Review are direct duplicates posted by the same OP. I see no reason to let these questions remain on the site either.