I mentor, teach, and consult about SQL Server. It’s an incredible tool –it is an extremely flexible, adaptable, and complex data environment. SQL Server is capable of bringing tremendous value to an organization when it is configured, tuned, and used appropriately. And one of the things that I am occasionally engaged to do for a client, is to help interview candidates and find an FTE Senior DBA or Senior Dev-DBA. And finding such a resource quite often proves to be a very difficult quest.
Let me be perfectly clear. SQL Server is so complex that no one, and I’m very certain about that, is capable of being an ‘expert’ in all of its’ capabilities. And the few that are true experts with various SQL Server technologies and components are in high demand –secure and very well paid if an FTE, or perhaps even more so if they have chosen to be consultants.
Which brings me back to the purpose of this article. What do I look for in Senior level folks, and just as importantly, how can a candidate more readily assess if he/she really is a Senior level candidate. From an interviewer’s perspective, I’ll give you a few tips about how to properly assess your own readiness to be called a Senior level DBA when you are exploring the market for opportunities. And I’ll offer a few pointers about what you can do to make the leap to truly being a Senior level resource.
Experience. What constitutes experience is always a big question. But what constitutes Senior level experience? That is a big IT DEPENDS kind of question. But one thing is certain for the clients I’ve interviewed for in the past year –experience means doing a lot of different things to solve complex business needs and problems. It does not mean doing a lot of the same tasks, week after week. If your biggest challenge every week is looking through your monitoring reports to verify that everything is working as expected, I don’t care how many years you’ve been doing that, and how many hundreds of servers you monitor, you’re really not the Senior level resource my clients are seeking. They are looking for folks that have set up Clustered servers, Availability Groups, Change Data Capture, database Mirroring between multiple data centers, configured and used Server Broker, or StreamInsight –AND failed. (As an important aside -do you even know what StreamInsight does?) But most importantly, they expect the Senior level person to be ready to try again. They expect a Senior level DBA to bring in experience from trial by fire learning. At Enterprise scale, things rarely go as designed, or expected, or even hoped. But we pick up the pieces and take another stab at it, cherishing our failures as much as our successes. If you are interviewing for a Senior DBA or Dev-DBA position, and you can’t readily talk about some really major failures, and what you learned as a result, then you have not been in a very challenging environment, and you still have a way to go to really earn being called Senior.
A hallmark of the ‘mid-level’ FTE is doing the ‘same old, same old’, day after day, week after week, doing safe work, in a safe environment, rarely expected to work outside of a typical workday eight-hour shift. (I anticipate that there will be healthy disagreement with my characterization of the requirements of being Senior. But with many of my clients, in rapidly changing competitive business environments, Senior means being ready to ‘saddle up’ and just get the job done.)
Maybe you knew that, and now you want to make the leap and try on the Senior mantle. What can you do in order to be taken seriously and be given an opportunity to even try. Sure, your previous positions were not really challenging, but you think you are ready. So you’re considering submitting yourself as a candidate for a Senior level position. You are going to go for the interview. What should you expect? What can you do to prepare yourself? How can you stand out and be noticed -AND considered, by the interviewers?
Product knowledge. Be prepared to respond to questions about the current version of SQL Server. Sure, you current employer is still using SQL 2008 (or 2005, or heaven forbid, SQL Server 2000), but if you can’t answer questions about current capabilities and features, you will be quickly relegated to the ‘also-ran’ list. It is an acceptable response to indicate that you are not currently working with ‘x’, but you know about it and think that it could solve certain problems. Visit the SQL Server website, read the product literature, download the evaluation version, perhaps even purchase the ‘Developers Edition’ (about $50), and set up a server on your home computer. Start exploring and learning about the other stuff, there are a significant number of online labs and tutorials that are free for you to use and learn from. But gosh, don’t go into an interview without current product knowledge. Recent candidates had no clue about Columnstore indexes; heck, several didn’t even know what an ‘Include’ index was about. One ‘experienced’ DBA had no idea about data compression or page level verification. A few alleged Senior Dev-DBA candidates didn't even know how to start profiler. And the list is embarrassingly long.
Learning and Training. Be prepared to disclose how you learn about SQL Server. Do you have a test environment? Do you read significant blogs? If so, whose blog? Be prepared to talk about those you rely upon for product information. If you are not regularly reading blog postings by Randall, Tripp, Delaney, Berry, Kehayias, Beauchemin, Mechanic, (and many others) then you are truly loosing out to a candidate that can tell me what he/she read recently that caused a pause, and a learning opportunity. I don't really care which of these writers you may read, I just want to know that you are connected in with some of the best minds in the business. Do you attend your local SQL Server User Group? Do you even know about it. If you don't, I will be concerned that you are working in a vacuum, failing to take advantage of opportunities for knowledge transfer and networking. What was the last technology conference you attended? Was it a 'FREE' event that you gave up a Saturday to attend? Was it an event that was important to you and you paid some of most of your expenses? I want to know that -it communicates that you invest in your career. If your training, conferences, networking only happens on the organizations time/money, then I have real concerns that you are most likely not adequately keeping up with advances in SQL Server.
Certifications. From my perspective as an Interviewer, I value certifications as a testament to (1) setting a goal, (2) doing the prep work, (3) investing time and resources [$], and (4) obtaining the goal. Bottom line for me is that it becomes a gauge of a candidate's ability to commit, study, retain, and use, new information. Granted, it may be less than ideal information, sometimes even contrary to 'real world' demands. And a certification does not give much assurance that information has actually been retained. But is does give me a way to evaluate a candidate's drive. AND the candidate's willingness to invest personal time and money to further his/her career. Candidates that only learn on the clock, and when being paid, are often quickly dismissed. This technology moves too fast, and changes too frequently to not have a commitment to invest personal time/effort/resources. You can't tread water, you either sink or work hard to move ahead. There is no easy path. It takes sincere commitment.
Résumé. Presenting a detailed list of every technology that you think I might be interested in is going to be a problem. First, if you allege that you have Senior level expertise in 8 or 10 SQL Server technologies, you are probably not being very honest. Yes, you may have passing awareness, or perhaps even dabbled in a lot of various SQL Server technologies, but what is your true expertise? Be prepared to defend your assertion that you have Senior level knowledge and experience if you have it listed on your résumé. And if you list technologies unrelated to SQL Server, I wonder why you think I care, this interview is for a SQL Server position. I expect that you know a mix of ancillary electronic work tools.
If you have a series of short, 3-6 month engagements, be prepared to talk about it. Perhaps even mention why on your résumé. This organization is not going to invest six months getting you up to speed in their organization just to have you walk out. If there appears to be a pattern of short work experiences, expect to be grilled about it and have convincing responses ready. Unless I see something special about you during the interview, an equally qualified candidate with longer tenures will be in front of you on the short list.
And finally, during the interview, if you are asked why you are leaving your current position, don't tell me that you are bored, that you feel unappreciated, that your boss is a jerk. That may be true for you, but guess what, I really don't give a twit. I want to know why you think that this opportunity will be a good match for you -and for this organization.
Do your homework -be prepared to tell me a few things about this organization. What is its' purpose, business, market -use the internet to research it out for gosh sake. An interview is a two-sided conversation; you should be prepared to ask questions -about the company, the specific job/tasks/duties under consideration. A candidate that is seeking to escape a bad situation is far less attractive than a candidate that is seeking to join a new situation that may provide new and interesting challenges.
Being a Senior level professional means so much more than just having survived a number of years at a job -it is not about age, longevity, or being the first in the door.
Being a Senior level SQL Server professional is about drive, experience, knowledge, learning, and mastery. You don't get to call yourself Senior -you have earn it.