Customer Email Management Solution Case Study
The company over the years has developed a very strong reputation for their customer support system over email and phone calls. The company receives on an average 100,000 emails per day from their customers. The company had more than 500 support mailboxes, that catered to 250+ different functional groups. On average 50,000 emails are sent out by support desk on any workday. On an average 500+ agents man the support desk. The company has set themselves up for a very stringent SLA for email response time of less than 10 min. For such demanding email support, they had developed a proprietary application over their Lotus Notes email system. To make the email support efficient, they had implemented several features that helped support agents to respond to emails quickly. They had also invested heavily in training of support agents to be effective with their tasks.
- While their proprietary application was serving them well, it was under threat of technology sunset, as Lotus Notes had become an outdated technology with end-of-life support announced by HCL (holds current ownership) in 2023.
- The company wanted to adopt Microsoft 365 as their new email platform, but this application had become a deterrent.
- Moreover, the application hosted over on-premises infrastructure was not able to scale on demand as email volumes can fluctuate heavily over time. To avoid any outage, excess capacity of infrastructure was always used at the expense of high CAPEX/OPEX.
- The homegrown application was difficult to maintain and was heavily dependent on few original developers skilled with outdated Lotus Notes scripts. Finding new resources with this skillset had become challenge for the company.
- The company over the years has come up with thousands of email processing rules to add automation in email processing. Governance of these rules had become a nightmare and always needed involvement of developers.
As the company decided to embark on and adopt Microsoft 365 platform for their email solution and other collaboration workloads, Netwoven proposed an Azure microservice architecture for the reengineered application with SharePoint Online hosted single page SPFx application as UX layer. The objective was to create a highly scalable, performant, responsive and resilient infrastructure for the application while making best use of SharePoint Online as repository and user interface. The solution was designed to deliver similar or improved performance as that of the existing application while addressing challenges being faced by the current application.
Netwoven worked with original application developers extensively to understand the application features in detail. As the application was developed over a period, many features were introduced on ad-hoc basis in response to user requests. All those features were cataloged and prioritized as per the importance. All desired features were compiled for the reengineered application to create the application specifications.
Netwoven followed the Azure Well Architected Framework (AWAF) guidance for the application architecture. Core email processing functionalities were identified and encapsulated as microservices using Azure Web Services or Function Apps. Backend functionalities were exposed as APIs using Azure API Management. The service layer used Logic Apps to design Exchange Online Mailbox connectors. Topic-Subscription design pattern was implemented using Azure Service Bus to design the scalable and flexible Rules Engine for email pre-processing.
The solution architecture provided the desired benefits as intended from a AWAF compliant application:
Reliable as multiple instances of app services ensured availability of fallback instances in case of a failure. Recovery policies configured for app services and function app to auto restart the in the event of failure.
Scalable as each microservice was hosted on dynamically scalable App Service Plan. With auto scaling logic configured, each application component could scale according to the processing load.
Secured as all Azure resources were configured with private endpoint and communicates with each other through Virtual Network only.
Optimized Operational Cost as minimum possible configurations were tried out for different Azure resources before finalizing the right configurations that gave the desired performance.
Excellence in Operations through configured policies, alerts and monitoring dashboards, which would send notifications to appropriate persons and take corrective actions.
Performant because of effective use of Azure services along with scalable configurations of App Services and other resources.
The application UX layer was designed as Single Page Application using React / SPFx technologies and hosted on SharePoint Online site collections. Use of contemporary web design standards ensured most appealing experience for the application users. The React / SPFx application was secured by Azure Active Directory authentication protocol that comes built-in with SharePoint Online. The UX application interacted with the service layer through secured end point. The Application in general made extensive use of Microsoft Graph API for accessing resources in SharePoint Online and Azure.
UX application was designed with event driven architecture to facilitate real time status update of the items and tasks on users’ workbench. All users are guaranteed to have latest information on their scree all the time.
SharePoint Online lists and libraries were used as application repository, where active and processed emails were stored. To support users with quick and intelligent retrieval solution while looking for right emails in the repository, Azure Cognitive Search was used.
The solution was deployed to production after 10 months of development and validations period. Netwoven worked with the IT Team of the company to create Azure landing zones and provisioned all resources. On M365, Netwoven created site provisioning templates to create site collections for each functional groups. Netwoven also created migration scripts to import email templates and tags from Notes to the application.
The company migrated all the functional groups in phases to the new cloud application from Notes. Immediately they could reap benefits of the robust and dependable cloud infrastructure. Some of the measurable benefits they started getting are as follows:
- Incoming mails could be processed in about 20 seconds.
- 500+ agents could work on the application simultaneously with no snag.
- Users loved the refreshing modern interface.
- Agents could compile a response in about 3 minutes.
- Users could send personalized bulk emails with count exceeding several thousand together.
- Admins could leverage advanced Azure Monitor dashboards to observe application performance and identify any issue
As a result, the company witnessed several positive impacts like:
- Intelligent pre-processing of emails provided agents all the information ready to process the email quickly and take appropriate actions.
- Robust and flexible rules engine auto process emails wherever possible and reduce the load on support agents. This created the opportunity to downsize the support desk and save cost for the company.
- Protecting customer sensitive information that might have been shared by customers.
- Provide customers with most authentic information in the first go by compiling all relevant information for the agent and assigning the email to most qualified agent by the subject matter expertise.