It is interesting to me the number of paths there are to database administration. I thought my path was pretty typical.
I got my associates degree by the time I was 18, then took a couple of years off from college. While taking those years off, I worked as an accounting clerk. I liked the job well enough, and figured that would be my career. I even took a few accounting classes thinking I’d go back to school for it. But during this time, I met my husband. He was working his way from a receptionist job into an IT job – your basic small-company networking and desktop support. But this was during the dot-com bubble and this company was a bubble company. They sent him to full MCSE training classes, and he got his MCSE on their dime. When we met, we were making about the same amount. In about two years, he had doubled his salary, and I saw how much more dynamic and interesting his work was than mine. We’ve been competing for who makes the most money ever since(I just passed him up again this week with a promotion!).
During this time, the company I was working for implemented a new accounting system. I thought they didn’t do such a great job and that I could learn to do better, and so found a decent bachelor’s degree program where I could major in business related Computer Management Systems, and also concentrate in Database Administration. It was Oracle 8i, but there was an awesome actual administration class, where you learned not the standard database design and SQL, but you learned the detailed physical administration. When I graduated, just as the bubble was bursting, I got a job at IBM. I went in saying I wanted to be a DBA, and joined a large department of DBAs – some of us coming in at the same time did SQL server and some did Oracle, but I ended up in DB2. IBM was decent in the training and it was a good starting salary.
That’s the story of how I became a DBA. But I’ve learned over the years that it’s actually rare to come into a job out of college as a DBA. Most people come into it from other specialties. When I was taking an Oracle class a year or two ago, the instructor asked who came to database administration from systems administration, and who came from development. About half the class came from each – I was the only one who started my technology career in database administration.
It’s still a question I get from other specialties or from more junior developers or engineers from time to time – “How do I become a DBA?”
There is no one path to becoming a DBA, but there is some advice I can give.
Find a Mentor
If you’re already in the IT field, then you probably know a DBA or two at your company. Call them up and ask them. While DBAs have a reputation for being stand-offish and not very patient, a lot of us don’t really fit that reputation. I just love it when someone at my company wants to learn more about databases. I take time for them and love to do what I can to help them figure out if it’s a direction they want to go. Look, the worst they can do is say “NO”.
If you can’t find someone at your company or college, then the next place to look is online. Pick someone who writes about database topics, especially if there’s a specific RDBMS (like DB2) that you’re interested in. Ask them about themselves and how they got where they are. Ask for learning resources and tips. A lot of us love to talk about ourselves. =)
Education is never a bad thing, and there’s a lot of material out there on Databases in general and specific RDBMSes and about SQL. Start with a basic book on what databases are and why they do things they way they do – the type of book they use in a college level course. Learning about databases is an area where a basic foundation can really help.
Create yourself a free DB2 Express-C database (or use other free software from other vendors), and play with it. Maybe come up with a project that requires a database – a website or an application, and figure out how to make that database work – if possible, install the software yourself and figure things out. There are books and plenty of free material to help you in this area.
If you have or can get a job that has some interaction with databases, especially at a smaller company, you may be able to get them to send you to training. There are good college courses too. If you already have some database knowledge, it’s easier to get into a job where you can get more. DBAs tend to be a highly paid specialty, and that means that some companies are willing to take someone with the right background and send them to training, even if that person is at the entry level.
There are a lot of small non-profits and other groups out there who need help with their IT. This might be a good place to find a project to educate yourself with. Even better if it’s a bit larger organization who may have other IT volunteers or even paid staff that you can work with and learn from.
What Skills/Qualities Make a Good DBA?
If a person puts their mind to it, they can do just about anything. But I’ve seen some people who are better at being a DBA and some who are worse at it. In my not-so-humble opinion, there are several skill or qualities that are indicators of success. My short description of a good DBA is a detail-oriented control freak.
- Attention to detail – you’re dealing with a lot of data, and sometimes you really have to deal with the data. Also you need to keep an eye on a lot of details across databases to keep things running. There are an amazing array of details that you should be paying attention to every week for every database.
- Curiosity – A lot of times the DBA is the only DBA a company has, and if you don’t have the curiosity to learn what’s going on outside your field of responsibility, you’re not being the best DBA you can
- Drive to figure things out – again, you may be the only DBA your company has, so that means there isn’t always someone to ask. An unsolved issue is like an itchy wool sweater to me – even if it isn’t causing problems, I want to do something about it
- Self-starter – many times you’re not just charged with knowing how to do things, but what to do. Very few IT generalists are going to tell you do runstats or to find problem SQL – you have to tell them what you need to do. Oddly enough, this can be as true in larger companies as smaller ones.
- Bravery – if you have to figure out what to do, you also have to be willing to stand up to project managers who don’t think you actually have to do those things and don’t want the time in their project for them. You have to convince the alphabet-soup guys why they need to spend money to upgrade software that the end-user doesn’t even see.
So, readers, please share – how did you become a DBA? Any suggestions for those wanting to be DBAs or ideas on what makes a good DBA? I want to hear from you in the comments!