haranguer

nounA person who makes a long, loud, and forceful speech, especially one that criticizes or tries to persuade others.

Synonyms