Madhava Verma Dantuluri

The reason people find it hard to be happy is that they always see the past better than it was, The present worse than it it, And the future less resolved than it will be.


Technical Support


Technical Support Life cycle

Description: Technical support comes in different layers of structure like Helpdesk, L1 support, L2, L3 and L4 support. With each level up, there would be lot of process work to be followed in order to provide the best and fastest support to customers.

Process steps: Incident, Detection, Diagnosis, Repair, Recovery, Restoration. These can be explained in detail as below:

Ticketing: Each issue reported by the customer would be recorded as case/incident in the support structure. This is to track the case closely and give the necessary attention 24 * 7. This also would give the case visibility to the required parties from customer and management. There are lots of tools to use for ticketing management like Remedy.

Case ownership: One the customer support engineer has to own the particular case in the ticketing tool and give respective estimated timelines for the closure of the issue. To be remembered that, even though the case is owned by one engineer, another engineer can also work on this case as a secondary owner. This occurs when the primary owner goes off-shift or leave of absence.

Web meetings: Before the case to be taken up for analysis, it’s always advisable that the engineer to establish a web meeting with customer to get the first hand information. During the meeting, engineer should invite the required parties. Customer should show the issue by performing any basic test.

Triaging: Engineer to start with troubleshooting as below steps,

  • Is this the first time you seen this issue?
  • Is this issue impacting any other features in the application/product?
  • Isolate the issue?
  • Verify in the knowledge management repository if there is any similar occurrence before?
  • Verify in the bug tracking tool like Jira or Quality center to check if this is already documented as bug or as change request
  • Replicate the issue on the test environment and try to isolate if this relates to environment issue.
  • Connect to the system to access the system logs with timestamp.
  • Verify in the DB
  • Open any IDE like Eclipse and debug the Java code to isolate to the line of code.
  • Capture all the data and escalate to the next level dev team.

Solution: Once development team provides the solution, it becomes responsibility of engineer to consult with them and find out the root cause of the issue. It is important to document the RCA for each issue so that we can inform to management and take necessary steps to mitigate this issue in future again.

Testing: Once fix is applied, it’s turn of Engineer to perform the test in staging environment and production environment. Change the case into Resolved status in ticketing tool and inform to customer.

Customer testing: Case owner to setup a meeting with customer again and provide the details about the case history. Customer should test the issue and confirm of the issue fix.

Closure: Document all the case history and close the incident in ticketing tool.

Major support functions:

Product understanding: Team has to understand the functionality of the application or product and keep updated with the changes which would be occurring with each new release. In the each of the upcoming release, support manager should be included in the discussion forum and to understand what changes are going into production. This knowledge can be transitioned to entire support team. One easy way is to have development team upload the entire release notes document in the knowledge repository so that support team can view the same.

Architecture: Development team should take sessions to the support team in explaining the high level architecture of the enterprise application. Team should understand all the integration modules and flow of the functionality.

Escalations: Leadership team should be established for escalation metrics and ownership for incident manager. Some of the customer cases whose priority can be as low as 4 but customer might be in top ten list of service for whom we would have different SLA. That’s why, team always should have a copy of the list of top customers for which there is a different SLA and when any new case coming from these, necessary precautions to be taken care.

Reporting and metrics: Management would always try to track the results with metrics only and the data to furnish this task comes from reporting process. It bottoms down to team members who have to report all the required data fields in the ticketing tool, so that business analyst can generate the reports from this data.

Knowledge management: This is the most essential function in the support life cycle. With the pace of cases been occurring and team solving those, there would always be less or no time to document the case history and steps been taken to fix the issues. For each issue, there would be different set up of troubleshooting steps which should be documented by the team in the repository and should be easily accessible to all team. Once in a week, team lead should review these documents in the repository.