Development teams have a tendency to think that once they push the deploy button, the release is done. But with Devops, it’s quite the opposite now. More software changes, and more deploys, make every production release a new piece of code with unique idiosyncrasies. This has turned what has historically been a more static production environment now highly dynamic.
Teams have responded by layering in a lot of monitoring and performance technologies, which has caused even more information overload. Continuous Deployment makes it easier than ever to push code to production but it has also created an additional priority within the company – the need to provide Continuous Support.
Continuous support addresses the human side of how to harness your team in more effective ways, using new methodologies to adapt to a much different world, and extends out to include other areas of the business besides IT. Sales, marketing and customer support are all going to be affected by this way of doing business.
Imagine that it’s 5 a.m and there’s an intense firefight with all the right Dev and Ops guys working to get the system back up. It’s quickly approaching prime time for the users of your app. How will you get Support up to speed so they can intelligently talk to the issues? Where is Marketing to manage the Twitter-storm and blog post? Or Sales, who is about to demo to a big East Coast prospect? Continuous support aims to help answer those questions.
If we’re going to break down the silos with DevOps, we have to extend that out to *all* silos in the company in order for our end-users to benefit. The ability to solve smaller problems faster means quicker turnaround and quicker fixes. There’s talk about getting customer features out faster but all conversations virtually ignore the support team…even though they’re the ones talking to customers on the front line, listening to feature requests and helping to resolve user issues.
When you extend situational awareness across the company, it becomes easier to see patterns and solve for them. Here are five tenets of customer support:
1. The team is always-on. This means that people are not just alerted when problems are happening but rather, get updated all the time. VictorOps has a Salesforce integration that provides the perfect example. If you’re a company promising 24/7 support, the old-school way to go about doing that is to hire eight people, which is the bare minimum to insure you are single threaded on most shifts. Now, we’re making it work with just a few people and the SF integration. There are tools available that enable your support team, reduce its size and make it more likely that you’ll get to the right person faster. You don’t need to overstaff, or have someone actually sitting there, in order to be situationally aware of your customer experience and efficiently solve their issues.
2. Collaboration is king. Getting different members of the team involved in quickly solving a firefight is a necessary but difficult task in the world of Continuous Support. If you can reduce the spool-up time for looping new participants in, then you’re on your way to finding the right answers. Allowing for scalable “lean-in” means that you have more eyes on the problem and can resolve that critical alert faster.
3. The feedback loop is crucial. All the different departments in the company need to be involved in completing the product feedback loop. This means that when scheduling postmortems, in addition to inviting the Support and Marketing teams to join in these discussions, Product, Development and Operations should all be involved. There’s always something to be learned by internal failures and those lessons should be shared with everyone in the company who might benefit from them. The feedback loop is essential for getting customer feedback all the way back up the chain for Product.
4. Automate, automate, automate. The single biggest driver of high performance, automation increases the overall speed & quality of code. But don’t stop there when talking about automating. You can also automate systems to help detect potential user issues, which is important if you don’t want your customer to be the first one to find the problem. Automating components of the support chain is a vital part of making Continuous Support work because it isn’t about removing the humans but instead making them more efficient through automation.
5. Company culture is inherent to success. If all employees in the business know what the company goals are and how continuous support can help to achieve them, then it becomes an easier sell to get everyone on board. Leadership is essential in making the culture of the company a priority and keeping it there. When Continuous Support is done right, it provides the entire product chain with the proper information and empowers your employees to make better decisions.