How Machine Learning Solutions Improved the Efficiency of a Major Telecom Company


90%Code Reduction

Significant Departmental Cost Reduction

Talent Delivered

  • Machine learning scheduling & capacity management solution
  • Code & staffing reduction due to improved efficiency
  • System designed for future iterations, thus delivering continual performance improvement
Industry Telecom
Services Consulting

Improved this Fortune 100 Telecom company’s scheduling and capacity management system's efficiency with machine learning solutions.


A large Telecommunications company came to Indotronix looking for machine learning solutions to improve their workday productivity. They deploy technicians to install and repair multiple telecom products, which includes services for video, voice, and data, across customer homes in the Northeast region of the United States. Each job brings its own complexities in terms of infrastructure/architecture of the house, network availability in that location, technician efficiency, driving distance to the customer premise, traffic, etc., all of which led to jobs being rescheduled, completed late, or not completed at all. Our client needed a system that would order jobs into the most optimal schedule for technicians to operate at peak efficiency and lose as little time as possible between jobs.


Several challenges arose with this client, a critical one being the inflexibility of both the team and the infrastructure. It’s easy for teams to be married to the processes, and rethinking them can be both hard and somewhat overwhelming. It’s also hard to completely rethink the infrastructure or set-up of a large telecom company, especially when the current setup isn’t entirely ineffective. Other struggles included:

  • The company being overly trusting of its data source
  • The subject matter expert with the required technical background to answer critical questions was unavailable
  • The customer team lacked domain expertise about their existing process at the deep level required for Machine Learning solutions  


Our objective was to utilize machine learning algorithms to create a productive and efficient work scheduling/slotting system. The algorithms are trained to learn patterns based on historical performance data, which is later used to slot future orders. In order to implement the new solution, we had to replace the current rule-based capacity management system and scheduling algorithms and the complex, built-in logic. The industry standard machine learning process flow was followed.

Services Provided

Our technical team catered to the client’s commitment to staying ahead of competitors with technology and services and created machine learning solutions that leveraged past data and will continue to improve with more inputs. It utilizes variable engineering and is capable of running multiple statistical models in parallel and picking the best results, therefore creating schedules that offered the most efficient setup in terms of travel time, job completion time, potential setbacks, and more. Plus, by having a continuous improvement mechanism in play, the team can add new ideas, data, and algorithms to every iterative cycle to improve upon the past results.

We eliminated coding cycles and development costs by choosing an API based on high-level open-source statistical programming languages such as R and Python.  This efficiently replaces ‘If-Then-Else’ coding mechanism to a robust pattern matching, self-taught machine environment with little or no external support.

Legacy Systems which ran on SQL procedures were replaced with codes written in R, which replaced the large code-set to simple one-line codes to achieve similar results (thus reducing the overall code by about 90%). The overall cost to maintain code in terms of systems and people were effectively reduced.

The improved algorithmic efficiency also led to a reduction in the number of necessary field technicians. By increasing the route efficiency of existing technicians, the company is able to save money on staffing costs and can add or subtract technicians based on client time-based demands.