Provide Advanced Technical Troubleshooting

Type of Service: 
Management Consulting
Country: 
Saudi Arabia
Industry: 
Health Care Services
Duration: 
2 years
Challenge: 

To provide development and technical advice, troubleshooting, and mentoring to the client's information technology programming and development group. This particular group was suffering from a number of problems including low morale, very high turnover, low productivity, and poor quality. The challenge for Systematic Computer Science was to help tackle all of these issues, but one of the first was to provide the group with immediate (and ongoing) technical troubleshooting. The client's applications were all built using Java Enterprise Edition, one of the strengths of Systematic Computer Science.

The reason behind the client's insistence to begin with this particular sub-problem was that there were a number of technical issues affecting the ability of various members within the development group to produce applications. Though they had tried to solve the problems on their own, and even called in much larger companies to try to help, the development group was still hobbled by a few persistent, deep problems. Applications that worked on one machine refused to work on other machines. In production, strange errors were appearing in the logs that appeared to be logically impossible, and which were not appearing in the testing stage or in development. Finally, the main portal for the entire organization (over 10,000 employees) was unstable, crashing at least once a week, and exhibiting very slow response times often - sometimes half a minute to display the main page.

Solution: 

Systematic Computer Science understands the importance of tackling problems at their roots. It was clear that the client's staff and processes needed serious improvement, and this would translate to long-term benefits in quality and productivity. However, it was also clear that a fair amount of "putting out the fires" was necessary before tackling the root problems.

Though the overall engagement was 2 years and more (ongoing), Systematic Computer Science spent the first few months focusing on those fires. We conducted a thorough analysis of how the developers were packaging and deploying their applications. We identified several key problems in the way the application servers were configured, and in the way applications were being built. We showed the developers how to avoid the problems, and slowly things began to turn around.

We were by the grace of Allaah able to identify the main reasons behind the organization's main portal for crashing, and discovered that one key reason was the commercial application server owned by the client (from one of the largest IT companies in the world) had a particular component that had a critical undiscovered bug in it. Though Systematic Computer Science thoroughly believes in respecting the law, it was necessary to decompile the particular module, and guide the maker of the application server to where the bug was. We were able to show the maker how to solve the bug, and we helped our client write a replacement module for the module in the interim. Ultimately, the client stuck with our interim solution even after the maker of the software finally released a fix based on our input.

Benefits: 

The immediate goal was by the grace of Allaah met: the development group's productivity rose and the quality of their work improved as well. The persistent problems that had hobbled the group faded away, and this led to increased morale as well - again all by the grace of Allaah. Systematic Computer Science was perhaps a reason in this success, but success is solely in the Hand of Allaah; we understand this.

As our client's technical problems began to disappear, they were able to begin giving attention to deeper problems in process and staff skills. This was the long-term benefit of doing the initial bout of troubleshooting: buy our client time to begin looking at preventing future problems. The reduction of "fires" to put out also gave Systematic Computer Science time to develop a good relationship with the developers, and in addition to gaining good friends we also were able to pass on some of the knowledge and experience we had.

At the end of this phase in the project, and as the client's portal began to stabilize, the organization's Chief Information Officer felt compelled to formally thank Systematic Computer Science for - alhamdulillaah - helping "solve some of the most challenging technical problems" facing the client.