FIRST ABOUT THE APPLICATION:
Stack: React.js + Node.js + SQLite
Deployment: The Application is deployed on-premises mostly on Windows Servers.
THE WORK AT HAND:
1. Moving from SQLite to MSSQL:
The Application was built as a MVP using SQLite and now we want to move to a formal Database preferably MSSQL (this is what most of our customers prefer). To ensure that you don't have to learn a lot about the application, we have a strategy of building an abstraction layer between the database and the application. This would ensure that you can focus on getting the database up with minimal time spent in understanding the business logic of the application.
We can also figure out the possibilities of enabling an embedded database (Postgres). But, this would require us to build database services for our customers: querying, monitoring, backups and rollbacks...more on this in part (3).
2. Enable Application Monitoring and Logging:
As the application is deployed on-premises, we would need to enable performance monitoring and event logging across the application giving us more visibility to the application remotely. We are exploring Datadog as of now for this. Though we are open to suggestions. Our Customers would strongly prefer us to NOT have any internet connection to the Servers on which our Application is installed. But we would need internet in order receive logs. This essentially, means that we would ensure that the way we implement this should be extremely secure.
3. Backups and Rollbacks
Ability to perform application and data backups on-premises. The Customer should be able to take backups of the data and rollback to a previous compatible versions on-demand. If we rely on the Customer's Database Server to store the data and other artefacts then, we just need to ensure that we are able to provide data (dump) files in a scheduled/on-demand manner to the Customer so that they can use their internal infra and services to take backups.
If we go ahead with an embedded database, then we would need to provide additional database services to enable backups and rollbacks.
The application has to be packaged in a way that enables easy on-premises deployments and installation. We are exploring Electron for this. Though, we are open to suggestions.
5. Active Directory Integration
Provide our Customers to easily integrate their Windows Active Directory with our on-premises deployed Application. This should be in the form of a configurator that guides the Customer to integrate their AD step-wise.
NOTE: We strongly prefer someone who is setup in Bangalore
Copyright © 2019 | Truelancer.com