Design a cloud-based SaaS application supporting:

  • 5000 companies

  • Multi-Tenant Architecture

  • Tenant Isolation

  • Billing

  • File Storage

  • Notifications

  • Reporting

  • Disaster Recovery

  • Backup Strategy

  • Auto Scaling

Explain your complete architecture.