Category Archives: Interviewing

Interviewing

What I Want Versus What I Can Afford

I got an interesting comment on my article about the Top 10 Interview Questions for Senior DBAs.  AngryDBA said:

“Man, I don’t mean to sound harsh but..you’re an expert DBA? I’m guessing you wouldn’t survive one of my interviews. I only expect the candidates to get 50%. I’ve had them all too. PhDs, Masters in blah-blah-blah, Captain of the Patterns Team at Yale majoring in C#, writing joins since she was in Pampers. Uh huh.”

Answering this requires more than just a comment.

My Dream House Checklist

My Kind of Yard

My Kind of Yard

I use RememberTheMilk to store a lot of stuff, including my list of things that I’m looking for in my dream house. I’m planning long term, baby! It includes things like:

  • No ground-level windows – we don’t like people looking in or breaking in.  We like high windows on the ground floor (like 7′ up).  The other floors can have floor to ceiling windows, though.
  • On the water, but no nearby vegetation – we hate bugs.  Ideally, there wouldn’t be a plant on the property.  I’m not kidding.
  • Within walking distance of at least 2 restaurants – Erika and I really enjoy eating at restaurants.  It’s nice to have other people take care of everything once in a while.  Okay, often.
  • Gadget nook in the entryway – I like having my electronic gear near the door so that I can grab it on the way out.  Ideally, I’d have an inset nook in the wall with electric outlets, and the whole thing would be concealed so that wires weren’t dangling all over the place.
  • Lots of AC ventilation in the kitchen – we love a really cold house.  I’m talkin’ 65 degrees.  Erika loves to cook, but the kitchen always gets hot, because no house’s AC is ever designed to pump that much cold air into the kitchen while keeping the rest of the house tolerable.  Speaking of which….
  • Very powerful but very quiet AC – I don’t want to hear the air conditioning kick on and off, but I want the house at 65, and no, the answer isn’t leaving the air running full blast 24/7.
  • Silent garage door openers – I get up early in the morning and I like taking drives.  I hate it when the garage door opener vibrates in a way that you can hear it in the bedroom.  (Yes, there’s a lot of silent items on this list.)

I could go on and on – the checklist has over 20 items on it at the moment.  That doesn’t include my set of tear sheets with all of the interior design features and furnishings we’ve liked over the years, too, or my Delicious bookmarks tagged dreamhouse.

My Current Housing Checklist

My Kind of Price

My Kind of Price

Back in the real world, since I’m not making seven figures (yet), my housing search checklist is decidedly more utilitarian:

  • Washer/dryer connections – I don’t want to go to a community laundry facility.
  • Good phone/cable wiring – I need high speed internet access and old building wiring presents problems with that.
  • Two parking spots – we’re looking at downtown one-bedroom lofts, and those don’t always come with two spots.
  • Low crime rate – I don’t want to have to carry a gun when I walk the dog.

Notice the difference?  Champagne tastes, beer budget.  I can’t go asking about waterfront property with what I’m payin’.  Asking about waterfront property when I can’t afford it doesn’t make me look good – and in fact, my real estate agent is pretty quickly going to start rolling her eyes when I call.  “Here comes this bozo again, asking about waterfront property for fifty large.  What a jerk.”

How This Relates to Database Administrators

If money wasn’t an object, my interview question list would simply be:

  • Is your name Paul Randal?

However, money is always an object.  Even when you think money isn’t an object, you have to ask yourself if you would hire one super-expert-senior DBA, or hire two solid but not super-expert DBAs.  My DBA interview questions aren’t designed to separate Paul Randal from the rest – they’re designed for companies who need to find somebody reliable without spending a fortune.

One of my favorite sayings is that there’s two kinds of questions: the ones designed to find out how much the other person knows, and the ones designed to show off how much you know.  Showing off in interviews doesn’t impress the candidate – and in fact, it does the exact opposite.  Humiliating a candidate makes them bitter about your company before you even make them an offer.  If your candidates rarely achieve 50%, then you’ve got a disconnect between your tastes and your budget.

Start asking questions that your candidates might be able to answer.

Otherwise, you’re just showing them you’ve got a lot of DBA-ness.

Brent Ozar

Brent specializes in performance tuning for SQL Server, VMware, and storage. He's one of the very few Microsoft Certified Masters of SQL Server, a published author, and a Microsoft MVP. He likes travel, Jeeps, Apple gear, jokes, and writing about himself in the third person. Read more and contact Brent.

More Posts - Website

Follow Me:
TwitterFacebookLinkedInGoogle PlusYouTube

How to Get a Junior DBA Job – Part 2

Yesterday I talked about why companies aren’t hiring junior DBAs, and today I’ll talk about how you can get in the door anyway.

Companies are Cheap, and DBAs are Expensive

Even in a healthy economy, companies want to get a bargain.  They want to hire an experienced senior database administrator for junior DBA wages.  They think they’ve got something special – a great work environment, flexible working hours, nice plants in the lobby – and that it offsets the lower wages.  It doesn’t: good senior DBAs get good money, and have their pick of companies.

Some companies take the approach of hiring remote DBAs who telecommute.  I have a blog series coming up about getting & keeping a job as a telecommuting DBA, but that doesn’t work for junior DBAs.  Juniors need mentoring and training that’s difficult to get in a home office environment.  For your first DBA job, don’t be tempted to apply for a remote job, because you’re setting yourself up for failure.

Instead, throw your hat in the ring for local senior DBA jobs.  It’s not career suicide: it’s a case of the company asking for something unrealistic.  They may not get the candidates they want for the price they want to pay, and that’s your chance to get your foot in the door.  Don’t exaggerate your reputation, of course – be honest about your skill level and your experience, but at the same time, don’t sell yourself short.

You’re Working with SQL Server, Right?

I got my start as a developer and as a network admin (here’s the story).  When I went to look for my first pure SQL Server job, I didn’t have much on my resume and I didn’t really think I was all that qualified.  If anything, I underestimated the bejeezus out of what I put on the resume.

When I started hiring other DBAs, though, I remembered my own experience.  As a result, when I interviewed DBA candidates, I had a checklist of skills that I’d ask them, like:

  • Have you ever had to restore a single table’s contents?
  • Have you set up log shipping, or done troubleshooting on it?
  • Have you ever built a server connected to a SAN?

Go pick up a SQL Server administration book, look at the table of contents, and check off everything that you’ve actually done.  Even if you’ve only done it a few times, put it on your resume and explain that you’ve dabbled in it, because it’ll give you a big edge over the other candidates.  Don’t say that you’re an expert on the topic, by any means, but the fact that you’ve done it is a plus.

More often than not, I’d hear candidates answer, “Well, yeah, but hasn’t everybody done that?”  Actually, no – some candidates haven’t.  Every single skill that you performed in production – not in theory – is another reason why you might get the job.  Even if you’ve only done it once a quarter for a year, that means something.

Senior DBA

Senior DBA

How Long Have You Been Doing It?

Did your boss ask you to start backing up a SQL Server a year ago?  Last year, did you start restoring the production database onto your desktop for development testing?  Did you start working on making stored procedures a year ago?

Presto, you have a year of experience.

I can almost hear the angry emails coming in now from really senior DBAs who do this stuff full time, nonstop, for a living, but they’ve forgotten how junior-level experience works.  People don’t get handed the keys to the enterprise on Day 1 and start some kind of master clock.  Experience happens gradually, almost imperceptibly.  There’s no knighting ceremony where the CIO taps you on both shoulders with a laser pointer.

This is why so many junior-level DBA positions ask for a year or two of experience: they’re expecting to hear from developers and sysadmins who’ve been dabbling with database tasks over time, getting their feet wet.  I don’t want to hire somebody who’s never seen SQL Server Management Studio: I want to hire a developer who installed SSMS a year ago and has been dabbling with it ever since.  He may not like going in there – it may scare the pants off him – but as long as he’s been going in there grudgingly and tapping his terrified fingers on the keyboard to get his job done, then that’s a plus in my book, because I’ll train him the rest of the way.  DBA training never ends.

Training and mentoring is the way junior DBAs become senior DBAs.  In the last post of the series tomorrow, I’ll talk about what you should – and shouldn’t – expect in the way of training from a new employer, and how that affects your asking price.

Part 3: Getting DBA Training On the Job

Brent Ozar

Brent specializes in performance tuning for SQL Server, VMware, and storage. He's one of the very few Microsoft Certified Masters of SQL Server, a published author, and a Microsoft MVP. He likes travel, Jeeps, Apple gear, jokes, and writing about himself in the third person. Read more and contact Brent.

More Posts - Website

Follow Me:
TwitterFacebookLinkedInGoogle PlusYouTube

How to Get a Junior DBA Job – Part 1

So you’re hearing all the fun that DBAs are having on Twitter and around the intertubez, and you’re wondering how to get in on the fun.  Maybe you’re a developer or a network admin, and you’ve been learning about SQL Server from books and from peers, and you’re starting to look around for your first Junior DBA job.

Where Are the Junior DBA Job Ads?

Search for the terms “junior dba” or “senior dba” on national job sites, and the results are dramatically different:

To make matters worse, drill into the requirements for some of the so-called junior positions and they ask for:

  • “2+ years of hands-on experience administering customer-facing databases”
  • “Minimum 2 years of information technology experience is required”
  • “2 years of database administrations experience including installation and configuration”

These ads make me chuckle because a DBA with two years of hands-on experience isn’t looking for his next junior DBA job – he’s aiming for his first senior DBA job.  People don’t aspire to make lateral moves – they aspire to move up the ladder.

So we’ve started to establish that it’s not just you: there aren’t junior DBA ads sitting around waiting for takers.

Why Aren’t More Companies Hiring Junior DBAs?

Databases are among a company’s most valuable assets.  They hold sales data, payroll data, information about customers and competitors, and all kinds of proprietary data.  Companies guard this data closely, and they don’t want just anybody stepping up to the server to handle backups, restores, and security configuration.

Companies may be willing to hire junior developers instead – for some reason, they don’t have a problem giving a fresh-out-of-college person access to all the data.  But when it comes time to actually managing the data, they want someone experienced.

As a result, even when a small company with a handful of SQL Server instances goes shopping for a DBA, they want someone experienced.  They want to hear from the candidate, “Yes, I can do what you need – I’ve already done this for a much larger shop, and I’ve got experience handling this sort of thing.”  They sleep better at night knowing their DBA is not stressed out trying to figure out how to automate backups for the first time.

Every now and then, big companies will actually hire junior DBAs.  This mostly happens when they’ve already got a crew of senior DBAs, but here’s the odd part: they don’t have anyone internally that wants to get promoted into the DBA team.  That’s very peculiar, because in companies large enough to have DBAs already, they often have people in other teams who want to become DBAs.

Know Your Competition: Other Junior DBA Candidates

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.  They’ve written code that stores data in SQL Server, so they know the basics of T-SQL or LINQ, understand the basics of data models, and maybe they’ve even done a little SQL Server administration on their dev boxes.
  • Windows administrators with a year or more of Windows experience who also want to switch their focus.  These people know hardware, know the basics of performance tuning, have backup/restore experience, and maybe they’ve even built a cluster or two.  They might have even built SQL Servers, but they haven’t been working on SQL Server full time.
  • SQL Server DBAs who’ve been let go, and they’re desperate.  They might have worked for a company in financial trouble, they might have been drinking on the job, who knows.  These are your most dangerous competitors, because at first glance, their resumes kick sand on your resume.
  • 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.

Getting Promoted is Easier than Getting Hired

If you’re a developer or Windows admin, try to get promoted internally rather than switching companies.  You’ve already built up a level of trust with your coworkers.  Make yourself the natural candidate by actively going after the position before the position even exists: volunteer to spend time with the DBAs, help them during scheduled outages, or just ask if you can sit around and watch during the weekend maintenance windows.  Bring coffee, donuts and bacon, and be the most pleasant (but not over-the-top) person in the room.

If you’ve already got a job in close proximity to SQL Server, this is one of the times where getting certified in SQL Server without getting the job first does make sense.  I’ve blogged about how certification is the icing on the cake: don’t get certified without at least some vague experience in SQL.  Developers and Windows admins will gain knowledge from the certification training process, and it’ll buy them a little bit of credibility in the eyes of the DBA team.  Not a lot – but some.

If you dislike the DBA team at your company, I’ve got bad news: you’re probably going to dislike most DBA teams, and switching companies isn’t going to make things better.  However, if you’re absolutely determined to jump ship, there’s a few things you can do to make the hiring process easier, and I’ll explain those in my next post.

Part 2: You CAN Get DBA Experience Without a DBA Job

Brent Ozar

Brent specializes in performance tuning for SQL Server, VMware, and storage. He's one of the very few Microsoft Certified Masters of SQL Server, a published author, and a Microsoft MVP. He likes travel, Jeeps, Apple gear, jokes, and writing about himself in the third person. Read more and contact Brent.

More Posts - Website

Follow Me:
TwitterFacebookLinkedInGoogle PlusYouTube

Latest Quiz: Great Leaders in My Career

Chris Shaw tagged SQL Server DBA bloggers and asked, “Who has been a great leader in your career and what made them a great leader?”

I’ve been fortunate to work for a stream of really, really good managers, but “leader” means something else, as Chris explained.  I even had to hit the dictionary because I wasn’t quite sure how to put my finger on it.  Dictionary.com says:

Leader – noun – a person or thing that leads.

That reminds me why I stopped using Dictionary.com and switched to Wikipedia.  Wikipedia’s entry on the topic starts out with:

Leadership is one of the most salient aspects of the organizational context. However, defining leadership has been challenging. The following sections discuss several important aspects of leadership including a description of what leadership is and a description of several popular theories and styles of leadership. This page also dives into topics such as the role of emotions and vision, as well leadership effectiveness and performance….

Wow, from one extreme to the other.  The article drones on for pages.

My Definition of Leadership

I believe leaders get groups of people to do something that requires tremendous dedication and sacrifice in order to accomplish a goal that, while perhaps righteous and admirable, may not be visible to everyone else yet.

Leaders don’t just see the goal – that’s genius, not leadership.

Leaders don’t just get people to do something – that’s management, also a good skill, but different.

A real-world example of leadership would be a high-level military official who, during the heat of battle, figures out what needs to be done in order to win, sees through the fog of war to understand how to do it, and then motivates his staff to accomplish it.  In my mind, I just can’t think of the word “leader” without thinking of the word “battle.”  We battle against the market, against our competitors, against economic forces, against timelines, you name it.  (I probably read too much of the Art of War.)

A Leader in My Career

I hate naming names of people who are currently involved in my career.  If I talk about them negatively, I’m shooting myself in the foot, and if I talk about them positively, nobody’s going to believe me because they’ll think I’m kissing butt.  Therefore, I’m going to reach back over ten years and grab a couple of names from my prior career – the hospitality industry.

Hotels and restaurants are full of battles.  I could write a whole blog about that lifestyle, but I’ll give you just one story to demonstrate what it’s really like.  On Father’s Day, a father checked into one of our hotels with his two kids.  He’d lost custody of them, and he’d picked them up from his ex-wife to spend the holiday with them.  Evidently he decided if he couldn’t have the kids, neither could his ex-wife, so he shot them both and then shot himself.  This was a small town without a big crime scene cleanup company, and the hotel general manager cleaned the room personally so that his maids and maintenance guys would be spared the nightmarish task.

That’s the hospitality industry.  It ain’t all leftover porn under the mattress and leftover drugs in the toilet tank.

When I met Tom Eaton, I was a night auditor and he was the hotel general manager.  I was so impressed with him that shortly after he left the city to manage a hotel a thousand miles away, I packed up and followed him.  While working for Tom, I never questioned why I was doing it or whether I enjoyed it.  Those were probably the shortest two years of my life – time just flew by.  One battle after another was over and done with before I even knew what was going on.

As my career progressed, I had the fortune of working under Wayne West, a regional manager (multiple hotels).  He too ended up switching companies, and again I packed up and traipsed across the country to go to work for his new company.  His leadership completely blew me away – he could walk into any hotel and restaurant in any city, and within a matter of hours, he knew enough about the market to figure out what the hotel needed to do next.  And he was right.  And he got people to do it.

I ended up bailing out of the hotel industry – too many battles, not enough battle pay – but the leadership of those two guys really stuck with me.

Who I’m Tagging Next

  • Kendal Van Dyke – because he was complaining about not ranking in this whole tag thing. The squeaky wheel gets the oil.
  • Grant Fritchey – because I’m not done reviewing his book yet, but it’s AWESOME.
  • Gail Shaw – because I referred to her blog three or four times this week to solve an index problem.
  • Rhonda Tipton – because I miss Houston this week. It’s springtime here, but I still can’t smoke a cigar outside yet.

Brent Ozar

Brent specializes in performance tuning for SQL Server, VMware, and storage. He's one of the very few Microsoft Certified Masters of SQL Server, a published author, and a Microsoft MVP. He likes travel, Jeeps, Apple gear, jokes, and writing about himself in the third person. Read more and contact Brent.

More Posts - Website

Follow Me:
TwitterFacebookLinkedInGoogle PlusYouTube

Certifications are the icing on the cake

Wondering whether or not you should get certified on something?

Experience is cake, certifications are the icing.

It’s hard to sell icing without cake.  Yes, there are some people who like to eat icing by itself, but frankly, those people are freaks.  They’re not healthy.  Something is wrong with them.

If you take an easy-to-get certification into a shop and the manager immediately proclaims, “You’re hired!” then you should run.  The kinds of managers who instantly hire based on qualifications are not the kind of managers you really want to work for, because they’re desperate for head count.  They’re not desperate because the skills market is so tough – they’re desperate because they have a really bad work environment and they’ve already burned every bridge in town.

The job you really want is going to require experience.

If you’re hungry and you don’t have cake, those ads for icing might look mighty tasty, but hold on there for a second.

Icing by itself isn’t the best option for you.

Geeks like certifications because they’re relatively easy to get by studying at home alone on weekends.

Geeks are really good at doing things at home alone on weekends.

The problem is that you’re competing with other geeks who are also home alone on weekends, and they’re all out getting certs too.  If you want to stand out, you have to do something different.  Look at your resume and count the number of people that you can count on for great references.  If there’s not at least five, let me suggest that you learn to make something other than icing.

Let’s say you’re itching to improve your job options, and as a result, you’re thinking about pursuing a certification that will take six weekends of study in order to achieve.  To determine its worth, consider its opportunity cost: what else could you do in those same six weekends?

  • Network with potential employers
  • Get experience with someone who can vouch for you (and yes, you can do this in six weekends – try volunteering for IT work at a local non-profit)
  • Build a marketing campaign for yourself (blog, Twitter, local user groups)

All of these have something in common: other people.  People are what give out jobs, not software programs or tests.

Having just icing is better than starving to death.

If you use terms like “meatbag” when describing other people and you’re dead set against interacting with them, then yes, go get certified first.  It’ll be something on your resume other than an arrest record, and that’s good for something.

Brent Ozar

Brent specializes in performance tuning for SQL Server, VMware, and storage. He's one of the very few Microsoft Certified Masters of SQL Server, a published author, and a Microsoft MVP. He likes travel, Jeeps, Apple gear, jokes, and writing about himself in the third person. Read more and contact Brent.

More Posts - Website

Follow Me:
TwitterFacebookLinkedInGoogle PlusYouTube

Recruiters are not your friends or your enemies.

Recruiters are everyday people just like you and me.  They have feelings, dreams, families and jobs.

What Recruiters Do

Their job is to fill empty positions.

Notice that I didn’t say that their job is to find YOU a job.  It’s not.

There’s a separate group of people out there who work as your agent, and their job is to find you your next gig.  You have to pay them out of your own pocket, because they’re actively working for you on your behalf.  I don’t know if you get what you pay for with those folks, because I’ve never used ‘em, but I want to draw attention to the fact that you’re not paying a recruiter anything.

Recruiters are paid by the companies to find Mr. or Mrs. Right.

Mr. Right Now

Mr. Right - excellent song.

They’re Not Looking for Mr. Right Now.

The recruiter’s compensation is usually based on a couple of factors, and one of those involves a minimum length of time that the new hire stays on board.  If the new person bails after a month or two, the recruiter loses money.

If you call your recruiter and say, “Listen, this place is a hole, and I want you to find me another job ASAP,” the recruiter’s answer is going to reflect the fact that they’re about to lose money and credibility with the client.  Furthermore, you’re asking them to place you at yet another company and risk more of their income and credibility.

The recruiter will see you as a business risk, and they may come back with something like, “Sure, Bob, I’ll find you another gig pronto.  Just sit tight and I’ll take care of everything, but don’t quit until I’ve got you another job lined up.”  After they’ve kept you on the hook long enough to get their full compensation, they might not return your phone calls.  You’re stuck in a bad job and you’ve burned the bridge with the recruiter.  (I know.  It happened to me.)

The Questions to Ask Recruiters

Recruiters are in the business of filling positions.  They’re not in the business of database administration, programming, or anything else remotely technical.  It’s not their fault if they don’t know exactly whether or not you’re qualified for a particular gig, and you can’t get mad at them for not knowing their cluster from their log.  You have to help them help you.

When a recruiter calls or emails me about a position, I ask a few basic questions to determine whether or not it’s a fit for me (or for someone I know, since I’m not looking for a job):

  • What’s the pay range?
  • What’s the job description?
  • How many other DBAs are in the shop? (or developers, or sysadmins, whatever you do)
  • How many servers are they managing? (or applications, etc)

The first time a recruiter calls me, they don’t usually want to give out the pay range.  My answer (and I’ve even got an email template for this) is:

I’m not looking for a job right now, but I’d love to help you out.  If you give me that information, I’ll pass it on to my circle of peers.  One of them might be itching to get out of their current position.  I’m not giving you their name/email/phone, but I’ll pass yours along.

I’ve been burned too many times by passing on information without any pay range – my friends have put time and effort into following up with the recruiter only to find out that the pay was absurdly low.  I don’t want to burn any more bridges with my friends, and I’m sure you’d understand that, but I’ll be more than happy to pass your information along if you include the pay range, job description, number of other DBAs and the number of servers involved.

Most of them don’t respond, and that’s fine – it means they’re looking for someone willing to work for peanuts.  Keep in mind that if they were really paying great wages, they wouldn’t have had to hire a recruiter.  The only times companies hire recruiters is when:

  • None of their employees would refer a friend to this company
  • They’ve run out of local contacts (probably because nobody wants to come to work for ‘em anymore)
  • They’re looking for a skillset that doesn’t exist locally (and therefore they need to cough up some dough)

If they respond and you want the job, great – but 99% of the time, you’re not going to want it.  That doesn’t mean you should delete the email and stop the process there.

Help the Recruiter and Build a Relationship

No matter how wacko the pay rate or skill requirements are (“I need ten years experience with Windows 2008″), I give the recruiter open, honest feedback.  The next time the recruiter gets a SQL Server job posting, I want to be the first person they contact, no matter how senior or junior the position is.  I want them to shoot me an email and say, “Brent, I just got this job posting.  Is it realistic?  Where should I look for people?”  That helps me get my friends the pick of the best available jobs.

In order to make that happen, I have to give the recruiter really good feedback.  Here’s some examples of the types of things I’ve emailed back to recruiters lately:

“I can see why you’re having a tough time filling that position, and why you’re having to search the net.  It’s not going to be easy to find someone with experience in replication, SSIS, and Sharepoint, because those three technologies are not usually used in combination together.  You might want to go back to the client and suggest that they prioritize those and only focus on one, maybe two max.  Otherwise, I’d be really suspicious of anybody who says they’ve done a lot of work in all three.”

“That’s a completely fair salary range for that position.  I don’t know anyone with those skills who’s in the market right now, but I’m passing it on to my network to see if anybody’s interested.”

“The salary range and job description don’t seem to match up: it’s going to be pretty difficult finding a SQL Server DBA with ten years of replication experience for $30-$40 per hour for a three month contract.  I wish you the best of luck with your search, but I’m afraid I can’t pass this on to my network right now.”

Don’t be a jerk, but give them the best possible feedback that enables them to take actions.  Tell them what to take back to the client for feedback, and it shouldn’t involve suggested bodily orifices in which to place the job description.  Remember, you want the recruiter to call you back next time, and your only incentive is your attitude.

Keep Track of Recruiters Over Time

Not keep in touch – keep track.  If you interact with a recruiter and they’re a real class act, put them in your address book.  If they’re rude and inconsiderate, make a note of that too.  (Side note – they’re doing the same thing with you.)

This is especially important if you connect your friends with recruiters.  Sadly, I’ve had cases where recruiters jerked friends of mine around or wasted their time, and I want to make sure that doesn’t happen again.  I wish I’d have learned this lesson earlier in my career, and you young’uns, learn it now.  You’re going to be interacting with recruiters for the rest of your professional life: remember who the good ones are, and do ‘em favors!

Brent Ozar

Brent specializes in performance tuning for SQL Server, VMware, and storage. He's one of the very few Microsoft Certified Masters of SQL Server, a published author, and a Microsoft MVP. He likes travel, Jeeps, Apple gear, jokes, and writing about himself in the third person. Read more and contact Brent.

More Posts - Website

Follow Me:
TwitterFacebookLinkedInGoogle PlusYouTube

Top 10 SQL Server DBA Interview Questions

I’ve put together my best questions to ask during an interview when I’m hiring a senior database administrator for Microsoft SQL Server or Oracle.  I don’t expect any DBA to ace all of these – I’m not looking for easy questions, but rather for the top ten questions, tough challenges to let the really good DBAs shine during the job interview.

10. Solve the FizzBuzz problem with SQL code.

Here’s a quote of the FizzBuzz problem:

Write a program that prints the numbers from 1 to 100. But for multiples of three print “Fizz” instead of the number and for the multiples of five print “Buzz”. For numbers which are multiples of both three and five print “FizzBuzz”.

Challenge the DBA to do this on a whiteboard with pseudocode.  The code doesn’t have to be perfect syntax, but we’re looking for the ability to solve this problem clearly and quickly.  I’d ask this of any type of DBA, production or development.

There’s countless ways to do this, but I’m almost not as concerned with their technical accuracy as I am with the way they approach the problem itself. Do they get excited? Do they scribble out a few different ideas? Are they stunned at the thought of having to actually write T-SQL? Do they make excuses?

9. I’m a manager, and you’re my Senior DBA. Explain to me why we shouldn’t switch to MySQL or Oracle.

A senior DBA should have a basic grasp of the advantages and disadvantages of the major database platforms.  They’ve probably answered this question before, too – if not from a manager, then from a developer who’s whining because they think Platform X is better than Platform Y.

I also want to see senior DBAs that can clearly explain a very political concept without taking it personally.  My ideal DBA knows when his platform isn’t the right fit, and has no problem suggesting other ideas.

8. I’m a developer. Explain why I need a unique key on my table.

And really pretend that you’re a developer.  If you’re a DBA manager, bring in one of your toughest developers to play bad cop.  Challenge them – does it really improve performance or manageability?  How do you know?  Is it just your opinion, or where’s the proof?

If they can explain it in clear, easy-to-comprehend terms, that bodes well for their ability to communicate with other teams.  Speaking of inter-team communication…

7. A project manager needs a new SQL Server. What do you ask her?

Use a brochure from any third party application (like Microsoft Project Server or Blackberry Enterprise Server) and say the project manager wants to set this up.  I want the DBA to ask questions like:

  • How big will the database be?  (Leading to questions about whether we can add the database to an existing server)
  • How critical is the database?  (Leading to questions about clustering, disaster recovery, high availability)
  • What’s the company standard on virtualization?  (Can we save money by using a virtual server)

If the senior DBA candidate comes back with a shocked look and doesn’t know where to begin, then they haven’t done a lot of deployments.  That might be fine if your shop rarely does new deployments, or if you’re hiring a development DBA, but they still should have some basic knowledge about sizing.

6. When and where does the local user group meet?

I’m not asking if they regularly attend, I’m not asking if they speak, I’m not asking if they run for office.  At the senior DBA level, I’d just be thankful if they were at least vaguely aware that user groups existed.  Huge massive bonus points if they’ve been involved with the community, and I’d skip the next question.

5. Can you give me references from other DBAs and developers who aren’t at your company?

I want to know that they’ve got at least a couple of people they can call when the going gets rough and the servers catch fire.  These other references could be mentors, or could be people they’ve mentored or just worked with along the way.

I expect to get terrified looks, and I’d answer those by saying, “I don’t want to raise any red flags by calling people at your current employer, and I’m sure you know people who’ve left your company and moved on.  I just want to talk to people who’ve worked with you on projects or on problems.  I won’t ask for your level of technical competency, because these other guys can’t judge that.  I just want to know you’ve interacted with them.”

I know, it’s creepy, but here’s the problem: there’s a lot of fakers out there with all the right answers, but no actual experience.  At the senior level, for somebody with five or more years of experience, they have to have met other people who can at least verify they’re database administrators.

4. How do you learn new things?

When new versions of database servers come out, how do you prefer to learn how to use ‘em?

Ideally, I want to hear a DBA say they build their own server under the desk when the beta comes out, and start hammering it and getting their arms around it long before it gets released.  Not everybody has that much time, though – they might be stretched to the breaking point at their current job, with barely enough time to get their work done, let alone train on new versions.  In that case, I like to level-set them by saying, “You’re coming to work here because we’re not that kind of shop.  I want you to keep your knowledge current.  How much time per month do you need to keep current, and how would you do it?”

Some DBAs learn best by going to offsite training classes, and can’t budget their time well enough or maintain a train of thought to learn inside the office.  As a manager, you want to know that before you hire the person, so you can build that training budget into their salary.  (You don’t want unqualified employees, do you? Yeah, you probably do – I’ve worked for you, ha ha ho ho.)

3. What third party database tools are your favorites?

If somebody’s been doing database administration long enough to claim the title Senior DBA, they’ve built up a little wish list of database management tools they’ve seen along the way. Tool types might include:

  • Data modeling
  • Change management
  • Backup compression
  • Performance monitoring
  • Alerting

If they had a $X tool budget for their workstation, how would they spend it?  Forget corporate standards – I want to know what tools they’d use if they could pick on their own.  I’m not asking what software they’ve had experience using, because they might work somewhere so cheap that they’re restricted to native tools only.  They have to have at least seen some ads for products that looked cool, though.

I might follow up with questions about tools we were using in-house already by saying things like, “We’re currently using Product X for monitoring.  Have you seen it?  What’d you think of it?”

This does two things: it gives me an outside opinion about other tools out there that my DBAs could be using to do a better job, and it tells me how much the job candidate has seen.

2. Ask stressful questions.

In one of the earlier questions, you probably found an area of weakness for the DBA’s knowledge – heck, nobody’s perfect.  Go after that weakness.  Challenge it, make them uncomfortable, and really push their buttons.

This is your one chance to see how they handle stress before the brown stuff actually hits the fan.  Ideally, a senior DBA is someone who’s had their cage rattled more than once, and they’re comfortable under the gun.

No, don’t use an actual gun during the interview – but that reminds me of a plastic slot machine I used to keep on my desk at the office.  When you pulled the lever, it shot water straight at you like a squirt gun.  Always fun to see how somebody handled that one, but I wouldn’t let job candidates pull the lever.  That’s a little overboard!

1. Why are you here?

Zoom out to the big picture.  Tell me why you’re in this chair right now.

Is this some sort of career plan? Have they heard good things about the environment from another employee? Are they looking for an employee discount on products?  (It doesn’t work at wine & spirits companies, just for the record.)  Or are they just desperate?  Nothing wrong with desperation, but remember that desperate employees are desperate for something, and you’d better find out what it is.  If they’re desperate for money, it’s going to color the judgements they make.  I’m not worried about someone stealing data and selling it as much as I’m worried about someone taking the job and then bailing out shortly thereafter for just a little more money from somebody else.

Top DBA Interview Questions That You Don’t See Here

I’ve seen DBA managers asking questions about tough challenges that had come up recently in the shop, such as, “Pretend you have horrible TempDB contention, really seriously bad load, and you have to fix it.  What do you do?”  The candidate would then name off all kinds of answers while the DBA manager sat back and said, “Nope.  Didn’t work.  Tried that too.  Nope.”  The DBA manager feels more and more smug while the candidate feels more and more frustrated, and the end result is a DBA manager that thinks the candidate isn’t good enough for the job.

The problem with that scenario is that the DBA manager expects the candidate to be able to answer a question that had already stumped their own staff.  I always want to grab that manager and say, “Look, if I was interviewing YOU with this question, you’d have failed, because you couldn’t figure it out in sixty seconds either!”

If you’re going to ask a candidate a technical question, my rule of thumb is that it should take your existing staff the same length of time to answer the question.  If a technical challenge took your staff three days to figure out, then you should expect the job candidate to take that same length of time to answer the question!

Want help interviewing your DBA candidates?  Check out our services.

Brent Ozar PLF Team

Brent Ozar PLF is a boutique consulting firm focused on understanding your environment and strategy. We partner with you to objectively identify pain points and develop solutions that align to your business goals. Your experience comes first; we share our knowledge and expertise to help you.

More Posts

Follow Me:
TwitterFacebookGoogle PlusYouTube

Top 10 Questions To Ask During an Interview

Stop!  Before you accept that cushy job, make sure it’s actually as cushy as you think it is.  Managers have a long line of questions to ask in an interview, but what about you as a candidate?  What questions should you ask?

Here’s my top ten questions to ask before taking an IT job:

10. What happened to the last person in this position?

Did they quit, did they get promoted, did they die of a stress-induced heart attack, what?  Rarely is a position created completely from scratch, and you want to know why the last person left so you can avoid their fate.  If they’d been around for less than a year, I would ask the same question about their predecessor as well.

9. Have you had any layoffs in the last year?

Nobody’s going to tell you if layoffs are scheduled for the future, but you can at least ask about the past.  Maybe they did a round of layoffs and they’re perfectly positioned for future growth, but maybe they’re spiraling down the toilet.

8. What’s the on-call rotation schedule?

Will you be sharing the pager with someone, on call one week per month, or on call at all times?  If you’re on call, do you get a company laptop and wireless aircard to be able to respond, or do you have to hoof it to the nearest desktop, or heaven forbid, the office?  And to follow that up…

7. In the last year, how many times has the on-call person been called?

From 1997 until 2008, I was on call 24/7 – but I got maybe one call per month.  That kind of load is do-able, but if the on-call phone is ringing every other night at midnight, forget it.  Or at least budget psychiatry bills in with your expenses.  Speaking of expenses…

6. Is there a training or travel budget for this position?

In your struggle up the career chain, you’ll reach a point where suddenly you’re expected to do a little learning on the company dime in order to keep your skills sharp.  It never hurts to ask.  If the answer is no, ask if you would be paid your salary while attending an industry conference like the week-long PASS Summit on your own dime.  I know employees who have to take vacation time to attend these conferences, and that really hurts.

5. Can I access online tools to do my job?

More and more companies are barring employees from surfing the web.  This isn’t just a quality-of-life issue – although allowing Twitter would be nice – but it can also make life tougher when troubleshooting an IT problem.  The best help is on the web, not in Books Online.

4. Can I schedule vacations around the holidays?

I’ve worked in IT shops where everybody wanted to take vacation around Christmas week or New Year’s, but the low guys on the totem pole weren’t allowed to do it.  Seniority dictated the vacation schedule, so the old pros got the holidays off while the new kids on the block got shafted.  It shouldn’t dissuade me from taking a job, but it’s something to think about.

3. How important is my work to the company?

I’ve worked in shops where my database platform was the black sheep of the family, the platform of last resort.  I’ve worked in shops where it was seen as highly visible and mission critical.  The more valued this position is, the more you’ll be seen as an asset to the company – and less likely to be looked over at raise time, or worse, laid off.

2. What’s the telecommuting policy?

Database administration lends itself really well to working from home.  Denny Cherry and I sit around our houses most of the time, while some folks are cursed with driving in to the software factory every day.  Telecommuting cuts your expenses, increases your productivity, and raises your quality of living.  Some companies get it, and some don’t – but ask before you start.  This is one of those policies that probably isn’t going to change after you take the offer.

1. What does “success” look like for this position?

Here’s how I like to phrase this to my future manager: “90 days after I start, if you’re talking to your boss about what a great job I’ve done in my first 90 days, what kinds of things are you raving about?  What are the tasks that you wish this new employee could accomplish?  What would make you the proudest?”

The answer to this isn’t written in the job description.  We’re talking about things that will make your manager jump up and down with excitement, things that will make you a seriously valuable employee, and things that you want to put first on your task list when you start.

And a Bonus Question: Will I have to sign any non-compete agreements?

In IT, the answer to this is often yes, and they can be pretty restrictive – especially at consulting companies.  It’s not uncommon to sign away your rights to work for any competitors or any clients for years after you leave the company.  In a tight market or in a small town, that can pretty much eliminate your job options.  Better to find out ahead of time rather than after you’ve already accepted the offer, quit your old company, and started filling out your new hire paperwork on your first day at the new job.

More Articles on Interview Questions

If you liked this, here’s a few more of my posts about interview questions for job candidates:

Brent Ozar PLF Team

Brent Ozar PLF is a boutique consulting firm focused on understanding your environment and strategy. We partner with you to objectively identify pain points and develop solutions that align to your business goals. Your experience comes first; we share our knowledge and expertise to help you.

More Posts

Follow Me:
TwitterFacebookGoogle PlusYouTube

Interview Tip: Don’t Stress Out

I was just talking to a fellow blogger who’s going through an interview process, and we touched on something that bears repeating here.

Interviewers don’t always expect you to know the answers.

Sometimes they ask you a string of ugly, nasty technical questions that you can’t possibly have seen before.  They might not be testing your technical prowess or your research abilities, but instead, they may be testing your ability to keep calm under pressure.

Think back to the last time you had a server crash or an application fail.  Managers and business folks come running in asking all kinds of ugly, nasty questions.  “When’s it going to be back up? What caused this?  You did this, didn’t you? Is that whiskey in your coffee cup?  Did you try to quit sniffing glue this week?”  I know.  I’ve been there.

Asking tough questions in an interview is a way to see if someone will crack under pressure.  I rarely do this as an interviewer unless I smell weakness (it smells like the opposite of bacon), but when I do, I go after it.  I can’t have somebody on my team who throws up their hands and screams at the first sign of trouble.  In two cases, I’ve seen trouble during the interview process: one candidate actually laid his head down in his hands on the table and spoke without looking up.  In both cases, I didn’t expect them to know the answers to the questions – I just wanted to see whether or not they’d freak out, and they did.

And of course, this being reality, we hired them anyway.  They both still work in their respective jobs though I’ve moved on, and they both still freak out whenever something breaks. <sigh>

More DBA Career Articles

  • Moving from Help Desk to DBA – a reader asked how to do it, and I gave a few ways to get started.
  • Development DBA or Production DBA? – job duties are different for these two DBA roles.  Developers become one kind of DBA, and network administrators or sysadmins become a different kind.  I explain why.
  • Recommended Books for DBAs – the books that should be on your shopping list.
  • Ask for a List of Servers – DBA candidates need to ask as many questions as they answer during the interview.
  • Are you a Junior or Senior DBA? – Sometimes it’s hard to tell, but I explain how to gauge DBA experience by the size of databases you’ve worked with.
  • So You Wanna Be a Rock & Roll Star – Part 1 and Part 2 – wanna know what it takes to have “SQL Server Expert” on your business card?  I explain.
  • Becoming a DBA – my list of articles about database administration as a career.

Brent Ozar

Brent specializes in performance tuning for SQL Server, VMware, and storage. He's one of the very few Microsoft Certified Masters of SQL Server, a published author, and a Microsoft MVP. He likes travel, Jeeps, Apple gear, jokes, and writing about himself in the third person. Read more and contact Brent.

More Posts - Website

Follow Me:
TwitterFacebookLinkedInGoogle PlusYouTube

So You Wanna Be a Rock & Roll Star, Part 2

If my blog entry yesterday about my job as a SQL Server Expert at Quest Software sounds cool, then listen up: I’ll let you in on how to get a job like this.

Be Really Passionate About Your Field

I have the coolest job in the world – for me. My job would be absolute torture for some people, but I love it, and I think that’s the key.

Whether you’re a DBA, a developer, a project manager or a tester, whatever field you’re in, you need to be wildly passionate about it. This isn’t something you’re going to learn, but I mention it because it’s the only way you can succeed in a job like this. If I only worked with SQL Server from 9am to 5pm, five days a week, I would be way behind. I work a lot more, but it’s because it doesn’t feel like work to me. I love what I do, so working 50-60-70 hours a week doesn’t feel like work – it feels like a hobby too.

If you’re not passionate about what you’re doing, don’t despair: you may not get an “expert” job in what you’re doing now, but careers change. Your expertise builds as you move from job to job, field to field, and hopefully you’ll find a field that you get absolutely crazy about. When you find that field, that’s where you can succeed as a subject matter expert or an evangelist.

I spent years working my way up the ladder in hotel management, but I couldn’t have succeeded as a hotel management expert or consultant. I was doing what it took to make a living, but not really passionate about it. I didn’t read hotel management books in my spare time. Those years of my life aren’t lost – they made me a better subject matter expert, oddly, because they helped me work better with the public. If you’re not passionate about your current field either, keep moving until you find the right fit for you. (Or keep doing it – there’s nothing wrong with makin’ money!)

Learn to Communicate Well

Being a subject matter expert isn’t just about absorbing material: it’s about passing that material on to others as fast as possible.

This is not a natural skill for anybody, and if you think it’s natural for you, you don’t know what really good communication is. Here’s a few examples of great communication:

Notice that my work is not in that list.

I thoroughly enjoy communicating via blog posts, articles, chats, real life conversations, presentations, you name it, but I’m not good at it. Yet. I’m still working on that though. Every time I think I’m getting better, I see a Steve Jobs keynote, and I say to myself, “Self, you’ve got some work to do.”

Start small: take a writing course at your local community college. Technical writing isn’t all that different from any other kind of writing. You need to mesmerize your audience, deliver great information in a captivating way, and sell books – or articles, or blog posts, or whatever else you want to write.

Now, Communicate!

After you’ve learned a little about writing, start exercising your knowledge by blogging, writing SQLServerPedia wiki articles, or just posting informative answers on forums like StackOverflow. The more you communicate, the easier it’ll become.

Write under your own name. It doesn’t do you much good to get famous under a pseudonym. It’s fine to use a funny nickname like SQLAgentMan or SQLBatman, but make sure people connect your real name in there somewhere because you want to build a reputation for what you’re doing. That’ll pay off as you start to…

Get Involved in the Community

If you’re into SQL Server, join the local chapter of PASS, the Professional Association for SQL Server. (No, that name doesn’t make any sense to me either, but the group rocks.) If you don’t have a local chapter, go start one.

Helping other people is a great way to learn a topic, but it has to be more than just one-way communication. Working directly with someone else, answering their questions and helping them out, deepens your knowledge of the topic and gets you to explore new challenges.

Know How to Find Things

Tim Ford said it best when he said, “I have a junior DBA, his name is Google.

Being an information worker in the Google age means that it doesn’t matter if you don’t know the answer to every question – you just have to know how to find it. You have to be able to navigate your way through countless search results, many of them filled with spam, and use your finely tuned bullshit detector to weed out the valuable answers from the not-so-valuable people who copy/paste Books Online.

Know What You Don’t Know

Being an expert means having credibility. It doesn’t matter how much you know if people don’t trust your answers.

If you don’t know the answer to something, don’t fake it. Say you don’t know, shut up, and get out of the way. People will be refreshed with your honesty, and they’ll be much more likely to believe you when you do open your mouth about something. If they want you to find out the answer, that’s cool, but don’t fake it.

Make a clear distinction between your opinions and your known facts. When I make guesses about things, I go out of my way to make it clear that I’m guessing, and that I don’t know the answer for sure. Otherwise, next thing I know, someone will be repeating my opinion and saying, “Brent says it must be this, and he knew it for sure.” Ouch – bad.

If somebody points out an error in your work, thank them profusely, correct it, and give them credit. Knuth checks are a great example of this.

Promote Yourself

Ugh – leaves a bad taste in your mouth, right? I know, this one’s hard for us IT guys, but the reality is that you’re a self-contained corporation. You are building a brand with the people around you. If nobody knows your name, and if you just lurk in forums without posting anything, then nobody’s going to think of you when they need help.

Promoting yourself doesn’t mean taking out banner ads on web sites. It doesn’t mean jumping up and down in meetings and saying, “This was all my idea!”

It means leaving people with a positive impression of who you are and what you do. You do that by doing fantastic work, helping those around you, and helping the community in a way that people will take notice.

Here’s the part where I make an elegant segue into how you can promote yourself by writing articles on SQLServerPedia, but like I said, I’m not that good at communication.  Like I said, I’m working on that.

Ask for Help From People Who’ve Done It

People who got these expert-style, evangelist-type jobs did it because they like helping people. That means they want to help you too. If you’ve got questions about how to advance your career, what you should do next, or whether something is a good idea, email somebody who has the job you want. I have email conversations with people like this all the time, and I always take time to respond. I remember all too well what it was like to have a really crappy job, and I wouldn’t wish that on anybody. If there was a way I could get every one of my readers the same job I have, I’d do it.

But only as long as it didn’t decrease my salary. I want a Porsche 911, people. (That link, by the way, is Jeremey Clarkson reviewing the 911 Turbo – fast forward to 2 minutes 45 seconds for a hilarious take on why Porsche rear seats are so small.)

More DBA Career Articles

  • Moving from Help Desk to DBA – a reader asked how to do it, and I gave a few ways to get started.
  • Development DBA or Production DBA? – job duties are different for these two DBA roles.  Developers become one kind of DBA, and network administrators or sysadmins become a different kind.  I explain why.
  • Recommended Books for DBAs – the books that should be on your shopping list.
  • Ask for a List of Servers – DBA candidates need to ask as many questions as they answer during the interview.
  • Are you a Junior or Senior DBA? – Sometimes it’s hard to tell, but I explain how to gauge DBA experience by the size of databases you’ve worked with.
  • So You Wanna Be a Rock & Roll Star – Part 1 and Part 2 – wanna know what it takes to have “SQL Server Expert” on your business card?  I explain.
  • Becoming a DBA – my list of articles about database administration as a career.

Brent Ozar

Brent specializes in performance tuning for SQL Server, VMware, and storage. He's one of the very few Microsoft Certified Masters of SQL Server, a published author, and a Microsoft MVP. He likes travel, Jeeps, Apple gear, jokes, and writing about himself in the third person. Read more and contact Brent.

More Posts - Website

Follow Me:
TwitterFacebookLinkedInGoogle PlusYouTube