Yesterday I talked about proper planning so your team is aware and able to respond if something happens to your systems while you’re away – this lets you actually *be* away, whether it’s for sleep or vacation.
There is one other thing though that is a huge part of successful management of your servers and your time. They don’t have to be mutually exclusive and, frankly, these days they sure shouldn’t be, especially on an ongoing basis.
From Scott: "Good post, but I think you missed an important first step: designing the system to not break down that often in the first place. I have always put that as a first design/development priority, secretly musing that it was due to a lazy streak–I don’t like working on a Saturday three weeks before Christmas, cutting a vacation short, leaving a concert in the middle, etc. In the past I felt I was ahead of my time, focusing on quality (or was I behind the curve given the rise of gunslinging software contracting?) but I think troublesome apps that must be babysat are going out of fashion, along with 24-hour operators, unlimited IT budgets, and "casual" apps that run from servers under people’s desks.
There are still things that can happen, especially for a 24-hour app, so you still need on-call hours, but I haven’t been called at home in a year or more."
Excellent point.
Your first priority simply MUST be to get your systems on a reliable footing and not have a call in the middle of the night to be standard procedure. You need to build out systems that are tolerant, that are well architected and that are using software that provides the kinds of support for your systems that you need.
All of that seems like a "no kidding" kind of moment, but you would be surprised how many people focus on the bandaging of systems rather than the creation of a solid environment that under-pins the entire thing, providing for great functionality and performance.
Thanks for the reminder, Scott!
What do you think? Let me know what we’re missing! Email: swynk@sswug.org