Personally I think after 5 (and definitely 10) engineers working on a single app I would look at whether you can break it down into independent services.
Thanks,
We've invested in a mix of both automated testing, of course, and a lot of monitoring/alerting/tracing to detect problems quickly. That can act as a safety net for deploying frequently that problems will be caught early and can be corrected (rollback or fix & roll-forward).
I'm a fan of saying we've chosen to optimize for MTTR instead of MTBF.