Our team rebuilt and restructured many modules. We cleaned up the UI code, removed jQuery and made it purely AngularJS which reduced the size of code by 50% and improved readability and maintainability significantly.
We redesigned the job scheduler module and added following features:
Created a basic framework around jobs.The framework registers each job run within the databaseThe framework provides each job run with a unique id and includes the unique job id in the log files to improve traceability of jobs.The framework created around jobs abstracted out the operations and reporting aspects, leaving the job developers to only focus on business logic.Created alerts emails for events like a stuck job or a failed job.
We redesigned the job scheduler to beclustered. The jobs could run on multiple machines instead of single machines making it more scalableThe redesign allowed the ops team to quickly identify issues and resolve the customer complaints in a timely manner. Ops overhead was reduced by 25%.