13
votes

I just took a database course in my college and found it fascinating. I want to learn more in this field, but I feel a bit lost with how to start.

How do I become a database administrator? What are some tips and tricks to get into the career field? I see a lot of job postings asking for 5 or more years of experience and am not sure how to start.

Are there entry level jobs I should look for? What kind of skills, traits or certifications would help me out or help me get more experience? I'm mostly interested in MySQL.

3
  • 3
    If you are in college have you spoken to a guidance counselor or even the professor that taught the course about your interest in the field? Would be a good place to start.
    – user507
    Nov 18, 2013 at 4:13
  • 2
    A good question for you to read through that has answers from most of the "regulars" on DBA.SE: Why is Database Administration so hard? dba.stackexchange.com/q/2905/507
    – user507
    Nov 18, 2013 at 4:17
  • Use your networks, any potential internship offerings etc to scout for available jobs, don't be picky about the pay - yet. And focus a lot of effort into self-training, books, courses, developing test scenarios etc. Be active in communities such as this one, or any local communities you know the DBA people where you're from know... in my case I just got lucky and found I was interested in SQL in a project where I got to work with it. Insert a whole lot of work, a bit of passion and a lot of trial and error, and here I am. :)
    – Kahn
    Nov 18, 2013 at 11:09

3 Answers 3

17
votes

I have a feeling that this may be off topic and/or opinion based and may get closed, but I'll answer anyway for now. This is from a Microsoft SQL Server perspective, but it really applies well across the board in my experience. I've been a DBA or a DBA consultant for about 15 years now and I've hired and been on the hiring team for junior, mid-level and senior DBAs. Others may have differing experiences in other answers..

On Certifications

I don't look at them. Especially when I am hiring someone who is relatively new. If you want to use a certification process to properly and effectively study to learn and to find where your gaps in knowledge are - then definitely. If you think the certification will make you hirable in and of itself - it just doesn't typically hold true. But it is a catch-22, some recruiters will ask for those in job requirements. But then so many people just pass low-level certs with brain dumps and a complete lack of testing. When I see a resume with little experience and a lot of certifications, I get nervous.

I guess the takeaway on this topic is: Certifications can help, but they are seldom most important or even top of criteria

On Becoming a DBA

My first question back to someone who wants to become one is why? In fact if you interviewed and told me that you really wanted to become one I'd want to hear why. Most of the best DBAs I know fell into it from development, system administration or other career paths. This does not mean that you won't be successful if you want to be one. I just like to know why.

If it is because you have the right mindset, you like troubleshooting, you like to keep things in order, you like to make sure systems are alive, data is protected and you are drawn to the career field? Then that is great.

What Skills Are Important?

To a new DBA? I want to see you have a proficiency in the basics of being a DBA. You need to know what the most important job is (and back it up with a why and how you will do it). My personal opinion is Recovery - because without the ability to recover you don't have a DBA and how I'd do it - I'd focus on the restore end and work hard at making sure that everything we did had an eye towards a possible restore. The implementation, the testing, the best practices in place, etc.. Now is that the only right answer? I don't know. If you said security and you explained it right, I'd be interested in hearing more.

Basically, though, I want to see that you have the right character traits (below) and the right basic knowledge that you should have at your skill level and experience. Starting out? I want to see that you can backup and restore.. That you can do some basic investigation into current activity. I want to know that you understand some of the basic building blocks of performance (what resources are important and why, how DB Design and development affect things) and have a lot of the character traits I describe below in place or heading there.

Character Traits

I wrote a blog post about this (Six reasons I won't hire you) awhile back. I won't regurgitate everything I said there here- but basically a good DBA is someone who has:

  • Great Troubleshooting skills - if you are a scatter brain and try 65 things to fix one problem and don't even remember 2 of the things you tried - I am going to pass on you if I can root that out. You have to be a calm troubleshooter with a methodology and an ability to discover and work out problems. This isn't just DB problems, but it should be verified in life and any problems one may encounter.
  • willingness/desire to learn and grow - I want you to be always striving to learn the next thing. Spend some of your after work time reading books, going to user groups and community events. It is a tight market out there - I want the people who are continuing to improve themselves.
  • Common Sense - I am starting to think you can't teach this.. Have some before you interview.
  • A little touch of paranoia - you are the DBA or want to be. You are about to manage a lot of important sensitive data. I want to see you be fair and easy to get along with, not arrogant, but I want someone with a bit of paranoia. I want someone who doesn't just trust by default or without verifying. You are asking to have the keys to a database environment that is important.

So How Do you Start?

Entry level jobs. Perhaps getting a job as a developer or general IT admin with some DB skills on the job. Going to community events and user groups and learning and applying yourself. Trying some volunteer or helping gigs with non profits or start ups. Basically get near databases. Work out a career path where you can do something with data.

I started out working as a support rep. Dealing with all sorts of questions, but SQL Server questions were one of the types. I studied hard, became a go to person for tough SQL problems and moved up from there. Then I worked as a Jr. DBA someplace and the rest is history.

Patience

I was just discussing this question with a friend on twitter and they mentioned "you don't get there overnight" - That is great advice. I see a lot of people starting out who want to be the senior DBA right now. So you need a little patience and humility thrown in there.

The first years of a DBA career are learning, figuring out which way you want to go and a lot of support time doing tasks that are basic. While you learn in these tasks and disciplines and prove yourself, more and more tasks will be added and more responsibility granted. If you stick with it, work hard, keep things online, build the right character and grow in your skills continually, you will get to senior DBA and do more fun stuff (well combined with more meetings and time spent with project managers) - but it is a marathon and not a sprint, in the DBA world.

These answers are opinions, and that is why this whole thread not survive, but if it helps you out - copy and paste it and give some of the advice a whirl. Best of luck!

3
  • 2
    About certifications though, a big part of why they're useful is because consulting companies may sell their resources to their customers based on their certifications. Some companies more than others, and some almost exclusively so. Certifications are a way to encourage your employer to give you projects based on those certifications. This is especially true with SQL Server for instance. For a relative newbie like myself, they're also a good tool to direct my learning towards things that matter, from ground up.
    – Kahn
    Nov 18, 2013 at 11:17
  • 2
    @Kahn The certification syllabuses are good for directing learning, but beware of material that supports 'shiny new heavily-marketed feature' rather than stuff that you'll actually use. Nov 18, 2013 at 15:28
  • 1
    Yeah, I suppose this too boils down to the "why" rather than "what" - as mentioned in Mike's post up above -, which I'm inclined to agree with. Certifications for the sake of getting certified are pointless. But doing so because of concrete, very real benefits which you recognize and strive for is another matter entirely. :)
    – Kahn
    Nov 19, 2013 at 7:27
6
votes

The other answer is great but I wanted to add to one piece: the nonprofit route. I got my start as a basic tech in a nonprofit. Being a nonprofit, we all had to learn to cover all roles. Eventually projects came up that the agency needed that demanded database skills no one else had or wanted to devote the time to develop. I took advantage of the opportunity and am now in a great position with a startup that is challenging and engaging.

Most importantly: Be willing to learn. Be open to possibilities. You never know where you will be, but if you are willing and able to learn, you will find a rewarding career.

0
0
votes

Do you have a WordPress blog? You can practice basic DBA skills even if all you have is a small MySQL installation to store your posts and cat pictures. Learn how to backup and restore a WordPress site using tools like mysqldump and phpMyAdmin.

WordPress will only teach you the basics. A single blog database is too simple to need full-time DBA attention.

If you want to learn finer skills, you'll need to work with more complex databases. Big companies and organizations hire a team of people to manage their complex data sets. The best way to learn how they do it is to work with them.

Join a team in a junior position and find a good mentor who can pass on knowledge on the job.

Brent Ozar is a prominent SQL Server DBA. In his 2009 article How to Get a Junior DBA Job - Part 1, he compares the types of people who go for the junior DBA roles:

The few available junior DBA positions attract a few kinds of candidates:

  • Developers with a year or more of SQL Server programming experience who’ve decided they want to focus on SQL Server instead of development.
  • Windows administrators with a year or more of Windows experience who also want to switch their focus.
  • SQL Server DBAs who’ve been let go, and they’re desperate
  • College grads or training grads with no experience.

If you’re in that last category, I gotta be honest: you’re screwed. Go get a job as a junior developer or a junior Windows admin first, and then work your way into database administration. There is no classroom training that’s going to convince a company to hand over the keys to their data on your first day in the office. You may see ads for certification programs that promise to make you DBA-ready within a week for a few thousand dollars. It won’t get you the job – at least, not when you compare yourself to the competition. After you’ve gotten started in a development or sysadmin position working around SQL Server, come back here and continue reading about how to take it to the next level.

As he says, you might find it easier to first get a job where you work occasionally with a database system (data entry operator, analyst), but aren't actually responsible for it. It's easier to move to an administrative role when you have some basic practical experience.

Not the answer you're looking for? Browse other questions tagged or ask your own question.