Deeper Dive Discussion-Application Development Roles-Production Support
Icon by kliwir art

Deeper Dive Discussion-Application Development Roles-Production Support

Imagine the SMB “application” as a house that has been built and is now occupied by the residents (customers-internal or external).

The production support team can be compared to a maintenance and support crew responsible for the house's upkeep and ensuring the residents' comfort and safety. A wise old man named Jay shared this analogy with me.


The team handles the following:

Regularly inspects the house to ensure everything is in working order, checks for any issues or potential problems, and monitors the house's overall condition.

Fixes any immediate problems that arise, such as a leaky faucet or a broken window. Maintains the electrical systems in the house to ensure they are functioning correctly and efficiently.

Ensures that the plumbing system (like a database and backend system) is functioning correctly, allowing water (data) to flow smoothly.

Protects the house from intruders and ensures that it meets safety regulations.

Acts as the point of contact for the residents, addressing their concerns and ensuring their needs are met.

Maintains the garden and external areas of the house, ensuring they are attractive and functional.

Oversees any renovation or improvement projects, ensuring they are completed on time and within budget.

Again, this article does not provide an all-inclusive list of roles or tools.

And as I have mentioned in prior articles, all this work can be done, on, near, or offshore depending on the expertise and knowledge of the supplier/partner.

 

Roles

Production Support Manager

Oversees the production support team and activities to ensure timely resolution of incidents and service requests.

Defines and implements production support processes, standards, and metrics to optimize efficiency and effectiveness.

Manages communication with stakeholders, escalations, and reporting to ensure transparency and alignment with business objectives.

 

Incident Manager

Coordinates the response to production incidents, prioritizes resolution efforts, and communicates updates to stakeholders.

Leads incident triage meetings, root cause analysis, and post-incident reviews to identify trends, patterns, and opportunities for improvement.

Collaborates with technical teams, vendors, and business stakeholders to restore service and minimize impact on operations.

 

Application Support Engineer

Provides technical support and troubleshooting for business applications, including software configuration, deployment, and monitoring.

Investigates and resolves production incidents, service requests, and user inquiries in a timely manner to minimize downtime and disruption.

Documents support procedures, troubleshooting steps, and knowledge articles to facilitate knowledge sharing and self-service support.

 

System Administrator

Responsible for managing and maintaining the infrastructure that supports the application. This includes configuring and managing servers, storage systems, networking components, virtualization technologies, and other hardware and software components.

Ensures that the infrastructure is secure, scalable, and optimized to meet the performance requirements of the application.

Performs routine maintenance tasks, apply security patches, and troubleshoot hardware and software issues to keep the system running smoothly.

 

Database Administrator (DBA)

Responsible for managing the databases that store and retrieve application data.

DBAs design and optimize database structures, monitor performance, ensure data integrity, perform backups and recovery operations, and implement security measures to protect sensitive data.

Works closely with developers to optimize database queries, design efficient data models, and ensure that the database systems support the performance requirements of the application.

 

DevOps Engineer

Automates deployment, monitoring, and maintenance tasks to streamline production support processes and improve reliability.

Implements infrastructure as code, configuration management, and continuous integration/continuous deployment (CI/CD) pipelines to ensure consistency and scalability.

Collaborates with development and operations teams to enhance application observability, resilience, and performance.

!DevOps and CI/CD will be covered in subsequent articles. Stay tuned!

 

Supporting Tools

Incident Management System

Utilizes incident management tools like ServiceNow, Jira Service Desk, or Zendesk to track, prioritize, and manage production incidents.

Enables incident logging, assignment, escalation, and resolution tracking to ensure timely response and resolution.

Provides dashboards, reports, and analytics to monitor incident trends, performance metrics, and service level agreements (SLAs).


Monitoring and Alerting Tools

Implements monitoring and alerting tools like Nagios, Prometheus, or Datadog to proactively detect and respond to production issues.

Monitors application performance, system metrics, and log data to identify anomalies, errors, and performance degradation.

Configures alerts, thresholds, and notifications to notify support teams and stakeholders of potential issues and escalations.


Knowledge Base and Documentation

Establishes a centralized knowledge base and documentation repository to capture troubleshooting procedures, best practices, and solutions.

Confluence, Jira, GitBook, and Lucidchart, are examples of tools that helps teams to create, share, and collaborate on project documentation.

Enables self-service support, knowledge sharing, and continuous improvement by documenting common issues, resolutions, and lessons learned.

Encourages contributions, updates, and feedback from support engineers to keep documentation accurate, relevant, and up-to-date.

 

Collaboration and Communication Tools

Utilizes collaboration and communication tools like Slack, Microsoft Teams, or Zoom to facilitate communication and collaboration among support teams and stakeholders.

Enables real-time messaging, file sharing, and virtual meetings to streamline incident response, problem-solving, and decision-making processes.

 

Cost Management Strategies

Automation and Self-Service

Implements automation scripts, workflows, and self-service portals to automate routine tasks, reduce manual effort, and improve efficiency.

Enables users to resolve common issues, request services, and access information independently, reducing the workload on support teams and lowering support costs.


Knowledge Sharing and Training

Promotes knowledge sharing, cross-training, and skill development among support engineers to increase competency, efficiency, and effectiveness.

Conducts regular training sessions, workshops, and knowledge sharing sessions to share best practices, troubleshoot techniques, and product updates.


Incident Prioritization and Escalation

Establishes clear criteria and guidelines for incident prioritization, categorization, and escalation based on impact, urgency, and business impact.

Ensures efficient allocation of resources, timely resolution of critical incidents, and appropriate escalation paths to minimize downtime and disruption.


Continuous Improvement

Implements a culture of continuous improvement within the production support team, encouraging feedback, reflection, and learning from past incidents.

Conducts post-incident reviews, root cause analysis, and lessons learned sessions to identify opportunities for process improvement, automation, and prevention.


Vendor Management and Cost Optimization

Optimizes vendor contracts, service agreements, and licensing costs by negotiating favorable terms, consolidating vendors, and eliminating redundant services.

Conducts regular vendor performance reviews, benchmarking, and cost analysis to ensure value for money and alignment with business needs.


Conclusion

Reducing costs in the production support process requires a combination of strategic planning, efficient processes, and leveraging appropriate roles, tools, and techniques.

By implementing cost-effective strategies such as automation, knowledge sharing, incident prioritization, continuous improvement, and vendor management, SMBs can optimize their production support processes while achieving significant cost savings. Understanding the underlying financials and potential savings associated with each strategy is essential for making informed decisions and maximizing ROI in application support initiatives.

With a focus on efficiency, collaboration, and continuous improvement, SMBs can achieve their support objectives while minimizing costs and maintaining competitiveness in the market.

To view or add a comment, sign in

Insights from the community

Others also viewed

Explore topics