Ran into this question on programmers.stackexchange.com. This is great, I had been wondering the same myself 🙂
What do DBAs do?
Yes, I know they administrate databases.
I asked this question because I’d like to get a further insight into the kind of day-to-day duties a DBA might perform, and the real-world business problems they solve.
- I optimized a ‘products’ query so that it ran 25% faster, which made the overall application faster.
Is this a typical duty? Or is there more to being a DBA than simply making things faster?
In what situations does DBA work involve planning and creativity?
And the most comprehensive answer:
Well, they administer databases. Hah! Just kidding. It’s more glamorous than all that.
They take care of all the muck that would bring the common developer to tears.
They perform all necessary backups and restores.
They schedule tasks to rebuild indexes and materialized views.
They move data around when people need it. Need the data from production in your QA environment? A DBA can do that for you.
They apply security roles and monitor database object access.
They work with database vendors to be sure your company is up-to-date with the latest and greatest tools. If you need to legally archive sensitive data, they might help you set up a triggering solution.
They’ll tune and optimize, like you mention.
They troubleshoot performance in different runtimes.
They build fail-over and disaster recovery plans.
Some of them are good dancers.
Most pay less in taxes than the average person making their salary.
They research new data management tools ala NoSQL.
Some are hobbyist pilots.
They setup and monitor database maintenance jobs.They know when to partition data and when not to.
This is great, it starts to make me think about what I want from a job. Right now I am a bit of a blank canvas, but by the end of the year I reckon I will be more like an artist’s first pencil sketch – I will have some familiarity with database design, relational dbs and a few dbms, but more than anything I am hungry to learn more!
So I guess that would be my interview question:
right now I am a blank canvas but am hungry to grow and build some real expertise, can you describe what skillsets I will be required to develop over the next 1 – 3 years? What is the typical growth curve for a DBA working here?
Might be a bit early to be thinking about work, still got another 6 months (at least) to battle through. But, it is my motivation for being here after all 🙂