Introduction
I’ve seen freshers struggling to solve case studies during interview. Do you also find it difficult ? Yes?
That’s okay. But, since you now have an abundance of resources to enhance your skills, you have no reason to not become a master in it. I myself had struggled a lot during initial days, but with practice I was able to overcome this difficulty. You also CAN!
There is no one shot winning formula in case studies. Let me tell you what helped me to solve case studies during interviews:
- I asked questions. Many questions in fact. Once the case study was given, numerous questions popped up in my mind pertaining to the situation given. Trust me, asking questions help a lot. I realized by asking questions, I was able to solve 40% of the case study.
- I put a structure around the given problem. Yes, structured thinking helps a lot. Also, structuring the problem helped me to solve case studies faster.
- I practiced case studies from different domains like retail, healthcare, technology, sports etc. This made me familiar with their processes and key jargons used. So, during interview I didn’t have to tremble thinking about the type of case study I’ll get.
- I think I’m good with numbers (no bragging!). This helped me to perform mental calculations and do Step 1, if necessary.
Look, my process of solving is simple. If you manage to follow even this much, you would be just fine. You just need practice. And, practice with different types of case studies.
And if you’re looking for more case studies like this, check out the comprehensive ‘Ace Data Science Interviews‘ course! We have curated it with tons of videos, hundreds of questions and plenty of resources, just for you.
This article is about a case study on Call Center Optimization. I’m sure this is a new case study type for you. Hence, do it thoroughly and focus on the underlying aspects of how call center works!
Case Study : Call Center Optimization
What is the biggest turn-off when you call the customer service center for seeking support on any issue?
For me, it is the waiting time. The line : “Your call is important to us” really does not do any consolation to the customer who is waiting on line.
Let’s say, I am looking at comparable Internet Service provider : A, B and C. What will be my main considerations to choose one of them? First, will be the internet speed and second will be the customer support. Customer support is supremely important for any company whether it is a Telecom company, Internet Service Provider, Bank, Insurance company or an E-Commerce Firm. It is the assurance from the company that anything going bad will be resolved as soon as possible.
So, we all understand that Customer Service Center is probably the second most important consideration just after the actual product. Also, customer service is one of the biggest contributors to the cost component for any firm. So, within the same budget can we make the customer service better by using analytics. Let’s try looking at it with a case study. Note that all the numbers are simulated and are used to bring out a concept and does not come from a real case.
Type of channels used in customer service
All companies provide multiple channels through which customers can reach out / connect with them. Here are a few of these channels :
- Call Center: This is the most expensive channel which customers use to reach out to companies. Every company wants to minimize this channel’s cost to reduce operational expense, but it’s a necessary evil. Every customer wants a human respondent to truly assure that everything will be resolved. This preference might change over time, but as of now we have to accept the truth that machines are not as good as humans to understand customer’s problem and provide customized assurance.
- IVR: This is a cheaper channel and is used by almost every company. In general, you get to IVR and if customer’s query is not resolved on IVR, he/she finally reaches the call center.
- Social Media: This might seem like the cheapest channel to receive complaints from a customer, however is the most deadly channel today. The reason being, everyone who comes on the social media page can see these complaints. You are no longer on a 1-to-1 conversation with the customer.
- E-Mail: This is probably the easiest to handle and cheapest to resolve medium for any company. However, this is one of the least preferred channels for the customer to reach out to the company.
Other channels might include brick and mortar branches / outlets, 1-on-1 customer relationship managers etc. The most important of all is the “call center (calling process)” which every company needs to maintain but at minimum cost possible.
So, how can we optimize the expense for a call center. To optimize this problem, you first need to understand that here we are dealing with two entities : Customers and the caller. And to optimize combination of customer-caller pair, you need to understand how are customer different from each other and how are callers different from each other.
Customers : What might influence the time a customer takes on Call?
Because customers might not call the call centers frequently, more important attributes will be his /her demographic and relationship with the company. Let’s consider a bank. So, for a bank, these attributes can be :
- Relationship balance of the customer : How valuable is the customer for the bank
- Type of product which a customer holds : Is the product more prone to disputes or are plain vanilla deposit products?
- Region of customer : Customers from rural areas might take longer time to understand the solution provided by the caller.
- Tenure of customer: A new customer might have more number of questions than a tenured customer
Beyond these, there can be past call data which might be useful :
- Last Call duration
- Time difference from the last call
- Reason of last call
- Whether the reason was resolved after the last call or the ticket is still open
Callers : What might take a caller higher time than others?
Even though the time taken by callers might not be very different from each other, some level of segmentation can definitely be found. Here are a few variables which can influence the amount of time caller takes :
- Vintage of the caller : A new caller might take longer time to resolve the same query
- Training done by the caller : Caller training might help them to understand and resolve the customer queries faster than the others.
- Location of call center : Onshore vs. Off-shore call center might have different resolution time because the callers can easily understand the accent of the customers from the same country and might understand customer issues better.
- Utilization rate of the caller : A caller who is highly utilized might have a lower efficiency compared to others.
How do start modeling ?
What is the objective function when we are trying to optimize the call center efficiency? Here are a bunch of objective function I can think of:
- Call duration : This directly hits the total cost.
- Customer satisfaction : It might not directly hit the cost or revenue but definitely hits the bottom line in a longer term.
So, how do we solve for two objective function? In general, to make it simpler, we take one of the objective function as a constraint and other as the main objective function. We will try to create a formulation which can be solved using an assignment problem. For simplicity we will not take customer satisfaction in this analysis.
Sample Problem Statement
You have 7 types of callers and 7 types of customers. Assume that all seven customers call at the same time, how do you assign callers to each of these customers so that the total time of the call center is least.
All numbers shown here represent time in minutes. Imagine this problem getting to an extent where 1000s of callers respond and 100000s of customers call. So, we probably need a more scientific way to do this problem.
Let’s first see, what is the time if 1st caller gets assigned to 1st customer and 2nd to 2nd and so on. The total time becomes 23 + 84 + 91 + 82 + 67 + 63 + 6 = 416 which is 59.4 minutes/customer. Now, let’s try to optimize this problem using something called assignment problem solution using Hungarian method. The steps are :
- Reduce every row with the minimum of the same row.
- Reduce every column with the minimum of the same column
- Find a row which has only one zero and make the assignment. Also cancel all the zeros in the same column. In case two rows comes out to have zero in than same column, leave it to be assigned at the end.
- Now select the same cells in the main grid and do the total time calculation.
Doing the calculation, the total time now comes out as 165 which is just 23 minutes/ customer. This is a far better assignment than the random allotment.
End Notes
A real life call center optimization is far more complex than this scenario. For a real case we will need to consider packing algorithms which can incorporate the fact that different calls come at different time and what is the best packaging. Other level of complexity can be brought in by considering customer satisfaction rate. We will try taking up these pieces in coming articles.
Did you like reading this article ? Can you think of other checks to make this case study mimicking the actual call center in a better way? Do share your experience / suggestions in the comments section below.