What do cats and automation have in common?
James Mudie, our DevOps engineer talks about automation, containerisation and cats and explains what a DevOps engineer does to future-proof client systems and ensure their websites are scalable and elastic.
I think about automation a lot
Automation is something I think about a lot – whether I’m at home or at work in my role as a DevOps Engineer at Symbiote.
Why do we automate anything? And how is automation related to cats?
We automate things when we’re driven by a desire to do repetitive tasks faster, usually with less effort, while reducing the chances of messing them up. Sometimes we just need something specific to happen without a person being involved.
For example, when one of my cats needed to be on a different diet for his allergies (don’t ask!) and he definitely couldn't be allowed to keep up his bad habit of stealing our other cat’s more delicious food, automation was the answer. The automated cat feeder I set up only opens for the cat whose microchip has been programmed in. That annoyed the cat who preferred eating the non-special diet, but it was for his own good. He got the food he needed at the times of day we decided, whether we were home or not. And the other cat no longer had his food stolen, so he was happy.
I’ve also automated my home heating system to respond to sensors in the backyard that detect temperature, humidity, wind speed and rain and adjusts our living environment accordingly.
Those are simple examples. The kinds of automation I build at work are significantly more complex. Unlike with the automated cat feeder, you often can’t see the results of my efforts. In fact, if I do my job really well as a DevOps engineer, our client systems work beautifully and any disruptions are managed seamlessly by all of the automations we’ve set up.
In some ways, being a DevOps engineer is a bit like being a concierge in a hotel – I need to keep an eye on all the moving parts of a project, pre-empt problems and jump in to fix things.
I'm always thinking about future-proofing
At work my brain spends time in the present, focussing on solving current problems and finding ways for client projects to run more smoothly, and also in the future, considering scenarios for a range of potential problems and designing automated responses to those.
At Symbiote I focus on trying to future-proof our clients by looking for secure ways to keep all their systems running, protect their data and maximise the ability of their website to keep running even if a monarch dies and hundreds of thousands of people suddenly visit a page trying to find out the date of the public day of mourning. I’m also called on when we’re designing new solutions to help work out how to reduce costs, reduce the time it takes to build or upgrade systems, keep everything working efficiently in different conditions, repel attacks and recover from any failures.
Containerisation improves a range of things in software deployment
Currently we’re working behind the scenes to uplift the technology of large clients who have a range of legacy systems and websites built using older tech. We’re creating consistency across their systems so they can keep their data safe while enjoying all the benefits of deployment through technology called containerisation. Containers let programmers launch or update sites, or add new features seamlessly, in a fraction of the time it used to take. Customers can be upgraded to safer platforms without any downtime, giving their users or customers all the perks of a more responsive site. I also design automations that vastly improve the security of all customer systems, running scans and letting the right people in and the wrong people out.
I'm always thinking about automation
This is the kind of role where I am always learning. Since I love thinking about automation, including home automation, and I work from home, you could say I happily take my work home with me.