Django Multi-Tenancy Architecture Implementation

Job ID: 40578975

Budget: $30 – $250 USD

I am looking for an experienced Django developer to implement a clean, scalable, and production-ready multi-tenancy architecture for my existing Django application.
The application is already fully developed. I am not looking for new features or changes to the business logic. My goal is to refactor the architecture so that each customer (tenant) has their own isolated PostgreSQL schema, ensuring complete data separation.
Requirements
Implement schema-based multi-tenancy using PostgreSQL.
Each customer must have their own dedicated PostgreSQL schema.
Each customer must also have their own subdomain (e.g., client1.myapp.com, client2.myapp.com).
Automatically resolve the tenant based on the incoming subdomain and switch to the corresponding PostgreSQL schema.
Provide a clean onboarding process that creates a new tenant, provisions its schema, runs the required migrations, and assigns its subdomain.
Include a public (shared) schema for authentication, tenant management, and super-admin functionality.
The solution must be clean, maintainable, and follow Django best practices with minimal changes to the existing application.
Ensure migrations can be managed per tenant.
The architecture must be scalable and suitable for production.
Deliverables
A complete implementation of schema-based multi-tenancy with subdomain routing.
Clean, well-structured, and maintainable code.
Documentation explaining the architecture, request flow, tenant creation process, schema provisioning, subdomain configuration, and tenant migrations.
Recommendations for deployment, wildcard DNS/SSL configuration, and long-term maintenance.
Preferred Stack
Experience with Django, PostgreSQL, and schema-based multi-tenancy libraries such as django-tenants (or a custom implementation if better justified) is preferred.
The objective of this project is to implement a robust multi-tenant architecture while keeping the existing application and business logic intact.