What does DevOps or the Ops team do?

TLDR;

Automate all the things, and stop things going wrong.

Automation:

Create tools and services to automate all aspects of IT and Development infrastructure. Automate the builds of new servers, the monitoring (checking stuff does what it is supposed to do), and any useful tools in between.

Tools:

My team often write tools that allow the building of an entire environment (such as UAT) at the touch of a button. The idea is the developer wants to test some new function or bug fix without effecting the rest of the team. Easy (you might build it locally on your laptop with Vagrant or similar) unless you want to integrate the test with other company systems, such as a back end store which runs the reports, or billing programs for instance.
Fortunately with some other tools that all ready exist, such as AWS API and puppet, our team can create a configuration file (or two) and give you the option of creating your test environment and destroy it afterwards (the cloud flexibility that means you don't pay for what you don't use), at the touch of a button, on the screen.

Monitoring:

Graphs and statistics are important for any server environment to know when you are testing the limits of the capacity. You need to know stuff like disk space used, memory used, requests for data from your app, so you can quickly find where bottlenecks and performance limits may be found. And while these things are monitored for statistics, a couple of extra tools can provide automatic scaling (adding or removing servers from a cluster or load balance group), self healing (build a new server if a previous one dies or crashes) and alerting for when the tool to auto recover isn't written yet and you need an actual engineer to check it out.

If this sounds like something you would like to find more about, contact us here