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
Ah, the big black box – the technical interview. You’ve heard about them, but maybe you have never been through one – and it feels like a final exam without a study guide. Let’s take a moment to discuss the different interview scenarios, the best way to prepare, and some ways of answering the “What is your biggest weakness” and the “What questions do you have” scenarios.
Preparation begins long before you submit applications. Start by downloading SQL Server Developer Edition, installing the AdventureWorks database, or the StackOverflow database – or make your own. Then start working on your TSQL. There are a wealth of resources on the internet to help – both free and low cost. Look at RedGate, SQLSkills, Brent Ozar, Kathi Kellenberger, Bert Wagner (to name a few!). If you are confident in your TSQL skills, then work on actual database management. Ensure that you understand the rudiments of backups, restores, RPO and RTO, security and internals. If you can confidently write queries, manage automated backups and restores, properly write and maintain indexing and troubleshoot issues on your practice instance, that is one step toward being able to manage many instances. If any of this is Greek to you, don’t worry – I will cover these later.
Hopefully, you have read up on the company when you submitted your application. You should have a basic understanding of what they do and what they are trying to achieve. That can help you to better understand how you can contribute toward that goal.
But what if I have never worked as a DBA in my life! How can I help them?
I am glad you asked! Yes, you’re green, but that doesn’t mean you have nothing to offer. Consider how you have contributed toward the growth of other places you have worked. Can you show where you went above and beyond to meet the need of past positions you held? If you went to school or boot camp, do you have internship experience you can cite? Maybe you have worked in a related field and have experience with TSQL or SAN management that you can leverage.
You may have gone to college straight out of school. In that case, you may have to think a little more creatively. Did you do any volunteer work or projects with databases? How can you demonstrably show your drive and passion for excelling in this field?
When I was breaking into this profession, I did have a work history – just nothing in the technical field. I had to rely on great personal recommendations and what I could come up with to show my passion and ability to be taught. My capstone project in college revolved around SQL Server (and Access). I ensured that I had mentors to guide me. I bought books and began reading whatever blogs I could get my hands on to prepare myself. I won’t lie; I had to submit a lot of applications before the right opportunity came along. If it had not, I would have bloomed where I was planted and waited for my chance while I continued to teach myself. Whenever I see someone going out of their way from the love for what they want to do, it gets my attention, and I don’t believe I am alone in that observation.
Finally, do you have background experience in the company’s field? For instance, if you have applied to be a DBA at a hospital, do you have clinical experience? If you are applying to work in the financial industry, do you have an understanding of business practices? Especially at small companies, having a DBA who understands not only SQL Server internals, but who can also speak to the business users in language that they can understand may provide an advantage that is of interest to the company.
Before I was hired as a DBA, I submitted an application to write reports for the place where I was presently working. After I got the DBA job, my current employer found out (too late) about my application. They would have hired me for the new position, but my application got lost in the shuffle and wasn’t discovered in time. Why would they have hired me for a technical job that I had no experience doing? I had five years’ worth of knowledge of the company, where I had worked for five years. The business users would have wanted that bridge between the business and the technical. Every little bit helps.
I was once helping to interview candidates for an ETL position. One of my favorite questions was, “Tell me about the most challenging project you ever took ownership of, and how you saw it through.” One of the best answers I ever received was from a candidate who told me that she was assigned a project that included technology she had never seen before. Much of it was proprietary, and there was no documentation to reference. The person who had been previously working on it had left the company some time before. Seeing it through required working long hours of overtime for months. She tracked down the former employee, who agreed to meet with her and answer her questions in order to gain the knowledge she needed.
Needless to say, she stuck it out, completed the project and did it well. She was the one I recommended for the job, and she has excelled at it. Yes, she had technical experience, but it was her drive that made her a standout. Technical knowledge can be taught. Passion and drive cannot.
Do many companies look for (and need!) experienced DBAs? Yes, of course. Finding the company who is willing to teach a new DBA can really be the lottery ticket. You could easily find that you need to start in a related field, forge a relationship with a DBA on site who is willing to teach you, and wait for your big chance. You may have to start at the low end of the salary scale to get your foot in the door and earn your experience. If you are persistent – and lucky – you will arrive at the time where you perk someone’s interest enough to have a chat about giving you your big break. And that is where the interview comes in.
Interview Prep 101
Here is where having a mentor or a friend in the field can be invaluable. At the very least, you want a friend who can fire off some questions (if your friend is non-technical, have the answers ready for them!) and who will be brutally honest with you. Be likeable and relatable – and above all, please don’t be afraid to say, “I don’t know”, especially when you follow it up with an attempt at a solution. An example of this would be, “I don’t have any experience with managing AlwaysOn, so if I were asked to troubleshoot it, I would probably look at Alan Hirt’s blog for guidance, since he is an authority on the subject.” Or if you are not sure whom to look to for answers, you might say: “I am working to better learn about security. I would need to reference Stack Overflow and see if someone else has had that same issue.” No one can possibly know everything about SQL Server, and an interviewer should understand that. However, if they can see the wheels turning toward a resolution, and especially if they can see that you where to look, it will be a plus. Try to fake an answer, and you will be caught. It is frequently a deal-breaker, so don’t do that!
Types of interviews to expect
Technical interviews are usually a multistep process. Understanding the steps involved and their purpose will help you to be better prepared and more confident as you progress through the steps. Here is a brief rundown of what you might encounter.
A phone interview is the basic getting-to-know-you assessment. You may be asked some technical questions, but many times, the purpose of the phone interview is to get an overall picture of where you are professionally, to be questioned about the items on your resume, and to determine how well you would fit in with the team. There may be more than one phone interview, or it could be one conference call where several people address you through the course of the conversation.
The on site interview
An onsite interview lasts anywhere from several hours to several days. You’ll run the gauntlet of peer interviews, meetings with managerial staff, and time with HR. Onsite interviews may take the form of verbal meetings, practical interviews where you may be asked to either diagram pseudocode or to work on an isolated instance of SQL Server to resolve problems you are given, or you may be required to complete online technical assessments. The company will want to confirm the degree of your technical expertise to their satisfaction and determine whether you will be a good fit for their needs. Don’t be surprised if the questions get really difficult – they may be checking the limits of your knowledge. You want to be the calm in the storm, and you want them to love you. However, you also need to like what you see. You will be investing a period of your life with this company – time you won’t get back. Try to get a feel for the culture and the people who are speaking with you.
As to the “What’s your biggest weakness” question. Don’t give a non-answer here. For instance, “Well, I find that I have a difficult time working less than ten hours a day”, or “I’m just too motivated” and answers of that ilk will be likely to earn you an eye roll once the interviewer exists the room. Be honest, but include what you are doing to remedy it. For example: “I have found that troubleshooting error messages has frequently led me down the wrong path, so I have started reading what Paul Randal has written about knee-jerk troubleshooting and am focusing on troubleshooting with wait statistics.” Or: “Isolation levels have been difficult for me to wrap my head around. Kendra Little wrote a blog on them that I am reading right now to better understand them.” If you are new? “I am recently out of school, so I haven’t yet worked in a professional environment. We didn’t cover SQL Server internals in any depth, so I am trying to become proficient at understanding as much of it as possible, as quickly as I can.” Be prepared to answer when they follow up by asking what you are doing to become proficient!
It is important to understand that the entire time you are onsite, whether you are in a formal interview situation or not, you are, in fact, still in an interview. Before I became a DBA, I worked as an assistant to a division director at my company. One small part of my duties involved welcoming the people he interviewed and chatting with them while they were waiting to speak to him, as well as escorting them to other interviews. After the formal interviews finished for the day, he invariably asked me for my impression of the candidates, and those impressions were taken seriously. Given the way some of the candidates spoke to me, it seemed clear that they were blissfully unaware of this reality.
You will most probably be asked what questions you have. This is not the time to say “I don’t know”. Even if you have never worked as a DBA a day in your life, you have questions. Many questions. Some possibilities?
- How many people are on the DBA team? If you are completely inexperienced, being the lone DBA on site is likely to be a baptism by fire – hardly optimal. Not to mention that you will be on call 24/7/365. If you are more experienced, you may want to ensure that the opportunity is commensurate with the increased burden of flying solo.
- How many SQL Server instances are there on site, and what version/edition are they running? You don’t need names of instances here (and shouldn’t get them). Here you want to know how old the versions are and whether they are running Express, Standard or Enterprise. If they are running versions of SQL Server that are no longer supported by Microsoft, your job could get stressful very quickly if something goes wrong. On the other hand, if all your experience is with Developer (which is the free version of Enterprise), you will have to rethink how you do some things with Express or Standard.
- Does the company have server monitoring tools? You may or may not be told what they are using, but it would be nice to know if they have anything, and if so, what you would be expected to work with.
- Does the company have support from Microsoft or any consultants? If not, would they consider that option? I have run into more than one case where consultants saved us a great deal of time and money helping us to solve esoteric problems that none of us had ever seen before. Some of the best consultants have access to information that you won’t have and are worth their weight in gold.
- Does the company have change management? You are hoping that they do – otherwise, deployments may look like the Wild West, and your job might be more interesting than you bargained for.
- How often does the company practice disaster recovery? Practice makes perfect, and you don’t want the first time to be when it’s real. For that matter, do they have a run book that you would have access to once you started? If they don’t, you will look good for having thought of it!
- What are three things that the company would expect of you in the first year to consider your employment a success? (Alternatively, ask: Please define a successful DBA at your organization). Take note of that answer and add it to your goals list.
The second interview
Congratulations, you’re a contender!
The second interview is frequently your final audition. This is when the company takes one last look prior to making the decision. You have met some of the staff and had a chance to get some feel for the company, and whether you might like the people you would be working with. You’ll probably get a run-down of benefits, a few questions, and an offer to ask any other questions you have. Here’s an important one to consider asking:
- It’s important for me to continue to learn and develop my professional skills in order to be able to offer you my best work. What avenues does the company offer for continuing education? (The open-ended phrasing is deliberate here. You want to hear what they are already doing. Above all, you don’t want promises that may be made with the best of intentions, only to fall through at the next budget meeting. Primarily, you are looking for conference attendance at events such as PASS Summit, DevIntersection or SQLSkills classes. If the company’s budget doesn’t allow for travel, you want to see that it encourages access to online classes, O’Reilly, or to curriculum such as that offered by sites like Pluralsight. If they ask what you had in mind, mention the alternatives here and see what kind of reaction you get. You have worked too hard to get this far, only to let your skills stagnate. By phrasing it this way, the company should understand that the process of lifelong learning brings value to them as well. A company that invests in its IT department is, generally speaking, a good place to work.
- Try to determine if the position is “compartmentalized”. How to find this out? Ask what a typical day on the job will look like for you. Larger companies can often have DBAs who just do one or two things. If that form of specialization appeals to you, it could be a good fit. If you need more variety, you need to see if that is available, or perhaps you would be better off looking at a smaller company.
- Is working from home something important to you? Now is a good time to ask.
Once you’ve finished the interview process, take a look at Brent Ozar’s annual salary survey, GlassDoor, and any other resources you can think of that would give salary information for a DBA in your geographic area and of your education and experience. If you are new, be prepared to go in at or toward the bottom of the scale and work your way up. The more competitive salary will come with experience and proof of your value. If you have the experience, this will help you to know if you are being offered a fair salary.
When you consider the offer, think about how your salary and professional growth will look at the company over the coming years. If you want to be a DBA all the days of your life, how far can you grow here? For instance, if a variety of experience is important to you but you think that you will at least be initially compartmentalized in your new position, will you be allowed a chance to do other things down the road? Is there room for promotion? If you are interested in management (which is an entirely different skillset), is there an opportunity for you to do that? With the cost of living increases, will your salary offer allow for a long-term relationship with the company? Try to gain as clear of a picture as possible of what your time with your prospective new company will look like before making your decision. You will be spending most of your waking weekday hours there, after all.
Contract work vs. FTE positions
Some companies prefer to either engage contract workers exclusively or as a “try before you buy” avenue to hiring full-time employees. Contract work frequently pays better, since they don’t have to deal with benefits, although when I did it, insurance was offered. It can be a good way to rack up experience if it is your first foray into the IT field or if you want part-time or full-time work. If it is a contract-to-hire position, it affords you the chance to try before you buy, too. The dream for most is a full-time job. Those jobs can be more difficult to find, but if you have the chance to work at several places, and if you cultivate a good reputation, you may find it helps to land that permanent position. The DBA world is a small one, and word spreads, especially if you are able to be active in your local SQL Server user group, and you may find that as you give, you receive as well.
This is a lot of information to digest, I know. Going into your interview well prepared will do much to show you at your best. It is the moment when preparation meets opportunity. I’ll sprinkle in my best wishes for your success and cross my fingers that the magic happens for you.