Wednesday, May 16, 2007

What makes a GREAT DBA?

It is a hard to imagine a world without databases; databases are behind just about every business I can think of. From banks, to schools, to hospitals, to telephone companies they all depend on databases. And all of these databases require Database Administrators (DBA) to manage them and protect them. DBAs design and create the databases, backup and restore the databases and document what is in them. DBAs play a vital role in all Information Technology teams. As you may be able to tell of all the roles I have played in the 25+ years I have been working in IT being a DBA has been my favorite. Here is my take on what it takes to make a great one.

What makes a great DBA?

  • They know that their uppermost responsibility is database availability, accuracy, security and recoverability. They know for a fact that their databases are backed up and that their recovery procedures are sound, every day all day.
  • They know and accept that another function that is almost as important is creation of accurate documentation, documentation, and more documentation.
  • They are passionate about performing their role but are mindful not too spent more time on a task than it warrants.
  • They are not afraid to say “NO” to anyone but are able to back it up with good, logical reasons. They know and can accept there may be equally or better reasons for the “YES” viewpoint.
  • They are very detail minded but are mindful that there is a practical limit.
  • They have the ability to perceive patterns, in programs, in functions, and in social interactions. And they make use of these perceptions in their processes and interactions.
  • They understand the business as well as the system. And have a good concept of what each should and should not do and can and cannot do.
  • They test the accuracy of what they have designed and documented. Whether it be the backup they made yesterday be restored if needed, to whether the indexing scheme in use is the most efficient for the current situation.
  • They have a strong background in database administration, but know that they do not and cannot know everything. They know where to look and who to talk to if they run across the unknown.
  • They know and use the best available tools, and realize what may be the best tool for one situation is not for another and that the available tools change constantly.
  • They actively work to improve themselves both technically and socially. And have taken steps to implement and ensure progress in both areas. They are well versed with the latest thoughts and theories and they set, track and accomplish their goals.
  • The documentation they produce is detailed enough to provide an accurate picture of the database design and practices but not so detailed that it keeps them from ‘Getting Things Done’.
  • They are passionate about teaching good database administration practices to other team members but realize it takes more time to teach than to do it themselves.
  • They don’t like the unknown and unexpected events and work tirelessly to explain the how and why when they occur, but know to prioritize these investigations with respect to their other duties.
  • They take the time to plan and test their solutions before they implement them, and they document their results before they release them. But are mindful that excess planning, testing and documentation can inhibit their ability to “Get Things Done”.
  • They are patient and understanding of both clients and project members, and demonstrate the ability to enlighten both, with advanced methods and concepts. But realize that their solution is not the only solution or even the best solution. They work together with the both clients and team members to arrive at the best overall solution for the given situation and timeframe.
  • They have the respect of both team members as well as clients and know what to do with it. They recognize and respect the abilities of all their peers and actively work with them to make them their very best.
  • They realize communication between and among themselves, clients and developers is a key element in the successful completion of any project. They take active measures to enhance and insure adequate communication between all participants, without creating excess procedures which limit the team’s ability to “Get Things Done”.
  • They strive to automate as much as their activities as possible, but are mindful that automating an unproven activity is a wasteful effort.
  • They have to ability to think in abstract terms and can visualize designs prior to committing them to paper.
  • They have the ability to see and fill the holes in the project, be it in design, security, documentation or development.

Do you meet most of these expectations? If so you be a good DBA. If you meet all of these you be a great DBA. Have I missed anything, I bet I have. Did I get most of what it takes, I bet I did. If you have something to add, let me know and if you right I’ll add it to the list.

Sphere: Related Content

No comments: