Still, the question remains: how should we advise a young person wondering whether to become an Oracle DBA? Obviously being an Oracle practioner has done well by me and many of the readers of this blog. It's been my prime focus of work for thirteen years, and there's still some juice in it yet. For most of that time I have been a developer, designer and latterly architect but my time spent doing DBA work has undoubtedly informed my knowledge of Oracle. It is good for everybody who builds Oracle systems to understand the database from the perspective of a DBA, because in production the application is only going to run as well as the database permits.
Whilst I was pondering this question someone else pops up, asking how they get job as a DBA. I do find this desire to become a DBA slightly puzzling. The work, particularly in production, is generally dull except when it gets exciting, and that's when you remember that "May you live in interesting times!" is a Chinese curse. Being a DBA requires you to know the purpose of 257 parameters, 266 V$ views, 415 DBA% views, let's not forget the the X$ views... There's dry stuff like sizing redo logs, taking backups, applying patches, running installation scripts written by developers who haven't tested them, etc, etc. What precisely is the allure?
Partly it's the mystique of being in the know. The DBA is the gatekeeper, the person with the authority to run your code in production, the one who can tell you why your code is running like a three-legged dog in a vat of cold treacle, the person who laughs when you ask them to make the USERS tablespace bigger because you keep getting this ORA-1555 error. Knowing the SYSDBA password is the database equivalent of the sysadmin's
got root?T-shirt. In fact, the DBAs and the sysadmins tend to inhabit the same room (and indeed are quite often the same people) but it is easier for a SQL developer to move into being a DBA than it is to become a *nix administrator.
Also, being a DBA is a glamorous job. It's not really of course, but most of the luminaries of the Oracle technical world are (or seem capable of being) DBAs: Tom Kyte, Jonathon Lewis, Connor MacDonald, Cary Milsap, Mogens Noegaard, the list goes on. But how many App Server gurus can you name? If you're developer, who is there to look up to? Steven Feuerstein and, er, that's it. (I know if you're into Java you could cite Steve Muench and Duncan Mills, but Java with Oracle is a distraction.)
So everybody wants to be a DBA because it's all about the data(base). Does that mean a person leaving university should try to become an Oracle DBA? Almost certainly not. There's a reeason why most DBAs are gnarled, bearded men: we need experience as well as knowledge before we are ready to become a DBA. It's just not a role for a neophyte. Besides, with the increasing commodisation of databases the role of the DBA is going to decrease in importance and sustained interest for the majority of people. Not to mention considerations of whether Oracle is a legacy technology.
If long term career prospects are the main concern I think a fresh graduate with a technical bent should get into networks: database, platforms, operating systems will come and go but everything about computing in the foreseeable future will still require networks. And with the rise of wireless the amount of time spent crawling under desks should be greatly reduced. If salary is their main driver then a graduate should seek to get into management, which mainly requires shedding all their technical knowledge as soon as possible.
However, we all spend the majority of the day, most days of our life at work so it is important to do something that continually engages us. There's no doubt that most Oracle roles are capable of offering stimulating work alongside the humdrum. How much time we spend doing the latter over the former is a measure of our talent. Good people understand the need to do the tedious stuff in order to get the interesting work right, so do it well and quickly; the very best know how to spin the dross into gold.
But for a job that's interesting day after day, that's full of surprise, delight and moments of wonder, that's always worthwhile despite all the poop it entails? Well, there's only parenthood. Nothing else comes close. Still, maybe not the thing to do right after graduation (unless gowns and mortarboards make you hot).