Essential Skills for DBAs

I quite often get asked, 'Sean, since you're such an industry leading expert, what skills do you think a DBA should have?' Well, that's actually something that's close to my heart. The answer is yes. There are so many skills that make up a good DBA it's hard to know where to start. I think a good place to start is outside the typical DBA skillset. I think every DBA should have web programming skills. This is wit

I quite often get asked, 'Sean, since you're such an industry leading expert, what skills do you think a DBA should have?'

Well, that's actually something that's close to my heart. The answer is yes. There are so many skills that make up a good DBA it's hard to know where to start.

I think a good place to start is outside the typical DBA skillset. I think every DBA should have web programming skills. This is without a doubt one of the more useful outside skills to have because almost anything you do as a DBA would be done better if you posted it to the web. We also seem to be called on to do all kinds of things that have nothing to do with DBs. You should not only know basic HTML, but you should also know ASP in either VBScript or JavaScript (both is better). You'll find these skills so incredibly useful in your daily work and you'll wonder how you ever go by without it.

Another excellent skill to have is some kind of compiled language. Even if you never plan to be a programmer past anything SQL related, you still need to know something about programming in one of the compiled languages. This is essential because these programs are what's hitting your DB and you need to know what they can do and how they behave. It's no longer acceptable to be a DBA in a vacuum and not know anything outside of SQL.

The same goes with networking and Windows. These are essential skills for DBAs because we're quite often the first ones who get called when there's a problem with an app. Since nobody really knows anything about SQL, they always figure it's the DB causing the problem, when quite often it isn't. But you're going to have to have numbers when you kick it back to the Windows guys. It's one thing to say, I can connect to the DB just fine, and another to say, I've run nslookup on it and it's a DNS problem.

All of these extra skills also give you knowledge of the grand scheme of things so you know what questions to ask. If you had no idea of anything Windows or networking, then you'd never know to ask the user if they were connecting with the FQDN or not. these are things you do to find out if it's even your problem or not. Because the first thing the Windows guys are going to ask you is how do you know it's not the DB. And you'll need to be able to say, because he can connect using the IP, but not the FQDN.

These are just a couple skills I think good DBAs should have to do their jobs. But I really think it's necessary because as I've said before, we're really expected to know more than everyone else. I've even been called on to do Exchange before. After all, I am the DBA, I must know Exchange too, right?

And with WinFS coming in the future, I think DBAs are going to be the next gods of the industry. We'll automatically have a say in Windows desktop rollouts, server builds, etc that we've never had before. Exchange is the same thing. Eventually Exchange is going to be SQL-based, and the Exchange admins will do what we say. It's a good position to be in. Maybe then companies will start taking DBs seriously for a change.

Related: