Unfortunately, most business leaders find out why DevOps is important the hard way.
Like when you get a huge amount of publicity and surge of new visitors to your site, only to have things collapse under the sudden load. Instead of impressing a slew of new visitors — and potentially converting them to longtime users — you disappoint them with a blank server-error page. Not only do you lose the opportunity, you make anyone who remembers the experience less likely to click the next time.
It would be nice if that was a theoretical scenario, but it’s not. It’s a reality for a lot of businesses, in this specific case a publisher who came to Table XI for help shortly after.
We would never suggest that a business leader needs to be fully versed in the benefits of Dockerization and Kubernetes. But if you don’t at least know what DevOps lets you do, you won’t be able to get out ahead of it. All it will be is an expensive line item that you can’t tie directly to ROI.
DevOps is how you serve users at scale — without paying for servers and resources you’re not using. It’s a responsive approach to infrastructure, so you can move faster — get real-time data and use automation to expand, contract and balance your infrastructure. That’s the business benefit of DevOps: You control how people interact with your applications, almost on demand.
Why DevOps is important to the people running the business
Unless every interaction is in person, somewhere, someone will interact with your company via an application. Internal, external, whatever it is, the more valuable that application becomes to your business the more critical DevOps becomes. If every employee relies on one tracking application and it goes down during a work day, every employee is going to sit completely still until it’s back up, costing you money. If it’s an app that customers rely on and it goes down, you may never get those customers back.
Think of your application like a car. DevOps is the fuel that gets it on the road and the mechanic who keeps it running, fixes it after a crash and upgrades it to deal with new conditions. It’s not enough to launch an application just like it’s not enough to roll the car off the assembly line. You have to consider how it will be used over its entire lifetime. DevOps is how you make, implement and update that plan.
“Cloud” makes infrastructure sound untouchable, but at the end of the day, your application is still out in the world, living on computers. And sometimes, because nothing is perfect, those computers go down. If you’ve brought DevOps into the process from the beginning, your business won’t go down with them. You’ll have the control. That’s true in case of an outage and, more critically, when you’re ready to expand. DevOps strategy and automation gives you the capacity to grow in a controlled, predictable way, keeping operations smooth.
What problems does DevOps solve?
Too often, DevOps gets left out of the process. It can feel too technical, too far removed from end users. But if you’ve ever waited for a page to load, you know how critical DevOps can be to customer experience.
DevOps gives you a framework for thinking through questions like these:
- How many people will use the product?
- What does it need to store?
- What does it need to access?
- How much will you depend on it?
- How much will it cost you if it goes down?
- Do you expect it to live long enough to need updates and maintenance?
- Who’s responsible for keeping it running?
It’s a lot more tangible than it might seem to hear some people talk. “Cloud” is still a popular word to throw around, but it’s really just a shortcut for someone else’s computer. When we say the cloud, we mean computers connected to the internet nonstop, typically located in data centers managed by professionals.
The value of DevOps comes from finding the right amount of those computers to buy, where to buy them and how to structure them. Amazon and Google will sell you anything you ask for, and happily. We’ll help you figure out the right balance of power, reliability and cost so you’re making the right investment for the right return.
Realizing the benefits of DevOps
For almost every application, the code we write lives on and runs from a server, which talks to another server where the data lives. Before an app launches, this is enough. Only a few people are accessing it, and if it goes down we know how to get it back up.
Once the app launches, the story changes. Now there are real users counting on it. You have to think about multiple servers, so if one goes down, the application can still run from another. You also want to think about where people will access the application from, and how fast they need it. The closer the user is to the server, generally, the faster they’ll be able to access the app. You may need multiple servers to make sure the app stays online and multiple servers to make sure the user experience is smooth and speedy.
The DevOps framework provides the rules for which traffic goes to which server, and how the servers work together. “Load balancing” is really just that, a step between the user and the server that sends them to the best place to access the application. The role of automation in DevOps is to make all of that happen at scale.
Making smart decisions by identifying the right DevOps metrics
That automation matters when a former president shares a link to your product. Our publishing client doesn’t get a warning when a major personality is about to send people their way. They just start to see the numbers spike. It’s an enviable problem, but millions of people pouring into your business can still backfire if you’re not equipped to handle it.
Now, the data does it for us. We identified the right metrics to watch — the ones that indicate a spike is just the beginning, and we set Kubernetes up to scale in response. There’s no more watching, no more gut-based decisions. There’s just data, and a dynamic reaction.
With DevOps automation, we turn the logic powering your infrastructure into programs and code. Just like the code that runs your application, this code can be documented, executed and evolved in a controlled way, minimizing human labor and human error.
If a server goes down, the code automatically reroutes a user to the next best choice. But DevOps best practices do more than that. If you add a new project, the code makes it easy to add capacity that matches the rest of your infrastructure. It closely measures how traffic runs across the infrastructure so you can make smart, cost-saving decisions about where to cut back and expand in real-time. The financial benefits of DevOps are another story, but with so many people paying for infrastructure they don’t use, the savings can be massive.
Take that same publishing client. The team was paying to host logs and logs of data, but no one was looking at them — there was too much noise to make smart decisions. We did a little upfront work to get rid of them, and immediately started saving several hundred a month. Not that impressive on it’s own, at least in the short-term. But the next time something went wrong, the simplified logs we set up instead showed us exactly what we needed to know. Without the added noise, we spent less time triaging and stood up a solution quicker — saving money in the moment and improving the user experience.
Bringing a DevOps mindset into your business
By now we hope it’s clear: We are not asking you to adopt radical transparency, flat architecture or any other impressive-sounding, highly regimented tech trend. DevOps is more like Agile thinking. Every company can benefit from it, but they need to adapt it first. We’re an Agile design and development consultancy, but we don’t always work in strict Scrums and two-week sprints. Just like Agile, you can embrace DevOps principles without embracing all of the jargon and rules.
Ideally, everybody would think through DevOps benefits from the beginning by bringing someone who’s actively thinking about infrastructure day-in and day-out into the initial planning meetings. The earlier you start these conversations, the easier they are to have.
They also get more critical as you get bigger. More people, more parts, more security or regulatory requirements — all of these come with more scale. This is where the advantages of DevOps start to compound, as do the opportunities to make big and costly mistakes. Knowing to ask the questions, and ask them early, is all the understanding of DevOps you need to get more of the first and none of the second.