The series so far:
- DBA in training: So, you want to be a DBA...
- DBA in training: Preparing for interviews
- DBA in training: Know your environment(s)
- DBA in training: Security
- DBA in training: Backups, SLAs, and restore strategies
- DBA in training: Know your server’s limits
- DBA in training: SQL Server under the hood
- DBA in training: SQL Server high availability options
When did you begin to think that you might want to be a database administrator? Maybe you worked in another arena of IT and found the work of a DBA interesting. Perhaps you heard someone talking about it in a boot camp and wanted to find out more. Maybe you know you want to work with SQL Server, and being a DBA sounds interesting, but you are not sure what a DBA actually does, much less how to prepare to be one. I’m here to help!
For me, the ZOMgoshThisIsWhatIWannaDo moment came when I was in college. I had returned to school to finish off a long unfinished bachelor’s degree in the medical field. I originally thought to stay in my chosen profession, but I took one Informatics course and fell in love. I had a conversation with a counselor about my aptitude and possible career paths I could pursue, and just like that, I changed my major from a profession in the medical field to Computer Science Technology. Of course, part of the graduation requirements was to take a couple of database classes. A former DBA taught both classes. One focused on beginning TSQL and database administration, and the other focused on data warehousing.
Most of the other students I was in classes with had many years of real-world IT experience; the degree was a formality for them. A couple of them could have taught the classes we were taking. By contrast, I had absolutely no IT background. I had just finished my first programming course, where I had mastered
Console.WriteLine(“Hello World”);. I had never even touched an Access database, let alone SQL Server. I was morally certain that this would be the most difficult class I would ever take. I would be lucky to pass. It was terrifying.
To my surprise, when the professor began to teach, I found that everything made sense to me. I thought that I could do this – and love it. At the end of that first class, I knew that I wanted to be a DBA. I asked my professor how to make that happen. He kindly offered to mentor me, while I started learning everything I could about SQL Server, TSQL and database administration on my own. He introduced me to people who helped me, who gave me advice, and when I thanked them, one of them told me, “One day, you’ll be in my position. Pay it forward.”
So this is me, paying it forward to you. Let’s talk about what database administrators do, ways to pursue that goal, and their pros and cons.
What Does a DBA Do, Anyway?
What does a DBA do (besides “work with databases”)?
Have you ever asked that question? You may have found (as I did) that the answers are as varied as the number of people you ask. That is because it’s a big question, with several possible answers. Many DBAs specialize in one thing or another. Some love performance tuning, while others excel at hardware or server migration. Still, others gravitate to areas like high availability, development, or security.
Here is mine: At its simplest definition, whatever road your career takes you to, DBAs are the guardians and facilitators of the company’s data. In other words, at the very least, your job is to ensure that the right data gets to the right person, as quickly as possible.
This is no small responsibility! Think for a moment about what the company’s most valuable asset is. Its building? Its money? Its contacts? Nope. The company’s most valuable asset is its data. If the data is wrong or missing, watch how quickly those other things take wings and fly. Paul Randal of SQL Skills tells the story of the unfortunate bank who had a corrupted database (which had been further plagued with an inefficient backup/restore strategy). Miraculously, all the data was restored. The bad news is that the restore process ended up taking 3 days, during which time the bank lost the confidence of its customers. The bank ultimately wound up closing.
That story wasn’t told to scare you (although to be honest, it scares me every time I think about it). I told you the story because it underlies a crucial point. As a DBA, where the data is concerned, you are the line in the sand. What you do makes all the difference to the company you work for. You are the protector of that data, and you are the one who ensures that it is ready for whoever should have it.
Having that mindset means that you will view everything with new eyes. You will read – and write – code differently. Developers write code to retrieve data for the business. You will write it with an added vantage point of How do I get this data without setting my server(s) on fire? You will think about security differently. When a vendor says the service account needs sysadmin privileges (or a business user does), you will understand that really means that account or person can totally mess up your entire server – not just the database that they are supposed to be able to access. When the Infrastructure person swears that they don’t understand your latency issues — nothing bad is happening on the servers and IO is fine — you will understand there may be a bottleneck between the OS and SQL Server that is, in fact, not fine. When your CTO wants a SQL Server instance, but there are budgetary constraints as to what they can spend for their business needs, you will be able to present options in order to provide the best fit.
Does this sound challenging? It is. You will never be bored. You will be learning for the rest of your life. If that sounds good to you, let’s talk about pathways you can take to reach your goal. Later articles will l discuss all the basics from backups to security to internals. By the time you’re done, you will be better prepared to decide what aspect of database administration you want to specialize in and how to get there.
I hope you enjoy this guide. And I welcome you to the ranks.
The good news is the SQL community is one of the friendliest, most helpful IT communities out there. There is a wealth of resources to help get you up to speed. The bad news is that database administration can be difficult to break into. You’ll find that most companies want experience. It can be a lot like actors and SAG cards – it’s extremely difficult for an actor to work without a SAG card, yet they must show experience to get one. It can be hard to get that first break – but not impossible! Here are a few different avenues of achieving your dream.
- You will probably be exposed to a multitude of IT arenas, which can widen the scope of your understanding when you enter the field.
- Some employers view the Bachelor’s degree as a plus – you have proven that you can be taught and deliver a professional grade product.
- Completion of a four-year program shows the degree of your commitment and the quality of your work ethic.
- You may be able to score an internship that will allow you to gain actual experience toward getting a paying job.
- You will get a surface-level exposure to so many of the aspects of IT, but you may not get much depth on any of them. I have mentored and spoken to university students who were taught outdated syntax, and who hadn’t progressed beyond simple JOIN statements in school.
- Attending university for a job like this is a gamble. The student loan debt is considerable. You will need to be hired quickly after graduation to have the best chance of a good job, or prospective employers may wonder why you weren’t snatched up already. The longer you go without being hired, the more outdated your education becomes. Your chances of being hired as a DBA right out of school are low, so you need to be prepared to look at jobs that will allow you to work over into the field – or to break in at all. The quality of education does improve at the post-grad level, and of course, all of this information is contingent on the school you attend.
- Hands-on education. This is a big plus. I know of employers who are more likely to give a job offer to a technical school graduate for that reason – they are more likely to hire someone that can be brought up to speed faster.
- Technical schools frequently use certifications as part of their program. They are completed in less time than a university and with far less expense.
- Credits may not transfer to a college/university, should you decide to further your education.
Code Boot Camp
- An intensive, hands-on experience geared to bring you up to professional-grade quickly. Classes are frequently held in the evenings, making it an ideal choice for people seeking to change professions. In the better programs, you will be mentored by someone who is already working and established in the profession and provided with internship opportunities.
- Program lengths vary between 1-2 years, depending on your proficiency.
- Often offered for little or no cost.
- There is no accreditation process and little oversight, so it will be up to you to do the homework before you enroll. I have seen boot camps “guarantee” their students a job, collect hundreds of dollars, and while the students may have some skills after completion, there is no “guaranteed” job to show for it. Look for well-established and vetted programs like LaunchCode or TechHire (if you live in the US), who partner with local corporations to provide students with internship opportunities. If LaunchCode isn’t in your area, look it up and use it as the yardstick if you need to stay and train in your immediate geographic location.
- Career crossover is perhaps the most frequent path to database administration, and it can be invaluable. You begin in a field that holds your interest, such as being a developer or working in infrastructure or SAN administration and find someone willing to teach you. You leverage your existing experience to work over to database administration. Along the way, you gain background knowledge in TSQL or Windows internals that will serve you well in your new career. Best of all? You don’t pay a fee to do it.
- You may get “stuck” in your position and find it difficult to cross over.
- You may have difficulty finding a mentor to help you.
- It will likely take at least two years (if not more) to make that crossover.
Blogs/Online Resources/User Groups/Conferences
- There are a wealth of blogs out there to help you widen your understanding – for free!
- Not free, but frequently less expensive than a university or technical school, are online courses such as PluralSight. Consulting groups such as SQLSkills and Brent Ozar offer some great online instruction as well. They are more expensive (ranging from $1000+). I have taken courses from all the resources I have mentioned here and cannot speak highly enough of their quality.
Consider joining your local SQL Server user group – even if you are not working yet, and some of it sounds like a foreign language. Get as involved as you are able to. You never know; you may find your mentor here! There are free or very low-cost online and onsite conferences such as SQLSaturday or EightKB that will help you to continue your learning. The onsite conferences allow you to network as well.
- Most of these resources typically work better for the crossover/accidental DBA than for someone preparing to enter the field. However, I still recommend reading as many blogs as you can. In fact, “Whose blogs do you read?” has been a common interview question I ask. It isn’t a deal-breaker if the candidate can’t rattle off a bunch of names, but it is a plus if they know a couple. To me, it shows a level of interest and a passion that can be a sign of a potentially great hire! The people who write these blogs have something to teach, and they are offering their experience freely. You’ll quickly figure out the best ones. Start with the blogs written by Microsoft MVPs or MCMs, and the more you read, the more you will branch out and find others.
As you have probably concluded by now, there are pros and cons to every pathway leading to database administration. Still, every one of them is an opportunity, and there is nothing to say that you need to take just one; you may well decide to combine some of these.
Did all that work pay off?
After reading all of that, you may be wondering: how did it turn out for me?
I took the university/mentorship path, and I read as many blogs and books as I could before I started looking for work. My mentor introduced me to people who gave me advice, which was much needed because I hardly knew where to begin. So, I have a degree. Do I pay to get certifications? (Answer: No. Concentrate on getting hired. Then you can think about certifications if you want.) Remember, backups are your firstpriority and other things like that.
I started applying for jobs in my last semester of school. An internship wasn’t a viable option for me as I had a child to support, or I would have jumped at it. I applied for DBA jobs, and I applied for jobs that I hoped would let me work over to becoming a DBA. I had my first technical interview and bombed it. I was so discouraged at how much I had to learn! I applied to another company to do report writing. I applied for developer jobs, and I applied for help desk jobs – anything that would get my foot in the door. I applied at so many companies that I have since lost track.
I interviewed at yet another company to be a developer and quickly saw that the degree of experience they needed was not something that I could provide. Not wanting to waste their time, I told them how much I had enjoyed talking to them, but it seemed clear that they needed someone with much more experience than I had. They (of course) very kindly agreed. I wished them well in finding the right fit. I hung up and started scaring myself about doing all this work to get a degree, which might soon go to waste if I couldn’t find a position.
Then, a week or so later, I heard from the recruiter who had set up the developer interview. He acknowledged that I wasn’t a fit for a developer, but said the interviewers had very much enjoyed speaking with me and wondered: would I consider speaking to the DBAs about possibly joining their team?
Cue the sunbeam shining through the clouds to a backdrop of Beethoven’s Ode to Joy. Would I?
I was incredibly fortunate to have that very rare opportunity to start as a DBA right out of school. I had two fantastic teachers, who came at teaching SQL Server from very different vantage points. One was very “wax-on, wax-off” in his approach, and then would take you deeper. The other began in the weeds and then scoped out. Between the two of them, I received a real education. I learned more in three months of work than I did from three years of university attendance. I worked with SSMS, SSRS, SSIS, TSQL, and did deployments, query optimization, and troubleshooting. To say that my brain hurt was an understatement, but I loved what I did. I love it still.
Since getting that first DBA job, I have had the chance to work with DBAs who took other paths: I have worked with crossover DBAs and those who did the boot camp route. They are all outstanding at what they do. In the end, getting the job takes resourcefulness, an ability to think creatively, persistence – and luck. When all those factors come together and you begin to work, what you make of your career is up to you.