Three Tips To Ensure That DevOps Adds Real Value To Your Business
If you work in tech, chances are you have an opinion on DevOps. Either you think it’s a worthless exercise that creates more problems than it solves, or that it’s a must-have in today’s workplace. At my company AppLovin, we stand solidly in the pro-DevOps camp: not only for what it does for our operations, but for what DevOps does for our business. If you do go with having DevOps, it’s crucial that you think of it as a driver of innovation; only then will it be efficient and successful. Here are my top three tips for making sure your DevOps team continually drives innovation at your company.
1. Make sure DevOps is tasked with differentiating the foundation of your technology.
There’s no doubt that using cloud services and providers is easy. But these days, you don’t get any advantage over your competitors by using them. Whether you go with Google Cloud Platform, Microsoft Azure, or Amazon Web Services, the fact of the matter is the competitors you’re trying to beat have the exact same access to them. You can only truly be steps ahead by creating a unique foundation for your technology that’s both the best fit for what you’re looking to accomplish, and differentiates you from your competition. A well-managed DevOps team can do just that.
For example, tailoring software using either cutting-edge processors or leveraging the latest Flash or NVMe storage for specific applications can create a performance advantage of 2-to-5 times that of cloud configurable software. In my experience, that can translate into a business advantage of 12 to 18 months until cloud hardware catches up. Also, with a strategic DevOps team, you can mix and match the best blend of hosted, co-location and cloud options. Deploying across different services can lead to a significant performance advantage, and you can only do that with optimization by a good DevOps team.
2. Make sure DevOps focuses on creating tools to streamline the engineering team’s workflow and let you scale.
A well-managed DevOps team can help streamline your business by creating tools that don’t require new engineers to operate. That means it can help you scale while minimizing associated overhead costs.
The key, however, is having a systematic approach to infrastructure. Make sure every decision about your infrastructure (literally your tech stack’s backbone) is deliberate and consistent with your strategy. That’s how DevOps can enable engineering to push limits in development without worrying about underlying hardware.
The main way the AppLovin DevOps team ensures a systematic approach is automation. We automate provisioning of new servers. We automate deployment of code from dev to stage to production. We automate the detection of anomalies. And we automatically replicate everything. Using tools such as Chef, Jenkins and Grafana means the DevOps team never creates a one-off. It also ensures a consistent environment across data centers for the engineering team.
Maintaining that consistency has to be automatic too. A top-notch DevOps team will have a pervasive logging and monitoring infrastructure that enhances the ability to create tools that automatically monitor services. Every company’s tech stack is unique, so it’s important to have a bespoke but automated toolbox at your disposal so your team can operate at maximum efficiency.
3. Never ever let DevOps fall into the IT trap.
The moment your DevOps team takes on IT support, it becomes a cost center. IT should never be the primary, secondary, or even tertiary function of DevOps. Its focus should be innovation and automation, not maintenance for users.
Tell-tale signs that your DevOps team is falling into the IT trap can be found in your DevOps’ tracking system. Look at the tickets: is the team bogged down with tasks related to laptops or mobile devices? Is user onboarding or access control generating a significant percentage of tickets? This means you’ve got a problem. If the DevOps team is innovating, the ticket requests won’t be from individual users but rather will stem from larger architectural goals, performance improvements, and system upgrades that move the overall infrastructure forward. A good rule of thumb is that your DevOps team shouldn’t be responding to individual user needs more than 10% of the time.
Although there are many legitimate reasons why an enterprise might not have DevOps, I believe that it’s crucial for driving innovation on an ongoing basis. That said, you can’t just create a DevOps team and let it do its thing; there are tricks to doing it right. Make sure that one of the team’s core responsibilities is differentiating the foundation of your technology so that you serve your customers better than your competitors, and use DevOps to keep your eye on the prize of scaling without adding operational costs in the form of engineers. And finally, never, ever let DevOps be confused with IT.