We do use EC2 for cron, but could easily use a laptop instead if there were an outage.
Some of our more dynamic projects do require a server; the inauguration project that uploaded photos to Tumblr did, for example. https://github.com/nprapps/inauguration/
When we run servers, it's usually Flask and Nginx/uWSGI.