Contact Center Master Roster
By Sean Woodward on 4/20/2021 in Projects
Creating the MasterRoster Web App was chalk full of many opportunities to combine many processes that were being tracked in various spreadsheets.
The primary focus of this application was to at least have data management around a specific demographic of employees at the contact center. Such that the heiararchy, capabilities, and availability of these contact center agents could be known by a Workforce Management team, as well as by Service Line Directors, Managers, and Supervisors. They also needed to have performance metric data about these employees as well as One on Ones, and Absences.
I developed this application "from soup to nuts" as a full stack developer.
I designed the Microsoft SQL Server Database Structure. This design was especially important because it would be used as the backbone for other applications to be built on top of. I was aware that I was going to be able to setup some ETL processes from Human Resources, Windows, and Reporting Analyst teams in to this database. Thus this database was designed to have multipe Schema's and tables in those Schema's rather than all tables going to the dbo Schema.
The standard adopted by the Web Development team that I am on chose ASP.NET Framework with Entity Framework as the server side framework to work with. So from a support stand point this was the framework used. Many Models, Views (allot of JavaScript for each view), and Controllers were developed in order to support all of the business processes that were requested by the stake holders.
This application needed many ETL processes setup for it. Rather than SSIS packages, I chose to develop a series of Console Applications using TopShelf and Fluent Scheduler to turn the Console Application in to a microservice that could be hosted on other application servers. A particular advantage to this was that I was able to use a "Core" class Library that held all of the Database Models, and Entity Framework Context which could be a project reference for the Web Application, and each ETL Console application.
The web application and 5 supporting ETL processes went live to production on August 7th, 2019. There have been many incremental updates to the system since then. The solution is still in use today by over 1,600 active Contact Center employees including Directors, Managers and Supervisors and 12 Workforce Management Employees. Not only is this a repository for agent demographics and statistics, but the results of over 23,700 One On One interactions have been recorded between Supervisor and Agent, and Manager and Supervisor as well.