What are the best practices for the development setup?
That's the setup we use here. It's ok, but local development runs slowly because the database is off-site - we'll be moving to an internal database server in the new year because of that.

Image transforms we just deal with by manually syncing the folders every now and then. I believe Andrew Welch has a script to help manage that - I've not tried it https://github.com/nystudio107/craft-scripts

But I wish there was a way to tell Craft, in dev mode, that a missing image file is not a "stop everything" error.