During an intensive month of work, application were instrumented to gather data with an APM: NewRelic.
The data gathered provided the evidences to identify the performance bottlenecks.
Query optimizations, index proposal and parametrization fine-tuning were applied to data servers.
Cache policies were suggested and implemented too using Redis.
A set of good practices where delivered to application developers to improve the scalability of the applications.
Finally a process for continuous improvement was setup with APMs to identify bottlenecks and potential problems for the applications in the production environment.