speechwriter

noun

1.
a writer who composes speeches for others to deliver