"When I was younger, I dreamt of being an astronaut…"
"When I was younger, I dreamt of being a doctor …"
"When I was younger, I dreamt of being a DBA…"
Eh? What was that last one again? No, you didn't, at least I know I didn't (I always wanted to be a lumberjack). Perhaps you dreamt of creating a new piece of software to help you manage your Lego collection, do your homework, or make the clock run faster in Algebra class. I doubt any kid in 3rd grade, or even college, was or is thinking about administering data, doing backups in a manner safe for customer personal information, and certainly not attending meetings to negotiate disk drive storage. If you did dream of building a Lego management system, I expect your dreams were more along the lines of what the interface would look like, not the impact of the third normal form on the database you would need to support it.
Very few of us dreamt of being a DBA, despite the fact that, according to US News, it's a top career choice, ranking #12 in their 100 best jobs article. Even fewer dream of being a mediocre DBA, although sadly it is an all-too-common destination.
I've encountered DBAs who seemed ill equipped to administer a home grocery list and checkbook, much less their corporate equivalents. Despite the ridiculous amount of free education available to them, they lack the basic skills of their trade, stumbling through each day, barely understanding what they are doing, and just praying for no crashes, because the database backups are failing and they can't figure out why.
For most of us this is an exaggeration, but why doesn't anyone dream of database administrating? Well, I believe the answer is that in many ways, a DBA's job is boring, and sometimes mind-numbingly so. This is particularly true when viewed from the outside world, since unless you are a DBA, every database looks exactly alike. BACKUP DATABASE BLAH
BLAH
… S
ELECT
this, that
FROM something JOIN
SomethingElse
ON
…Zzzzzzzz.
In a job that is, for the most part, worthy-but-dull, rather than the stuff of dreams, how does one avoid being lulled into mediocrity? Ideally, you're a DBA for an organization that produces or supports an inspiring end product, in which case it's easy. If your database manages a theme park ride, you know that every rider has you to thank that for a shorter waiting time, because you optimized the queries and adapted the database to the changing crowd load.
Getting to share in the sense of satisfaction a customer feels using your database can actually become a great feeling. When they receive prompt delivery of the product for which they just paid, it is due in part to the highly efficient database behind the ordering system. You made that happen, despite the poor code and weak hardware bestowed begrudgingly after that 10 hour meeting. Realizing your part in the process, and remembering its ultimate impact, will give you the strength you need to write yet another data fix caused by the programming skills of the cheapest contractor that money could buy.
Even though we probably didn't start out dreaming of being a DBA, it's a great place to be even though sometimes it is easy to forget. By nurturing small dreams, each day, we can elevate the drudgery of a seemingly banal task into a celebration of purpose. Or, if you work for a horrible evil organization in whose product you don't believe, try dreaming of bunnies. Bunnies make almost anything better.
Louis Davidson (Guest Editor)