So the idea is to modelized our Application so that we can customize our application to meet the client's requirements by creating a separate application for each client In this Approach we will be able to make clients’ apps robust, speed-wise, and UX-wise.
Currently, we have InvesDocs in prod which is multi-tenant and has the same database for all the clients which slows down the system because of a lot of conditions for multi-tenant. We can keep the investors as the main product and the solution we are building around it like we have done personal Gmail integration, AI features, or Customized Workflows and task management we can replicate or reuse this in that new client application as per their requirements. This will help us onboard new clients more effectively and our application will serve better performance-wise.
Comparison:
| Proposed Solution | Current Solution |
|---|---|
| best design according to client | not easy to change the design |
| very editable for a specific client | not very editable |
| very fast | slow |
| Separate database for each client | common database |
| easy support | difficult |
| Separate app | single app |
Example Platform:
Salesforce initially used a single-tenant architecture. Although they eventually shifted to a multi-tenant model for broader scalability, their initial approach allowed them to tailor solutions for specific clients, which helped them establish a strong market presence and deeply understand customer needs.