30 Apr Junior DBA Interview Questions
I’ve written earlier posts regarding how to do a job search as well as the interview itself. If you have done all that work to get yourself an interview, you should know what types of questions you may be asked, right? And if you are doing the interview you should have an idea of what to ask someone with little to no practical DBA experience.
Before we go any further let me make one thing clear. Yes, this is exactly like dating. You should know that by now. But since I have already explained that to you once, I won’t be doing that again. Instead, we will take a different approach, and give you the top questions you should be asking potential new Junior DBA’s.
Oh, who am I kidding? Of course I will continue the dating theme. So, here are my top junior DBA interview questions. Are these the best interview questions? Probably not, you really need to tailor your set of questions for your own shop, but these can hopefully set you on the right path. If you keep in mind that you are looking for someone that you can work closely with, and mentor, then the conversation you have should flow naturally during the interview. So, here are the best interview questions, in no particular order.
What is a database?
Let’s start with the basics. This would be like asking your date “so, what do you do for work?” While it may seem silly to ask this question keep one thing in mind: there are no silly interview questions. No matter how ridiculous a question may seem to both the person asking it and the person responding, they will always serve a purpose. In this case you may find the candidate talking about MS Access, or Filemaker, or whatever they have been exposed to previously. Let their response be an indication of their fundamental knowledge of some RDBMS system. See if they can explain the difference between a data and a log file, for example.
How do people connect to a database?
This is about the same as asking them “where do you usually go to meet up with others?” What you want here is to gauge if the candidate knows the basic difference between Windows Authentication and SQL logins. Perhaps they do, in which case you might want to see if they understand connection strings, or how different apps might try to connect to a database, or even some basics of ODBC connectivity. You are not looking for a expert, but you do want someone to understand that different people and applications have different connectivity needs. or, at the very least, someone you can train to understand the differences.
Who is the most important user of a database?
This can be considered identical to the line “seen any good movies lately?” What you want here is to get an understanding if they candidate knows who the stars are. And who are the stars? Well, everyone. That’s right. Every connection to a database server is as important as any other. What’s that? You say it is only a development server, so it is not that important? Well, a development server is considered a production server to a developer. In other words, every person and every connection is important, no matter if they sit in the corner office or not. If the candidate lists out only a handful of people or groups as important and fails to understand that everyone is important, consider that a red flag.
Are you active in any social networks? Do you blog?
It should be clear that this is the same as asking them “are you seeing anyone?” What you want to find out here is if the candidate is sexually active in the community in some way. Why? Well, it’s simple. You need to know if they are amenable to working with others, either getting help or giving help. As a DBA you will often need to work with a wide range of people, sometimes they will need your help, sometimes you will need theirs. If they are not used to interacting with others then you may have an issue should they join your team and continue to work in a silo. So, unlike a real date, here you are looking for someone that admits to spending time with others.
What’s your best way to relieve stress?
A very standard question in any interview and similar to “what do you like to do for fun?” Really this question is best for helping to foster a non-work related conversation. If you cannot talk to someone about their life outside of work, then you either should not hire them or not be the one giving the interview. You simply must be able to converse with your coworkers from time to time about non-work related items. It is the best way to really get to know someone and develop a solid professional working relationship. If the candidate says they do not do anything to relieve stress then either they are nervous, cannot focus, or are lying. Everyone has stress to some degree. Recognizing the signs of stress and knowing how to deal with it is a necessary step in any professional career.
Which is faster: Inserting one million rows of data, or updating one million rows of data?
This could be one of the more technical questions you could ask a candidate and it equates to asking them “what kind of car do you drive?” You are not looking for the correct answer, which is “it depends”. If they do answer correctly then examine the scenarios they lay out before you. It could be very insightful, you could get a real sense for how they think. Chances are they will guess at one or the other, which gives you the chance to explain something to them. And when you do so take the opportunity to see how the discussion goes. If they ask you lots of questions, that is a very good sign. If they just sit there, listen to your every word, accept everything you say as the truth, then consider that another red flag. No one is perfect, not even you, and you do not want to surround yourself with someone that just follows your every word, you need someone that is insightful enough to ask you more questions, someone that is always looking to learn.
If I asked you to learn how to make a query faster, where would you go?
This is not necessarily a question you would find on a date, it is more about the hidden signals your potential partner is giving you. Does the candidate look like a person that tries to take care of themselves? Do they show some ambition? Do they read any web sites with regularity? Have they ever opened a user manual, or the BOL? Who do they consider to be an expert? In short, how would they start to look for answers when you are not around?
Have you ever built your own computer?
The question that comes to mind here is not really something that you would ask on a date (think Weird Science). What you are looking for in their response is an indication of their passions. Do they have a passion for building things? Solving puzzles? Do they know the difference between a network card and a hard drive? Do they know what RAM is? Have they ever taken apart their computer to add in RAM, or a network card, etc. You want someone that is familiar with computers, so they should demonstrate a passion for something technical in some way. It may not be hardware, it could be software, but it should be something otherwise you might as well hire a bump on a log.
What motivates you?
I like this question much more than “what do you want to be doing a few years from now?” Everyone should want to be successful, to aspire to be more, so asking them what they want to be doing is only going to give you the same bland answer from one candidate to the next. However, ask them about their motivations and you will gain some valuable insight into their character. Some people are motivated by money. Some are motivated to help others. Some are motivated to be a success because of external pressures, like their family. Whatever the reason may be, if you know their motivations then it is going to be easier for you to get them productive quickly when they start, rather than spending time trying to figure it out later. Also you may be able to weed some people out who are motivated for the wrong reasons.
Most of the time a company is looking to hire a junior DBA that they hope will become a senior DBA in time. If the candidate does not have motivations that take them in that direction, then you can also consider that to be a red flag. If someone is motivated to be a CEO, then spending time as a junior DBA may not be the best fit for them.
Our on-call policy is [blank]. Is that OK?
This is something that cannot be stressed enough. In most every shop I know the DBA carries a pager (or blackberry). They are always on demand, and always on the hot seat when things go wrong. And things always go wrong. You need to make it very, very clear that this person will be expected to be on-call. This would be the same as if you asked them “can I call you any time, even drunk dial you at 3AM?” This could easily scare some people away. That’s fine, you don’t want them. What you want is the candidate that looks you back in the eye and says “let me give you four different ways to reach me at all times of the day.”
How do you troubleshoot problems in your current role?
I thought about what kind of date question this would be and the closest I could come up with is “when did you know your last relationship was in trouble?” The ideal candidate will be able to clearly explain their thought process in how they troubleshoot something. Developers will most likely discuss with you some piece of code that worked well on one server but not on another. A Windows admin might talk about a service that stopped and would not restart no matter how many times they clicked on that little arrow. In either case, you want to identify someone who is articulate to a certain degree, can explain themselves, stand up for their decisions, and also be open to the possibility that there was more than one way to solve the problem at hand.
That should be enough to get you started. Remember, you are looking for a junior DBA, someone with little to no experience as a DBA. If you expect them to understand everything about how transaction logs operate, what spindles are, or to draw a data page map then you are looking for someone a little more senior. What you want is someone that has demonstrated their ability to learn as well as some initiative or motivation towards technical aptitudes. Oh, and keep in mind that the more junior person you hire, the more hand holding they will need. So, if you really want someone senior, because you don’t have the time to hold someones hand most of the time until they get wet behind the ears, but only want to pay that senior person a junior salary, then you have come to the wrong blog looking for help.