Questions for me to ask during a job interview

  • I have an upcoming interview for a DBA position, and while I have a normal list of questions to ask, I came up with an additional list that I'd like to bounce against the audience.  I've created a new account so as to not flash my identity.  I have over a decade of experience with SQL Server as a DBA and developer.  The company is using an older version of SQL Server (pre-2010), I don't know why, and have contracted out at least this portion of there IT department.  I don't know who controls the rest of their IT, if it's the company, the contractor that I'm in contact with, or someone else.
    Here's the questions:

    • Did you previously or do you currently have a DBA?
    • Any current pressing problems?
    • Biggest most active DB? How big? How active in trans/sec? Split t-log?
    • How many database servers? How many databases?
    • Any replication/mirroring/log shipping?
    • How many users? Are all users local?
    • Is anything exposed to the internet?
    • Do any non-IT users have DBA or sysadmin privileges?
    • Backup policies, both SQL (both tlog and DB) and server?
    • When was last DBCC, backup, or index defrag?
    • When was the last time a backup was restored?
    • VM or physical environment?
    • Why the old version? Can it be upgraded? Is there a plan in place for upgrading it?
    • Is the operations cycle 24/7 or 8-5?
    • If 24/7, when are maint windows?
    • Does [the contractor] do all IT here or is there a [company] IT dept, what are the boundaries re hardware maint and admin priv?
    • Any non-Win systems accessing the DB?

    Any comments are appreciated!

  • That's a decent list. You may not be able to ask all of them, but it's good to have a plan.

    I'd ask about RTO & RPO, what they are, if they have them, etc.

    I'm not sure I'd ask why they're on an old version of SQL Server. Instead, ask what the upgrade path is and what the schedule for it is. (Not sure what SQL Server 2010 is, you mean 2008R2?). SQL Server 2008 is aging out of support. That has to be a concern if the data is important to the business.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • Thanks, Grant.  Without being specific, it was an edition that came out before the year 2010.

    RTO and RPO are definitely good points to bring up.  I know the data is critical, but i don't know for how long.  For example, must be maintained for one year, five years, indefinitely: I don't know yet, I also don't know how far back the data goes.  I suspect it's not very active transactionally, i.e., more data is added but not often changed.  Again, I don't know for certain.
    I think their data cycle is an event happens occasionally that spurs a very large number of inserts, then it goes kind of quiet as analysis is done.  I suspect no data is ever deleted from the DB, though they might archive out old events to repository databases.

  • If they running that old version it could be a point asking about Lifecycle Management plan, existing or not.
    It might also be that there it is an application in the background preventing any upgrade of SQL. (been there done that.. 🙂 ) 

    The user right thing is a good question ! If You are DBA = You are resposible for the operation, but what if others with DBA-rights mess up , who to blame that it´s not working ? usually the DBA...

    If many databases/ servers , are there different SLA:s ? some need to be available 24/7 where others can be down for a short time..
    Is the SLA level for the Db´s and servers the same ? ex Db SLA 24/7 , Db server SLA 8-17....

  • Jonas Jisendal - Friday, April 28, 2017 2:06 AM

    If they running that old version it could be a point asking about Lifecycle Management plan, existing or not.
    It might also be that there it is an application in the background preventing any upgrade of SQL. (been there done that.. 🙂 ) 

    The user right thing is a good question ! If You are DBA = You are resposible for the operation, but what if others with DBA-rights mess up , who to blame that it´s not working ? usually the DBA...

    If many databases/ servers , are there different SLA:s ? some need to be available 24/7 where others can be down for a short time..
    Is the SLA level for the Db´s and servers the same ? ex Db SLA 24/7 , Db server SLA 8-17....

    I would suspect that an app would be the prime candidate for keeping a DB server at that old of an edition, but I don't know for certain.  I doubt anything is 24/7, but there could be an east-coast/west-coast thing going on, so it might be an extended hours operation, but not 24/7 window.  I'll know more in a few weeks.  I've certainly seen user rights creep over the years: it's so much easier to grant carte blanch than to nip 'em in the bud and keep the users locked down.

  • I think I'd leave most of those questions until after an offer is made - maybe ask to speak to a techie (not necessarily one of your interviewers) if you're considering accepting the offer.  You only have 30 minutes to an hour in the interview itself, so use that for questions that highlight your personality or show your enthusiasm.  One of my favourites is "I'm keen to make an impression, so how would my performance be measured?"  Also, do an internet search for your interviewers in advance.  If you can find any blog posts that they have written, think of an interesting question about one of those.  It'll feed their ego, as well as showing that you've put some effort into researching the company and your potential colleagues.

    John

  • I would have thought that most of those questions would be not really suitable for a short interview, but would keep it to more general questions such as your first two, or something like

    • What are your priorities for me during the first couple of weeks / months?

    Their answer to this not only gives them the chance to let you know what you'll be working on in the short term, it also shows how prepared they are for you - if they can't give a concise, clear response, then they haven't really thought about the role.

    Thomas Rushton
    blog: https://thelonedba.wordpress.com

  • John Mitchell-245523 - Friday, April 28, 2017 7:03 AM

    I think I'd leave most of those questions until after an offer is made - maybe ask to speak to a techie (not necessarily one of your interviewers) if you're considering accepting the offer.  You only have 30 minutes to an hour in the interview itself, so use that for questions that highlight your personality or show your enthusiasm.  One of my favourites is "I'm keen to make an impression, so how would my performance be measured?"  Also, do an internet search for your interviewers in advance.  If you can find any blog posts that they have written, think of an interesting question about one of those.  It'll feed their ego, as well as showing that you've put some effort into researching the company and your potential colleagues.

    John

    No, I want those questions answered before I accept an offer.  I want a much better picture of the environment before I start.  Not every company goes through a multi-step interview process, I've found those to be kind of rare in this part of the country: usually it's one interview, maybe a fairly simple test, and that's it.  Of three technical jobs in this area: one post-interview test that was trivial, and no one had any previous experience with having had a DBA with which to really judge my ability.

    You never know what kind of an interview you're walking in to, I want to have a broad array of questions available to me to ask.  There are some key ones that I want to have on hand to let me know how they've managed their system: if there are technical people in the interview and don't know what a DBCC is, warning flag.  I did some consulting for a friend's company, and the IT department literally said "SQL Server needs service packs and updates?"  While I need a job, I want as much information as I can get in advance.  The only two names that I have thus far are for a hiring manager on the opposite coast and the office manager on-site, so neither have any use for me.  Otherwise, I have no info as to who may be in the meeting.  I'll look deeper, but the likelihood of finding more is not high.
    I normally interview quite well, so I'm not too worried about making an impression.  At my last interview, after completing the first question, the second person said "Well, you've already answered my first question!"  I got that job no problem.

  • ThomasRushton - Friday, April 28, 2017 7:32 AM

    I would have thought that most of those questions would be not really suitable for a short interview, but would keep it to more general questions such as your first two, or something like

    • What are your priorities for me during the first couple of weeks / months?

    Their answer to this not only gives them the chance to let you know what you'll be working on in the short term, it also shows how prepared they are for you - if they can't give a concise, clear response, then they haven't really thought about the role.

    Everything is situational.  If I'm interviewing with the IT manager, he might not know some of those specifics, so I'd have to tailor the questions.  I suspect it's a fairly small shop, but I'm not certain.  The short-term priorities is a definite question that's part of another block that I didn't post.  I suspect they've had a DBA in the past and that I'm a replacement, but it's difficult to know for sure.  Then you're wondering how big of a mess you'll have to clean up, or is everything in pretty good shape!

  • Heh... you forgot the most important question of them all.

    Why might a Reuleaux triangle be a better shape for a manhole cover than a circle and how does it relate to the use of xp_CmdShell? 😉

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

  • Regarding your first question about the DBA position.. I like try to feel them out to understand if I'm replacing someone or filling a new position and why. Often a company has more work then manpower and needs to expand, other times they it's because it's a bad position with lots of turnover. The former is far more desirable then the latter. 

    I also like to understand how they handle their project work. Are they Agile? Waterfall? Do they just play it by ear? This is good to know and the conversation will give you a sense of how much they have their stuff together. It's also good to ask about the culture/environment.

    :

    "I cant stress enough the importance of switching from a sequential files mindset to set-based thinking. After you make the switch, you can spend your time tuning and optimizing your queries instead of maintaining lengthy, poor-performing code."

    -- Itzik Ben-Gan 2001

  • Are you interviewing individual DBA candidates, or are you interviewing a 3rd party service provider?

    Here are a few questions I ask candidates. I prefer to ask questions that require an explanation or placing multiple things within context, because it reveals more about the depth of their experience.

    - Explain the difference between FULL, DIFFERENTIAL, and TRANSACTION LOG backups.
    - Explain how LOCKING, BLOCKING, and DEADLOCKING are related and how they are essential to the functioning of a relational database.
    - Explain the difference between READ COMMITTED versus READ UNCOMMITTED isolation level. For example, which should most often be used in a high volume transactional database and why?
    - Explain the difference between SIMPLE versus FULL database recovery model and how it impacts database backups and restores.
    - Explain the difference between a CLUSTERED INDEX, a PRIMARY KEY, and a FOREIGN KEY.
    - What is the purpose of specifying a FILLFACTOR when creating an index, and how is it related to fragmentation?

    "Do not seek to follow in the footsteps of the wise. Instead, seek what they sought." - Matsuo Basho

  • On a more serious note than my previous post, I'd likely ask the following questions as well as some of those already posted.

    1.  What kind of 3rd party audits have you passed and when have the last 4 been conducted?  What kind of audits are coming up?
    2.  How often do you run penetration tests and who runs them?  Any 3rd parties?  Have you ever been breached?
    3.  What is the deployment process for both front-end code and database code?  Does that include peer reviews?  Do the reviewers and DBAs have "stickable" authority to reject code?
    4.  Do you have a dedicated QA team?  Do you have a viable "ticketing" system to track faults, rework, and deployments?  Source control?
    5.  What environments to you maintain and who can deploy code to them (Dev, QA, UAT, Staging, Prod, etc)?
    6.  Do your front-end Developers write mostly stored procedures or mostly rely on the ORM to generate database code?  What is the ratio there?
    7.  What is your RPO/RTO, where is the DR site, and what is the transfer latency?  Have you done a fully disconnected BCP test (Business Continuity Plan)?
    8.  Do you have an infrastructure team, who does the backups, where are they stored, and have you ever done restores to ensure they're viable?
    9.  Can I sit with the Developers?

    There's more like that and they should probably come out during the interview as a part of bi-direction conversation rather than at the end.

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)

  • These feel like spin-offs from Jeff's questions, but here goes:
    1.  Who out side of development reviews database code prior to deployment?
    2.  How are changes to DB code and/or structures evaluated prior to deployment?
    3.  does the organization have a "minimum data set" for testing changes?  How many copies of production data exist?
    4. who establishes data access and data coding standards?  how are these standards maintained?
    5.  What is your data fix procedure?

    Note:  some of those are going to be a mixed blessing.  While I wouldn't call having a well-defined data fix procedure a bad thing, if everyone in the room looks bored by the concept or can belt it out from memory, that means it gets used... a lot....

    ----------------------------------------------------------------------------------
    Your lack of planning does not constitute an emergency on my part...unless you're my manager...or a director and above...or a really loud-spoken end-user..All right - what was my emergency again?

  • NotANewbie - Friday, April 28, 2017 9:40 AM

    No, I want those questions answered before I accept an offer.

    Yes, of course.  I said after an offer is made, not after it's accepted.

    The only two names that I have thus far are for a hiring manager on the opposite coast and the office manager on-site, so neither have any use for me.


    Even if they're not techies, still do your research, and if they have any sort of an online footprint (not everybody does), then ask them a question about something you've found out about them.  They'll love it!

    I normally interview quite well, so I'm not too worried about making an impression.


    I meant making an impression in the job, not in the interview.  Saying that you're keen to make an impression shows your enthusiasm - provided you say it as if you mean it, of course!

    John

Viewing 15 posts - 1 through 15 (of 25 total)

You must be logged in to reply to this topic. Login to reply