Great first post... can't wait to see more of this coming in the future. Regarding the queuing mechanism to scale web application writes, how would more of an always-async technology like Node.js affect this choice vs. a typical single- or multi- thread web application?
Async enables a server to handle more concurrent requests by suspending execution of a 'long running call'; or in this case when a message is being added to a queue. Async Vs. non-async doesn't affect my choice in when to use a queue. It might delay it slightly, but in a world where we can spin up more servers to handle concurrency; non-async can be scaled up to handle async throughput volumes (to some degree).
I would introduce a queue when: additional latency is not a concern (determine what your threshold is), and secondly when your data store is potentially not able to handle your peak load (this typically requires load testing, and forcasting).
Lastly, I don't want to discount async and languages like Node.js I think that it is the cats pajamas.[H]