MORE ABOUT ME

09 Sep A Better DBA Job Description For Everyone

Here is a typical job description that you can find online just about anywhere. It lists almost everything possible and imaginable. And it, well…I’ll just let you read it all for yourself and make up your own mind. Enjoy.

Position Summary:

This is a MS SQL Server DBA role largely responsible for providing operational database services to the organization. Some of the primary responsibilities of this role would include owning, tracking and resolving database related incidents and requests, fulfilling requests and resolving incidents within SLAs, reviewing service related reports (e.g: database backups, maintenance, monitoring) on a daily basis to ensure service related issues are identified and resolved within established SLAs, responding to database related alerts and escalations and working with database engineering to come up with strategic solutions to recurring problems.

This MS SQL Server DBA role requires a service oriented mentality, high sense of ownership of the problems and requests assigned, focus on managing and resolving issues in alignment with the SLAs, establishing and maintaining communication with technology customers to keep them updated with status of their requests, initiating and performing changes on production systems and proactively escalating any issues that cannot be resolved within the established timeframes.

Position Requirements:

We are looking for a person who:

  • Has 8+ years of experience in database development and support in MS SQL Server environments.
  • Strong experience in Database Administration in SQL Server ( 2005 and 2008 )
  • Experience in troubleshooting and resolving database integrity issues, performance issues, blocking and deadlocking issues, replication issues, log shipping issues, connectivity issues, security issues etc.
  • Experience in Performance Tuning, Query Optimization, using Performance Monitor, SQL Profiler and other related monitoring and troubleshooting tools.
  • Ability to detect and troubleshoot SQL Server related CPU,memory,I/O, disk space and other resource contention.
  • Strong knowledge of backups, restores, recovery models, database shrink operations, DBCC commands, Clustering, Database mirroring, Replication.
  • Expert experience in implementing operational automation.
  • Strong knowledge of how indexes, index management, integrity checks, configuration, patching. How statistics work, how indexes are stored, how they can be created and managed effectively.
  • Knowledge of SQL Server tools ( Profiler, DTA, SSMS, SAC, SSCM, PerfMon, DMVs, system sprocs)
  • SQL Development – ability to write and troubleshoot SQL Code and design ( stored procs, functions, tables, views, triggers, indexes, constraints )
  • Solid acquaintance with windows server, security delegation, SPNs, storage components.
  • Documentation skills for processes and procedures ( creating KBs, runbooks, topology etc )
  • SQL Database Operational support to tech users

Preferred candidates would also meet the following criteria:

  • Solid acquaintance with windows server, security delegation, SPNs, storage components.
  • Documentation skills for processes and procedures ( creating KBs, runbooks, topology etc )
  • Knowledge of 3rd party DBA tools and applications ( e.g redgate, idera, SCOM, Erwin )
  • MCDBA / MCT certification
  • Knowledge in a scripting language like Powershell, VBScript, WSH

OK, now let’s break this thing down. My comments are inline to the original:

Position Summary:

This is a MS SQL Server DBA role largely responsible for providing operational database services to the organization. Some of the primary responsibilities of this role would include owning, tracking and resolving database related incidents and requests, fulfilling requests and resolving incidents within SLAs, reviewing service related reports (e.g: database backups, maintenance, monitoring) on a daily basis to ensure service related issues are identified and resolved within established SLAs, responding to database related alerts and escalations and working with database engineering to come up with strategic solutions to recurring problems. Nothing wrong with this paragraph, sounds good so far.

This MS SQL Server DBA role requires a service oriented mentality, high sense of ownership of the problems and requests assigned, focus on managing and resolving issues in alignment with the SLAs, establishing and maintaining communication with technology customers to keep them updated with status of their requests, initiating and performing changes on production systems and proactively escalating any issues that cannot be resolved within the established timeframes. Again, this sounds great, I am ready to hit the apply button myself.

Position Requirements: OK, that means everything here is required.

We are looking for a person who:

  • Has 8+ years of experience in database development and support in MS SQL Server environments. OK, first warning shot. They say they want a DBA, but here they mention database development. That’s OK, we’ll keep reading, but it warrants mentioning.
  • Strong experience in Database Administration in SQL Server ( 2005 and 2008 ) Um, I hope they are not expecting 8+ years of experience with either of those versions, but we’ll press on.
  • Experience in troubleshooting and resolving database integrity issues, performance issues, blocking and deadlocking issues, replication issues, log shipping issues, connectivity issues, security issues etc. OK, seems fine, but I am curious as to why they are using both log shipping and replication. Must be a really big shop or they have very specific needs. But this is all standard troubleshooting skills.
  • Experience in Performance Tuning, Query Optimization, using Performance Monitor, SQL Profiler and other related monitoring and troubleshooting tools. Fair enough, I wonder what tools they may have purchased from a third party.
  • Ability to detect and troubleshoot SQL Server related CPU,memory,I/O, disk space and other resource contention. Ability to detect? What am I, a basset hound? What if I didn’t detect the fact that a developer fills up a disk with a long running transaction? Is that going to reflect poorly on me because I couldn’t detect that the user was a moron, or that they were about to make a mistake?
  • Strong knowledge of backups, restores, recovery models, database shrink operations, DBCC commands, Clustering, Database mirroring, Replication. What, no mention of log shipping here? But they tossed in clustering, so I guess they are doing all three. Must be an even bigger shop than I thought. Or more paranoid than I can imagine. How many people have strong knowledge of all three, anyway?
  • Expert experience in implementing operational automation. This seems rather vague, but nothing to really worry about yet, I suppose. But I am wondering what it means to have ‘expert experience’. How would I show that I have expert experience?
  • Strong knowledge of how indexes, index management, integrity checks, configuration, patching. How statistics work, how indexes are stored, how they can be created and managed effectively. Why would they mention patching here? It seems rather out of place, almost as if they are just tossing around buzzwords. Now I am wondering if they are really doing clustering, log shipping, and replication or if they just want to weed out people from applying. The rest seems fine, but mentioning integrity checks is redundant since they already said DBCC earlier. So, yeah, I think they are cramming in words here.
  • Knowledge of SQL Server tools ( Profiler, DTA, SSMS, SAC, SSCM, PerfMon, DMVs, system sprocs) Well, yeah. Seems silly to mention these things here, unless you wanted to cram more buzzwords and acronyms into the description.
  • SQL Development – ability to write and troubleshoot SQL Code and design ( stored procs, functions, tables, views, triggers, indexes, constraints ) OK, just out of curiosity, when would I be doing this? At night and on weekends? The first two paragraphs talked about a slightly different role, more administrative, but now it sounds like they also want a developer. That’s two jobs, really. And the bullet points up until now only talked about experience, this one talks about actions, and those actions are not in line with what was mentioned above. I am going to consider this a serious red flag.
  • Solid acquaintance with windows server, security delegation, SPNs, storage components. This seems quite vague. Will I be building the servers as well? Handling Active Directory duties too? After the red flag above I will consider this another red flag, because this could be a casual mention of a third or fourth role. That’s a lot of work to be done in any one day or week. And what is a ‘solid acquaintance’ anyway? Is that like my old friend from High School?
  • Documentation skills for processes and procedures ( creating KBs, runbooks, topology etc ). The hell? When is this supposed to happen? I can’t spend all day writing, racking servers, configuring Active Directory, troubleshooting performance problems, answering the phone, building clusters, fixing replication after it breaks, and writing code. This job description went downhill in a hurry. I’m not sure I would even bother applying to this ad, I really don’t think these people know what they are asking for. Consider this a fifth job, at least, and another red flag.
  • SQL Database Operational support to tech users Of course. Now, I’m not sure what these users are doing all day, since I am doing everything else apparently. I’ll just assume this means the end users who will complain about performance and then complain about my performance because I can’t do five jobs at once. I mean, not even if they paid me for five jobs could I do all five well enough to please anyone.

Preferred candidates would also meet the following criteria:

  • Solid acquaintance with windows server, security delegation, SPNs, storage components. Wasn’t this a requirement?
  • Documentation skills for processes and procedures ( creating KBs, runbooks, topology etc ) The hell? Wasn’t this also a requirement? Seems strange to list it here as well, either every applicant needs this skill or not.
  • Knowledge of 3rd party DBA tools and applications ( e.g redgate, idera, SCOM, Erwin ) Interesting. It would appear they use a variety of tools, and they consider SCOM to be a DBA tool. I wonder how they are using it as such. Wait a minute, I am now wondering if I will also be the SCOM admin.
  • MCDBA / MCT certification Well, MCDBA is for SQL 2000, but they want me to be focused on SQL 2005/8, which would be MCITP. So, which version did they want me to be certified in? And does being an MCT really qualify you to do everything that is listed above?
  • Knowledge in a scripting language like Powershell, VBScript, WSH I will assume this is for the automation requirement, but I can’t imagine that they would be using all three, or expect me to know all three well enough.

So, there you go, that’s how I read a job ad before I decide to not apply. There are a possible five jobs listed above and what would appear to be roughly 60 hours or more a week worth of work. Unless the job starts at about $400k a year, it is not even worth my time. So I will pass. I am also curious to know how many of you would pass on this particular job as well. If you want to apply I will give you the link to the actual job. Feel free to make yourself miserable.

So what would be a better job description for a DBA? Let’s assume that you needed everything that was listed in the above description. If your goal is to entice as many SQL Server Experts to apply then how should you present the same information? I am glad you asked. Here is what I would do:

Position Summary:

This is a MS SQL Server DBA role largely responsible for providing operational database services to the organization. We are looking to fill a need to have a highly competent and highly motivated individual in this role. This is a production DBA role, as such it will require a commitment on your part as well as ours. Some of the primary responsibilities of this role would include owning, tracking and resolving database related incidents and requests, fulfilling requests and resolving incidents within SLAs, reviewing service related reports (e.g: database backups, maintenance, monitoring) on a daily basis to ensure service related issues are identified and resolved within established SLAs, responding to database related alerts and escalations and working with database engineering to come up with strategic solutions to recurring problems.

This MS SQL Server DBA role requires a service oriented mentality, high sense of ownership of the problems and requests assigned, focus on managing and resolving issues in alignment with the SLAs, establishing and maintaining communication with technology customers to keep them updated with status of their requests, initiating and performing changes on production systems and proactively escalating any issues that cannot be resolved within the established timeframes.

During your interview you will be asked to discuss a project or particular piece of technology that excites you. We will ask you questions on that project or piece of technology in order to get a better understanding of the depth of your knowledge.

This role requires good communication skills. If you have a blog then please pass along the URL so we can review your work. If you do not actively blog that is fine, but you should be prepared to show us an example of something you have written previously if we should happen to ask.

Position Requirements:

We are looking for a person that has:

  • Experience with Database Administration for MSSQL Server.
  • Experience in troubleshooting and resolving database problems.
  • Experience in Performance Tuning and Optimization (PTO), using native monitoring and troubleshooting tools.
  • Experience with backups, restores and recovery models.
  • Knowledge of High Availability (HA) and Disaster Recovery (DR) options for MSSQL Server.
  • Experience in implementing operational automation using scripts.
  • Knowledge of indexes, index management, and statistics.
  • Experience working with Windows server, including Active Directory and proper disk configurations.
  • Good communication and documentation skills.

Preferred candidates would also meet the following criteria:

  • Involvement with the MSSQL Server Community; membership in PASS, active in forums or newsgroups.
  • Certification is a plus; MCTS, MCITP, MVP
  • Previous experience in either a teaching or volunteer role.

Which One Would You Apply For?

Be honest. I can handle the truth. If you believe the first job description is better, that’s fine.

The reason I like my version (and I hope others would as well) is that it is not overloaded with buzzwords and phrases. It also doesn’t list five different jobs explicitly. That means you are more likely to get one of those elusive SQL Server Experts to actually be interested in applying. Lastly it stresses the importance of communication. Every successful DBA I have met is always a good communicator to some degree.

Not everyone blogs, but most everyone uses email. Certification is a preference, as that shows you can communicate some technical aptitude. And the teaching or volunteering is a way to display that you have an idea as to what to expect in the DBA role. Every DBA I know needs to take time to explain things to others, or to take on some extra work for little to no benefit (just like a volunteer). All of those traits help to define what I would consider a SQL Server expert (or at least someone on their way to becoming an expert).

Now, I understand that the original job description is supposed to be the starting point for a conversation. You will often hear people say “just apply anyway”, because we all know the job description is loaded with buzzwords. So people will build a resume to match the description so that they can have a chance at having the conversation. How, exactly, is this not the same thing that happens on Match.com when people fill out their profiles? You put in information about yourself (which is embellished to a degree) and then you put in information about the person you are looking for. And then you are shocked (SHOCKED!) that you don’t get a match?

The same thing is happening with the standard hiring practice. That’s why we need better job descriptions. If you want a SQL Server Expert to be interested in your open position then you need to change how you are advertising for them.

Oh, one last thing. Look again at that original job description. They are looking for a top notch SQL Server expert. Everyone else is as well. But how much do you think they are willing to pay for that expert? That’s the other problem. Companies want the very best talent for the very lowest cost. And then they are shocked (SHOCKED!) that they can’t find someone good enough.

This ain’t rocket surgery, it’s quite simple. Scale back on the job descriptions. Focus on people with good technical skills (not great, but good), are trainable, have good communication skills, and a willingness to serve others. You’ll be happier with the results.

11 Pingbacks/Trackbacks

  • http://thesmilingdba.blogspot.com/ Thomas LeBlanc

    Well done, I guess this goes back to the manager discussion.

    Thomas

  • Racer X

    Hate to say it, but sometimes (not always) the purpose of a job description is to exclude all but Paul Randal and God so that no one can qualify and therefore the Dept. of Labor rules have been satisfied to permit a Green Card to be processed. There are Law Firms that specialize in this:

    • Thomas LaRock

      Racer,

      I might believe that, except that this particular position has been open about 18 months, I believe. Wait…you said “sometimes”. So, yeah, that is true I bet. Just not for my example here.

      Thanks for the comment, I didn’t know companies were into such underhanded tricks.

  • V.M.

    I think to complete your investigation you should actually apply for this position and go to interview and then post your experience here. This way you’ll be able to compare what really this company need vs. what they wrote in requirements.

    And yes, I saw many many of ads like that where expectations are that you will know DBA stuff and developer stuff and networking stuff… So you end up knowing a bit of everything, but there is no way you would know everything deep enough :-(.

  • http://www.bobpusateri.com Bob Pusateri

    Excellent! But you forgot to mention that the first job posting pays minimum wage…

  • http://www.seangallardy.com Sean Gallardy

    I would give you +1 vote to your description.

    I find that job descriptions loaded with buzzwords are either places that don’t know what they want yet in terms of staffing, or are looking to consolidate current open positions. I’m not saying this couldn’t happen with the one your wrote up, but that’s one point of the interview on the candidate’s side, what are you getting yourself into.

    Great post, I would add these last few posts about dba managers and job descriptions into your book as a new chapter!

    • Thomas LaRock

      Sean,

      A new chapter? I like the way you think…

  • http://MidnightDBA.com Jen McCown

    Agreed, but yes…most job descriptions are ridiculous. They tend to be put together (or augmented) by people who don’t actually know what SQL Server DBAs are for, and so they throw all that plus the kitchen sink into the fray, and offer $20k less than they should.

    I tweetwed about this earlier in the summer, and one or two people accused me of being inflexible – after all, “every DBA job includes more than JUST administering databases”.

    Be that as it may, you aren’t offering enough to cover the four jobs you want done, pal-io.

    • Thomas LaRock

      Yes, they are ridiculous. But when people post crap like that they shouldn’t complain that there is a shortage of SQL Server experts to fill their jobs.

  • Matt Cherwin

    I find it interesting that you draw the analogy to match.com – I consider job hunting and…er, mate hunting? to be very much the same in many respects.

    Most importantly, and most pertinently here, the belief by both job seekers and employers that if they just word their resume/job description right, then the perfect job/candidate will naturally appear. In my mind, this is akin to an honest belief that the key to dating is having a great pickup line, or showing up in the right car, or wearing the right cologne, etc.

    In my mind, your grooming, courtesy, cologne, etc are nothing more than an opportunity to screw up. No one’s going to say “you’ve got great hygiene, let’s get married;” but they may say “you smell like moldy Fritos, we’re done here.” Ditto the resume and job description.

    As a job seeker, I’ve never read a job description which convinces me I want the job, but I’ve certainly read plenty that convince me I don’t. And I’m fairly certain most hiring authorities would say the same thing about resumes. I wouldn’t take a job I didn’t have a chance to interview for based solely on job description, and I assume no one would hire a person he didn’t have a chance to interview based solely on resume.

    The point of all this rambling (sorry) is to say I believe the best approach to writing a job description is the one that minimizes your chances to screw up. The more buzzwords you throw into it, the more likely you are to filter out a great candidate who knows he doesn’t know (say) SSRS, SSIS, SSAS, and Powershell all at “an expert level.” At the same time, you won’t weed out the people you’re trying to – if someone is willing to send in a resume for a SQL Server DBA position and he’s only used Access, piling SSRS, SSIS, and SSAS onto the list of things he doesn’t care he doesn’t know isn’t going to change anything. Moreover, the best person to hire may not be the person with the most aligned skills – I’d rather work with someone with a solid grounding in the relevant area and a hunger to learn than someone who’s an expert in SSRS 2005 and feels that’s good enough.

    Frankly, I think job descriptions should be simple and brief. Identify a few requirements that actually *are* requirements – “must have three+ years experience administering SQL Server 2005+” – but focus primarily on why the candidate would want to work for you. What will he be doing (“Responsible for administering X instances of SQL Server 2005 having Y databases totalling Z size”), who will he be doing it with (“Will be working as part of a 3-person DBA team”), and why will he be doing it (“Will be focused on high availability/disaster recovery and performance tuning of internally-developed applications”).

    I have to believe that you will save money in the long run by being forthright about the position, much like I believe that a candidate will find a better job by being forthright on the resume (i.e., while I took COBOL in college, I don’t list it on my resume, because I can’t honestly say I could do anything with it now. Also I never want to use COBOL again).

    All that said, if I were looking for a job, I would probably send a resume to both versions you list; I know that job descriptions are 80% handwavium, and I’d be willing to give the former employer the chance to impress me in the interview. But I would be actively hoping to get a call from the latter description – not even because it necessarily represents a better job in my mind, but it definitely represents a better person to work for/with, and a better organization to be a part of.

    • Thomas LaRock

      Matt,

      Thank you very much for your comment. I like the last part, about how my job description shows you that you might enjoy working with the people who wrote that description. Part of my point is that we need better job descriptions in order to entice better people to apply.

      I am frustrated to hear people complain that they can’t find a good DBA and yet they don’t take the steps to change their methods in trying to find one. If Match.com doesn’t work for you then wouldn’t you stop using it at some point? Same thing here, if the job description (or recruiters) are not bringing in good candidates, then wouldn’t you make a change as well?

  • http://adventuresinsql.com Dave Levy

    I think another big thing to notice is that the first paragraph makes it clear the post is for a support position. A DBA with all the skills mentioned is likely used to some autonomy and would probably not last long in this position.

    • Thomas LaRock

      Dave,

      Good point, the description does seem to contradict itself at times.

  • http://www.johnsansom.com John Sansom

    The very best job descriptions that I have encountered are those that are delivered to you verbally, direct and in person. This is why you will often hear it proclaimed that referrals or businesses approaching you directly with opportunities are the most desirable form.

    It’s the only sure fire way to cut through the BS.

    When it comes to written job descriptions, the problem in my opinion resides in that the majority of recruitment consultants have little to no clue about SQL Server and therefore the role they are “trying” to recruit for. This results in them cramming as many features and buzzwords into the job description as possible and unfortunately perhaps masking what could actually be a great opportunity.

    Of course there are exceptions and indeed some great recruitment consultants out there. Which is why when you do forge a relationship with one of these few, they are worth their weight in gold, from both a hiring and new opportunity perspective.

    My advice, HR, if you have Data Professionals within your organisation then please get them to work with you on your job briefs and descriptions. If you are a smaller organisation then why not seek advice from the SQL Server community about the type of role that you actually require? Who knows, your discussions may inadvertently uncover just the right person you are looking for.

    • Thomas LaRock

      John,

      I agree, the best job descriptions are the ones that are crafted together. For example, my role here at Confio was never something that was posted anywhere, because it didn’t exist. It was, and is, being created every day. What happened was that I sat down with the CEO and we had a talk. That’s it. He told me the things he wanted me to help Confio achieve. I told him I would be happy to help them reach there goals.

      Pure and simple. No need for a lengthy job description. Just a conversation about goals, how we can get there together, and when I would be able to start.

  • Kevin Mckenna @torpne

    Quite honestly, i think i actually saw that job you listed above (and/or its the same ad for every dba job I’ve seen lately).

    But then again, I think the real culprits are the recruitment agencies – I’ve found that the bulk of companies that list the jobs for themselves are more clear about what they need – when that is filtered through an agency and buzzwords are added, you end up with something like you have above.

    Great post though, if nothing else, it gave me a laugh reading your comments on the ad :)

    • Thomas LaRock

      Kevin,

      Thanks for the comment, glad to know it made someone smile.

  • http://www.seangallardy.com Sean Gallardy

    In addition to my earlier post, I forgot to add that one of the main reasons the buzzwords are randomly added in and strewn about are because of (and I don’t mean this in a bad way at all) job posting sites where you put in a keyword and get results based on it. If you want your job posting to have the most face time, you’re going to put in as many up to date keywords (buzzwords) as possible that you can google/bing for while reading other job postings similar and adding those as well.

    I see this as a yin/yang problem as it seems to have created and be fueled by itself. Only a change in the dichotomy of job posting sites would more of this be filtered out.

    I understand that most job descriptions go overboard because they are looking for the “right” person/talent but there has to also be a sense of reality thrown in. A great example is one sent to me that wanted an expert in SQL Server 2000->2008 AND an expert in Oracle 8-10g + unix expert + perl expert + windows 2000->2008 server expert (these people DO exist, but I’m not sure what it would take to make them leave and go to the new position).

    • Thomas LaRock

      Sean,

      Yes, the gaming of the system is clearly part of the problem, and yet people don’t try to break out of the system despite it failing them time and again.

  • http://twitter.com/crummel4 Chuck Rummel

    I’ve usually thought descriptions like this were overloaded with keywords to game the search tools so they’ll reach a larger audience, e.g. mention both DBA and Database Administration so engines searching for one or the other will still find it.

    For some of these requirements it’s also possible there are a lot of implied ORs (e.g. Powershell OR VBScript OR WSH) where they just want someone to be familiar with a minimum of one of them though more is always better. So you shotgun the laundry list and hope you get someone to apply who has at least one of each category to match.

    Worst case all these descriptions might very well be an accurate portrayal of the environment and they really are looking for that one person who will be able to do it all. I think what’s missing is a description of the size of the environment, (e.g. We’re a company of X employees or some other metric) since it’s more common for people to wear many hats in smaller places.

    • Thomas LaRock

      Chuck,

      Good points, it would help to know the size of the shop. Smaller shop does tend to mean more hats.

  • Robert Miller

    I agree with Chuck and Sean.

    My half-cent of thought…

    When I read the acronym-filled first job description, I started thinking of sites like Dice where matching is based on how many acronyms you can throw into your resume.

    Given the choice of the two descriptions, I would obviously run (not walk) and repeatedly pound on the door of the company offering the second description; it sounds that good.

    (I hate using the term “job” as the term “job” does not imply ownership and the growth that comes with said ownership.)

    I work for a startup company where I do wear many hats and work the 60+ hours a week. I have done DBMirroring, Fail-over Clustering, and Replication over the course of the last two years and found Production-failing bugs in DBMirroring and Replication.

    Along with my various DBA (A broadly defined term in our company) activities I am also proficient in software development (helps to keep some of the non-scaling DB-access requests out of the application) and I am proficient in our data-center.

    It is not that I am masochistic, (Far from it), but we do not have the time or breadth of talent for any of us to have the luxury of waiting for someone else to do something.

    Plus, I enjoy what I do and where I do it. I am part of a great team and we are allowed the freedom to attack and embrace new ways of doing things that improve our performance and stability; when time requirements are met.

    How does this relate to the topic? What I do really can be broken down into the acronym-filled requirements listing and then some. I also believe it is one of the worst requirements posting I have seen in a long time.

    • Thomas LaRock

      Robert,

      Good points, thanks. Now lets assume that you move on from your current job. Will your company look to replace you with someone exactly like you? I doubt they will be able to find anyone with all of those same skills which have taken you years to acquire. They will either need to hire two people (or more) or they will need to hire someone that is good and able to become great.

      So, which job descriptions better allows for you to find someone that can go from good to great, and also the possibility of finding someone great right from the start?

  • Robert Miller

    Thomas,

    Obviously the second. Something which I tried, but did not convey well in my initial post.

  • Pingback: How To Find a DBA | SQLRockstar()

  • http://www.infoadvisors.com Karen Lopez

    All great points.

    Another reason why agencies stuff crap on to job listings is to negotiate down applicants’ salaries/rates. So they throw in excessive numbers of years of experience, oddball requirements like coding, helpdesk, or XML memorization tricks knowing that most will not list these, then they say “well, we’d love to give you market rates for you, but you are missing some of the requirements.”

    Most of the best DBAs I’ve worked with *do* have all those skills. But they intentionally leave them off resumes (don’t want to be a coder) or play them down.

    It’s all about the $$$.

    • Thomas LaRock

      Karen,

      Thanks for the feedback, much appreciated!

  • David Smithey

    Thomas,

    I was like Robert in one shop. I did a little bit of everything.

    When I left the company they ended up hiring 3 people to do what I did. It was like you said I acquired those skills over time and the skills were not what you would normally see in any one individual.

    Companies need to be careful about things like this.

    • Thomas LaRock

      David,

      Yeah, I had not thought about that angle until today. Thanks!

  • Mike Decuir

    From the comments and the two postings, I can’t help but think that the major flaw with the first job description is simply in what category things are listed in. Simply moving a lot of the requirements down to the preferred section would accomplish a lot of making sure that it is setup well for the search engines, but not completely filtering out the good candidates who know their weak points and are honest.

    Of course, this all comes with the caveat that the company posting the job needs to acknowledge that it is not a reasonable to expect that you will find someone who has the entire list of desired skills, but it is much easier to find someone who has some of them and a desire to develop their skills in those other areas.

  • TRAD

    AMEN AMEN AMEN. The company I work for post the same BS job description. Half of us working here wouldn’t qualify.

  • chris

    Sadly, it’s not confined to Sql Server or DBA’s. I got this one this morning… I hope i did it justice…

    Data Architect – Dataware House/OLTP Applications.
    Relevant Experience (Yrs) 7+ Years of IT; 5+ as Data Architect
    Technical/Functional Skills:
    ?? ? ? ? Ability to convert functional requirements into oracle application specification document.
    ?? ? ? ? Strong knowledge of RDMS concepts.
    ?? ? ? ? Understand data model/schema and develop applications using it. –wait, what? The job title is data architect, this is either a very small shop or they don’t know the difference between an architect and developer
    ?? ? ? ? Must be able to conduct project reviews and play an active role in Architecture Governance.
    ?? ? ? ? Experience in SQL, PL/SQL tuning. Should be able to interpret AWR report, tkprof trace files. –Most developers I know and even some DBAs don’t know how to work with these. They are both way out of the realm of the data architect.
    ?? ? ? ? Expert in writing complex packages, stored procedure, triggers, pl/sql scripts. –okay… this is two jobs they are trying to fill with one person.
    ?? ? ? ? Exposure to scripting in Unix/Linux and Windows Server OS –um, for the conceptual, logical or physical model?
    Experience Required

    ?? ? ? ? Must have hands on experience as a Data Architect. –as if I’d be able to use that experience while im writing code and doing performance tuning
    ?? ? ? ? Experience in Oracle 10g/11g database.
    ?? ? ? ? Good Knowledge on Conceptual/Logical/Physical database modeling. –and actual Data Architect related bullet point.
    ?? ? ? ? Hands on PLSQL Design and Development experience. – not out of line at all, ive been handed fabulous models that couldn’t actually be implemented
    ?? ? ? ? Should have hands on experience in handling Large Databases.
    ?? ? ? ? Must have experience in dataware houses. –Is it too much to ask that a spell check be run? I hope this is just from the agency, not the client
    ?? ? ? ? Preferred Informatica ETL(PowerCenter 8.x) with Dataware housing experience. –Is Informatica a modeling tool now?
    ?? ? ? ? Expert in performance tuning of database, identify bottlenecks suggest recommendations. Should have worked on large databases (tera bytes). – Ooops, they almost forgot to mention that you seem to be the DBA and system admin too.
    ?? ? ? ? Must have banking/finance experience.. –Does direct deposit count?
    Roles & Responsibilities
    :
    ?? ? ? ? Data Architect for Financial Transactions (Datawarehouse/OLTP Applications) –Finally! Something that seems to be job related
    ?? ? ? ? Model and design the application data structure, storage, and integration. Create Migration Scripts.
    ?? ? ? ? Collaborate with team players to design and develop best PL/SQL code. Review database application. Performance tuning. –do the team player include the managers?
    ?? ? ? ? Participate in requirements gathering.
    ?? ? ? ? Database configuration and administration (e.g. DBA tasks) for maintaining local development environment. – aha, the admission that there will be multiple roles (but I’d bet against multiple paychecks)
    Generic Managerial Skills
    :
    Mentor database developers. –may I use Jon Scalzi’s Loving Hammer of Correction ™? Im not seeing a lot of time to work with the developers in this schedule
    Grow database competency in the team, while working with as Data Architect

  • chris

    wow, sorry for the formatting that came through.

  • http://www.youtube.com/watch?v=J1VQpH_yCjw Zman

    Most job descriptions remind me of the “Short Skirt, Long Jacket” song by Cake

    I want a girl
    With a mind like a diamond
    I want a girl
    Who knows what’s best

    I want a girl
    With shoes that cut
    And eyes that burn
    Like cigarettes […]

    I’ve seen several reasons for this: One reason is to exclude all applicants in order to obtain a Green Card for a current employee as noted by Thomas LeBlanc above. These tend to be a copy/paste of said employee’s resume regardless of whether her past background is relevant to the “job opening” or not (e.g. looking for SQL Server DBA with Z80 assembly language expertise)

    Another reason is that some HR departments use a mish-mash of job descriptions that have been used in the past for a given title and copy/paste them without being overly concerned about the mismatch between the Frankenstein description and the actual job opening. As far as they’re concerned it’s just a bunch of buzzwords to filter resumes. The lucky applicants who make it the interview find out that the actual requirements are different from what they applied and in some cases studied for. Doh!

    Sorry to sound cynical but I’ve seen it happen.

    • Thomas LaRock

      Zman,

      Thanks for the comment. I’m not sure you are all that far off, either. And I love me some Cake.

      One of the reasons I posted the blog entry was because I keep hearing about companies that are having trouble finding a SQL Server Expert. But when they also post job descriptions like the one I displayed it is easy for me to understand why no “expert” would ever apply. And if my tiny brain can understand why, the real question becomes: why can’t they?

  • LSC

    I get the idea of the article, but the two job postings (theirs and yours) are really polar opposites. The first one is somewhat loaded with buzzwords whereas yours has very few. I’m sure some of them are hard requirements, ie replication, clustering, log-shipping. In my shop we use all 3 and all 3 are hard requirements for my DBA’s.

    Regarding your ‘basset hound’ comment, part of being a DBA is detecting when developers do dumb things. It comes with the territory. He/she may be a horrible developer, but that’s a chance for us DBA’s to educate that person on how to benchmark their queries before releasing them into production.

    Also, not sure why mentioning some of the sql server tools is silly. Not all DBA’s know of these built-in tools/resources (Profiler, DMV’s, etc). I’ve interviewed dozens of DBA’s and very few knew of DMV’s or how to really navigate Profiler. Not talking about opening up Profiler, connecting, and hitting run. My kid can do that. But can they run an intelligent profiler trace, with certain conditions to filter results and find the root cause without bring down my production servers taking live traffic? To date, very few dba’s could.

    Just my .02

    LSC
    DBA Mgr in Atl.

    • Thomas LaRock

      LSC,

      Yes, they are opposites, and that’s partly my point. When hiring managers complain about the lack of qualified candidates for their job openings they hardly ever stop to look at what the job listing is really communicating to the applicant. If you want to attract the best then stop describing the job as something awful.

  • LSC

    I agree. Many job listings are poorly written for the reasons listed above. I don’t know if the job sounds awful, but unrealistic? Absolutely. Sounds like they just want someone who can do everyting, aka a rockstar ;).

  • Pingback: Big Mac Index | SQLRockstar()

  • Pingback: Read Up On Your Company « Under Over Qualified()

  • Pingback: SQL University - HA/DR Week | SQLRockstar()

  • Rockz

    Man, you are genius. I was there in your SQL Saturday meeting and I still remember your quote ” Task Manager is a filthy lier” ;). I am looking for DBA opportunity and came across your page. Good stuff.

  • Pingback: You’re Doing it Wrong: Job Postings | SQLRockstar | Thomas LaRock()

  • http://twitter.com/fragar65 Frank Garcia

    ha… this was funny. these job skills weed in the same people that put all of this bs on their resume and lie when they are interviewed. you are right and i’m glad someone pointed out these stupid job descriptions.

    • ThomasLaRock

      Frank,

      Yes, it would seem that there is a tendency to embellish quite a bit these days.

  • Stephen

    I’ve seen this a lot as well. Why don’t these companies try to guage aptitude and attitude instead of specific skills? If you have someone applying who has done mature development in Java, well then with a little investment they can probably learn C# as well. If they have been successfully working for years as a dba, then they are likely capable of adding a specific skill to their skillset. Many hiring companies think they need to find someone who knows x, y, z and a, b, c, and d instead of someone who knows x, y and c is capable of learning the rest.

    I have seen postings that REQUIRE that the candidate have experience in a specific industry, experience with a specific CRM product, experience as a SQL DBA, AND specific languages and frameworks. Why? Hire someone competent and TRAIN them in the specifics.

    • ThomasLaRock

      I believe the hiring process is very, very broken. IT has essentially been outsourced to recruiting firms and the result is that you hear managers complain how hard it is to find good talent.

      It really isn’t hard, if you know where to look, and who to look for.

  • Pingback: How Not To Hire Someone - SQLRockstar - Thomas LaRock()

  • Pingback: How Not To Hire Someone - SQL Server Blog - SQL Server - Telligent()

  • HellOnWheelz

    Actually, LOL – that job description (sans the TLA overload for search engine sensationalism) describes my job to a T. Our company has many contracts – we inherit applications that need to be maintained and at times partially or completely rewritten (or the client needs to be cajoled into paying to have the poor things rewritten). Some of them are truly problem children and yes, you need to be able to spot this by looking at database architecture and application code and rendering an assessment of the problems that might be expected. It is also part of the job to code “babysitters” to keep these databases from behaving too badly or in ways that are detrimental to the other server denizens.

    These applications are based on databases running on multiple OS and currently span versions from SQL 2000 – 2008 (with some Oracle and MySQL thrown in for good measure).

    So, again, I’m not finding the requirements strange… put together by a non-IT HR to fit in some online jobs site input area – definitely.

    Completely beyond the pale? Nah. I live this job every day. (for nearly the last 2 decades )

    The pay is great. The hours are lousy. The benefits and the challenges are awesome and retirement is just around the corner.

    • ThomasLaRock

      I understand completely. However…if you were to leave your position, do you think they are going to be able to hire someone to fit the role you currently have? Probably not. To me, the hiring process is broken. It is outsourced to HR, and HR has no idea what is realistic. They simply go by whatever the manager lists for requirements, and the manager simply lists the laundry items that you are doing at the time, not the items you did when you first started.

      I believe that the better option is to forget the list of TLAs and instead focus on finding a good person with some experience and a demonstrated ability to grow. That’s the point of the description I offered as an alternative above.

      (As an aside, the person who wrote the original job description above contacted me recently to say they didn’t even realize it could be interpreted so poorly and have since rewritten their descriptions to be similar to the suggestion I offered. I was humbled to hear that my blog post had such a positive impact!)

  • Pingback: 8 Ways To Be An Awesome Data Professional - SQLRockstar - Thomas LaRock()

  • Pingback: 8 Ways To Be An Awesome Data Professional - SQL Server - SQL Server - Toad World()

  • submod

    a basset hound – lol

  • http://www.dbaeyes.com/ John E.

    As a person that’s sat on both sides of the interview table, I have to say a lot of what is in a job description should be considered fluff and more there for HR-related purposes as they control the contents of the description almost as much as the Hiring Manager. The brass tax is that Hiring Managers want good people and prospective DBAs want a good job. I suggest potential candidates look for key things in a job description such as the number of years of required experience (not that it matters for the candidate, rather it will better define the potential pay-grade) and the majority of essential job duties. Are they operational in nature or developer-related? Job descriptions are, at best, a rough draft of what the hiring manager wants, but if a great candidate comes along with a different skillset, it can be rewritten and regraded to get that person in the door.

    As I’m sure all DBAs with even a minor amount of experience would understand, any DBA role is one that requires you wear many hats. One day you’re a pure operational DBA, another you’re developing code, sometimes you’re pulled in for performance tuning, recovery, etc. It’s truly a “it depends” job, which is why I love doing it so much. I appreciate the perspective you have here, but if a potential candidate is this critical of a job description, how critical will that person be under pressed deadlines or if faced with a difficult project? You can interpret a crappy job description as either a warning sign or the first test, and frankly I doubt those that are overly critical of it would not be someone I would welcome to my team.

    My advice is if the job is available in a location that suits you and looks to be within the pay-grade you’re looking for, apply. You can ALWAYS walk away from a bad potential job, but you can NEVER accept a job that’s not offered to you.

    • ThomasLaRock

      John,

      Great feedback, thanks for the comment! And I love the part at the end. I could not agree more with the idea that you can not accept a job that is never offered!

      Best,

      Tom

  • Pingback: Less Than Dot - Blog - T-SQL Tuesday #52: An Interview Invitation()

  • S Charlesworth

    I swear I just saw a posting on LinkedIn that matched your ‘Goofus’ posting word-for-word. I am putting together a job post for a DBA position and this post helped a lot. Thanks.

    • ThomasLaRock

      Welcome!

  • Pingback: SQL Server DBA Job Openings: A great review of a poorly written posting « LincolnBlog.net()