March 3, 2013 at 8:46 pm
Hi SQLSC!
Buckle up, I apologize in advance for the long post. In many ways, typing it out is as much as my own sanity as it is for me asking for everyone's advice. I hope you take the time to read it and comment; I am need of advice.
First off, I'm a new poster in the forums, but not to the forums or SQL Server central itself; I've been a lurker here for some time, and I have to say that I am routinely impressed with the knowledge level, maturity, and overall helpful attitude of all the members that ask questions and provide solutions here. Which is why I'm here, because I need some advice from the people who know the most about my "dilemma."
I recently interviewed for, was offered, and accepted a senior database administrator role. And now I'm having a form of "buyer's remorse" so to speak, for two main reasons:
1. I've been at my current employer for almost 10 years, and
2. I am wondering if my skills are where they need to be for this role.
Aside from the fact that I'm leaving a relatively stable and secure job for a new role at a new company where I'll be "the new guy" (which is stressful enough), I have a terrible fear of failure; I know that's a "me problem" and it's not confined to my job. I feel this way about a lot of things, and truthfully I should probably be medicated :w00t:
Let me provide a little background:
I started my career as an "accidental DBA" back in 2002. At the time, I was tasked with creating a local web page for people to post articles, announcements, and so forth for everyone in the building to see. I went to school to be a software developer, and I go swept up in the web application development craze while there. I started out coding pages in PHP with a MySQL back-end, and graduated to active server pages with Microsoft Access databases that I "inherited" when other people left the company. In 2004 I obtained my first SQL Server instance: a SQL server 2000 installation that I ended up migrating all my legacy application databases to.
I had never really used a full DBMS before, so naturally I started out slow, learning the system and how it worked. I built tables and views, and I even messed around with DTS packages to automate some of my tasks. I learned how the transaction logs work (the hard way, when thew grew out of control) and how to manage them. I learned the value of backing up databases, and the value developing a solid disaster recovery plan (and making sure people knew how to execute it when I was not around).
From there, I made the switch to ASP.NET, coding in C#. I recoded lots of applications, and around 2007 I took the opportunity to migrate to a brand new instance of SQL Server 2005. I started coding TSQL stored procedures and functions, and started the best practice of using them for the actual business logic and SQL code instead of embedding it in my applications. I got to work with SSIS, which I love, and continue to use for many things. And up until recently, I wrote many complex stored procedures with CTE's, temp variables and table variables, and the like. I've also followed all the best practices I've can in regards to "least required" access rights, creating application log ins, restricting users to certain schemas based on business needs, and even using "EXECUTE AS" when needed, both with local SQL server log ins and domain ID's. And today, I manage 3 severs (2 virtual 2008 instances and 1 physical 2005 instance) that my applications all use to store, read, and execute on data.
So why leave? Well in my current role, I'm not really considered to be in "IT." I'm in a position where I'm part of the operations of the business because of my diverse skills; I get to work with IT, though, in securing new instances of SQL server hardware, VM's, or other developers in getting access to other systems and/or providing access to my own database servers. In many ways, I feel my development background gives me a proclivity to working with TSQL and developing complex queries. Coupled with the fact that I've been writing SQL for almost 10 years now, I feel I have a pretty solid handle on what makes good, quick-executing queries and what doesn't. And I love SQL server; working with data sets is something I truly enjoy. In many ways, I feel my development background gives me a proclivity to working with TSQL and developing complex queries. Coupled with the fact that I've been writing SQL for almost 10 years now, I feel I have a pretty solid handle on what makes good, quick-executing queries and what doesn't. And I love SQL server; working with data sets is something I truly enjoy.
But I found myself at a cross-roads; while I'm viewed as a "go-to" person for solutions, I felt I've hit a ceiling. Since I wasn't IT, I knew I wasn't going to be able to learn, say, SQL Server 2012, or be able to attend classes for certification or training; it's just not in the budget for the area of the company I worked for. And in some ways, my job could clearly be viewed as "redundant" since it's an IT-based role in the non-IT division. It's been tried before, and there were many times I was told (in confidence) that my job had to be justified at the highest levels. Which is always good to hear...
At any rate, I started looking. I felt I had two career paths: to continue as a developer, or to look for database administrator jobs. Again, being self taught, I felt my development skills are "behind the curve" a bit (seriously, does anyone want web forms anymore? Everything is MVC now), I decided to look for DBA roles.
It didn't start out good; the first job I interviewed for (which was an ETL-type role) I interviewed sat me right down and had had me do some "live" testing by developing some SSIS packages in front of some of the other staff. I was a little flustered, and while I was able to complete the tasks, I think they felt I was a little under-prepared and passed on me. The second job I interviewed for was even worse; I never got to talk to the hiring manager. HR brought me in, and sat me in front of a computer terminal with some testing software. I bombed horribly, and was told that my skills were sub-par.
So was starting to feel defeated; I studied up, and practiced at my current job, learning as much as I could. So when I went to my third interview, I wanted to be better prepared. But when I got to my third interview, there was no testing at all; First, there was a phone interview where they asked me some questions about what I did now. I told them basically my story above: that I was an application developer that had to work with SQL server. They wanted to hear more, so I gave them all the answers I could. They asked some questions that I felt I didn't have good answers to, and I told them so. The interview lasted a half an hour, and I hung up the phone thinking "that went well, but there are probably better qualified people."
Imagine my surprise when, almost 10 minutes later, my phone rang. I was my recruiter; he told me that the hiring manager and current DBA were "blown away" with my experience and wanted me to come in for an interview asap. He told me that many people didn't even make it past the phone interview! So I was psyched, but nervous: what if I bombed another test? I shared my worry wit my recruiter; he told me just to do my best.
I showed up to the in-person, and first met with the hiring manager in person. We talked for almost an hour, but it was more about the kind of person I was and what I liked. Why did I want the job? In effect, he was measuring up my personality, which, as a person who had hired some analysts in the past, I appreciated. From there, I met with the members of his team: server administrators, storage administrators, the security team, active directory administrators, exchange team... the meetings went great. I got to spend some time with the current DBA (who, I should mention, has been there two years and I am going to be working WITH, not replacing).
Finally, I met with members of the development staff. This was the most technically demanding part of the interview; they grilled me on some SQL stuff ("Would you ever use a cursor?" "What's a left join?"), and and some application development stuff ("Ever worked with Hadoop?") and also about my current release management. I gave the best answers I could.
When we were finished, I glanced at my watch, I was there about 3 hours! I was escorted back down to HR where I met with the HR senior manager. She talked more about the company and the benefits, and then she told me that she wanted to make me an offer right then and there. I was floored. I asked her if maybe she should get some feedback from the team to make sure, to which she replied "I wouldn't be making this offer if every single person you met with didn't come down and say 'hire this guy.'"
I had a few days to think about it, and I decided to accept; the company seems great, it's growing, and the culture is very appealing. I'll have access to a formal training and certification budget to keep my skills sharp, and I get to get back to an pure IT role.
Sounds great, right?
Well, back to my dilemma: since accepting, I am having a pure panic attack. Do I really have the skills to do this? There are certain things in the environment that will be new to me, such as:
1. The scale: there will be many servers to manage, much more than I've had to work with in the past.
2. The size of the instances: While the company is MUCH smaller than where I was, they have massive amounts of data. My tables maybe held 10's of thousands of rows, but some of their production databases hold 100's of thousands of rows.
3. They utilize a HA set up on a cluster; I don't have any experience with those.
4. They have replication set up on a few of the production databases to create an instance for the BI and operations teams to query; I've never set up or changed replication schemes.
Also, I've always been the person who's had to develop the application code as well as the TSQL code to support it, I've never really had to troubleshoot major performance issues; that's not to say that I don't understand query execution plans, but I haven't had to use database tuning adviser, or SQL Server profiler to really dig into a query issue. If something wasn't working I could pretty easily identify where an index was needed or a procedure that needed re-written. So I don't have a firm grasp on what the "best" way to troubleshoot performance issues are.
But part of the reason they liked me for this role was because of my development experience; the current DBA is bombarded with questions for the various development teams asking him for help with their queries. The fact that I have development experience is why they selected me: to help ease the burden on the current DBA, and to help suggest different ways of accomplishing tasks to the teams. They are undergoing an massive overhaul of many of their systems, and trying to position them company's information systems for future growth.
I'm not exaggerating when I say I haven't been sleeping well; I feel like I don't have all the skills I need for this job, and that I'll fail and regret giving up what I had. Ever since accepting, I've been reading all my books, re-visiting the stairwell articles here, and reading and testing myself to make sure I'm ready. I start the job in a couple weeks, and I want to make sure I'm ready. My absolute low point came last night: I had recently bought the test prep books from Microsoft press for two of the certifications. I read the books and studied a bit, and I took the practice tests: I failed both of them.
Cue panic.
If you've read this far, I want to ask for all of your advice: do you think I accepted this role too hastily? Am I missing critical job skills? Are there areas that you would suggest me boning up on? I had an opportunity to speak to the current DBA, and he doesn't seem concerned about my skill set, but I don't want to be another person who burdens him with questions when I don't understand something. Or am I over-thinking it? Should I just have faith in my abilities and move forward? It all boils down to: I want to come in and be successful. I've been good at my job in the past and this will be a change for me. In six months (or less!) I don't want them to think they made a mistake in hiring me. I really feel the company I going to is a good one, with a very bright future, and that the role is a positive step for my career.
Having typed all that out, what do you all think? Did you go through something similar? Any advice or comments are welcome, and I thank you all for your time and thought. I'll certainly be monitoring the thread, so if there's other things that you want to know about me or my skills, feel free to ask!
March 3, 2013 at 10:56 pm
I think you're on the right track with the "meds", get them and relax a bit, or meet with a therapist 😀 Then again after reading your mini-novel, maybe both might do you some good...
You're definitely over-thinking it. Again, just R-E-L-A-X. Nobody goes through a 3-hour interview without having a decent knowledge of something.
Embrace the challenge. Sounds like you'll get a lot of exposure to things you haven't done before...and that's always good thing. Read up on the newer technologies, asks questions, and work on things at home until you feel somewhat comfortable.
Enjoy your new job.
Respectfully,
Abby
😎
______________________________________________________________________________Never argue with an idiot; Theyll drag you down to their level and beat you with experience
March 4, 2013 at 4:27 am
Honestly it sounds like a great opportunity. There is obviously quite a lot of experience in the company already and as such I would think they are wanting to break you in gently.
You are unlikely to be put in charge of anything that you have no experience of at the start and I would think they will buddy you up with the those that know the most for those tasks they are looking to give you maybe the key is to ensure that you are honest with them if you think you may struggle with a task.
I've been in a few small businesses where the work is extremely difficult. It can be very difficult to hire staff as people get scared of the responsibility. In one particular company the owner was just glad to get decent talented people committed to giving it a go while obviously putting in precautionary measures.
The great thing about those kind of companies are the BS level is very low and you aren't hindered by not being able to speak directly or pointless meetings.
cloudydatablog.net
March 4, 2013 at 6:38 am
I'd have to say that you should have some confidence in the people who offered you the job--they've given you three hours of questioning and discussion and have decided you're the person they're looking for; surely that has to count for something? As for failing a Microsoft test, it's not really relevant--they chose you for your specialist skills, not for the more general SQL knowledge you'd need to pass a Microsoft certification. When the developers come to you asking the questions and *you know the answers* (which it sounds like you will from your background) then that'll be the moment you realise you can do the job.
After moving away from a job you've been doing for 10 years a few nerves are to be expected. Just do the job to the best of your ability and I'm sure you'll realise why they hired you.
March 4, 2013 at 7:15 am
As everyone else has said they wouldn't have hired you if they didn't think you were up to the job.
as it is if they have as many servers as you suggest then you're going to spend a month getting to know their location, history, etc, and that's on top of picking up the company standard best practices.
_________________________________________________________________________
SSC Guide to Posting and Best Practices
March 4, 2013 at 7:27 am
You said it yourself, they're hiring you mostly for your development experience of which you have 10 years. (yes, I read the whole thing. I can prove it by pointing out that you pasted a sentence twice in the paragraph beginning with 'So why leave?')
The other DBA isn't worried about you, so you shouldn't worry about you. So long as you are motivated to learn, you'll be fine.
You will get use to the scale of the business, you'll learn the different applications, you'll research and get comfortable with the replication setup, you'll learn all the performance tips, you'll be a DBA with a strong development background. Plus, you'll get to work with another DBA which is great!
Take your meds, sleep well, and let us know how it goes!
March 4, 2013 at 8:02 am
First and foremost, you have the ability to do this job. Your past, and diverse experience shows you have the ability to adapt and to learn. The fact that you post here and ask questions and you realize what you don't know...it is a good sign. What you are experiencing is the fact you've been on cruise control for a long time on rural roads, and you just hit a big city with lots of traffic construction and you are a bit lost. Culture shock.
This is said in Hindsight, but always remember that in an interview, you need to interview them as well. If you are going to give any merit to the opinions of the people who hired you, you need to determine if they are worthy of that merit. There are many times where you will be interviewed by someone who knows way less of the subject matter than you do, but still has the same weight as everyone else when it comes to hiring decision. Plus face to face, most people are horrible at interviewing (even moreso in IT).
With that said, you got your foot in the door, now it's time to hit the ground running. Keep learning, keep asking questions, etc. The next 2-3 months you should be spending 75-85% your free time mastering your new craft. You are going to make mistakes along the way, the key thing is a) do not sit on them, communicate it to people asap, and b) learn everything you need to know to make sure you never make that mistake again. Another part of the culture shock is that you're used being a senior/expert and you've been doing daily 4 mile runs for years, but now you have to learn how to walk all over again. It will take some humility and patience but you will be fine.
Good luck to you! We better see a bunch of questions posted by you in the next few months 🙂
FYI - If you can't sleep at night, pick up a SQL book. It'll knock you right out. 🙂
March 4, 2013 at 9:07 am
In December of last year I took a new position after being at the same company for over 16 years. It is totally natural to feel nervous because you are leaving the comfort of what was familiar for the unknown. I'm not sure why they hired you as a Sr. DBA when your experience sounds more like a Sr. developer or developer/DBA. That isn't meant to be an insult, jut an observation. Xanax will help with the panic attacks so give that a thought and relax. If you were totally honest with all who interviewed you and you passed then they know what they are buying and you should do fine. If you sold yourself as something you are not then you would need to be scared but that isn't the case. Relax.
At my last company I was also a Sr. DBA but I did loads of development and I was the network admin, Exchange admin and on and on. What I know about SQL Server is great but it is what I don't know is what scares me. Where I am now we use log shipping, replication and some of the tables have over a billion rows in the different databases across multiple servers. Where I was before a million rows was huge and I just used mirroring for failover and we didn't have a DR site (company wouldn't spend a dime to do something right) so there was no need for log shipping. The apps used here are complicated and setting up test systems are all but impossible though we do have test areas. The point is that a mistake can mean screwing up something in production and that makes me nervous for obvious reasons. But you know what? It's all cool and I can handle it.
At my prior company I could come and go as I pleased, wear shorts to work, etc but here it is more formal. Here it is also much more stable financially and is certainly much more professional. I left a place where I could get away with murder but it was a toxic place and I had to get away. My fist day I was very nervous but you are only the new guy once so it didn't eat me up. Also remember that since you are not being forced to be a jack of all trades in your new position it means you are going to have time to learn more, test things more before plugging them in and on and on. Its great being able to focus on your profession and spend your time only on that but it can leave you feeling like you aren't doing enough to earn your money. Take it from me that if the company hired you to perform specific tasks and that is all you focus on then you are doing your job.
Good luck in the new position.
Cheers
March 4, 2013 at 10:41 am
A few years ago, I left a secure position where I was just shy of 15 years. There's definitely some trepidation involved in such a move. I now work for a much smaller company and find it much nicer than the large company I used to work for. There's less stress and less office politics.
So what if you don't have 27 years of experience as a DBA? Do you know absolutely everything about every aspect of SQL Server? Probably not, but technology changes very quickly, so is it really necessary to know everything? You've accepted the position and are moving into the great unknown. Have some confidence in yourself and embrace the challenge. I consider myself blessed in my job. I learn something new almost every day.
The bottom line this that nobody survives a 3-hour interview and gets an offer unless the people doing the interview are sufficiently impressed with your skill set. So what if you don't have 27 years of experience as a DBA? You said they were sizing up your personality and aptitude. This is possibly one of the most important points you brought up. This means that they want someone who's a good fit for their company first and a skill set second. If you're the best DBA in the world and can't get along with anyone, you're not going to last. This is why personality is so important. Chances are they've done this before, so give them some credit for making a good decision.
March 4, 2013 at 11:38 am
Exactly on surviving the 3 hour interview. Mine ran nearly 3 1/2 and it was the day before Thanksgiving. Nobody wants to do anything on days like that but when the interview ran so long I knew it was going very well and it only involved meeting my potential boss and a co-worker. No tour of the building, meeting with 100 devs or anything like that. Just talking to two people.
Cheers
March 4, 2013 at 12:36 pm
1. The scale: there will be many servers to manage, much more than I've had to work with in the past.
2. The size of the instances: While the company is MUCH smaller than where I was, they have massive amounts of data. My tables maybe held 10's of thousands of rows, but some of their production databases hold 100's of thousands of rows.
3. They utilize a HA set up on a cluster; I don't have any experience with those.
4. They have replication set up on a few of the production databases to create an instance for the BI and operations teams to query; I've never set up or changed replication schemes.
Also, I've always been the person who's had to develop the application code as well as the TSQL code to support it, I've never really had to troubleshoot major performance issues; that's not to say that I don't understand query execution plans, but I haven't had to use database tuning adviser, or SQL Server profiler to really dig into a query issue. If something wasn't working I could pretty easily identify where an index was needed or a procedure that needed re-written. So I don't have a firm grasp on what the "best" way to troubleshoot performance issues are.
1. Practice scripting and automating everything you can. I've single-handedly supported dozens of instances, and the only way to really do it is to automate all you can, and divide servers into levels of support. Not everything can be a "tier 1"/"level 1" support when you have too many instances.
If you're used to using TSQL to do things, you've got a great starting basis. If you're not, start using TSQL now to do everything you can for standard DBA tasks! No more GUI for backing up dbs, creating tables, etc..
2. 100Ks of rows is not that bad, although performance can of course still be an issue. First tune tempdb, if needed. Then the main thing is to get the proper clustered indexes on critical tables (first; other tables over time), and that won't always be easy. But do that first, and a lot of the other perf issues go away.
3. You'll have to spend some time early on to brush up on that, as actual experience is required in that area. If you need to, use voluntary overtime: that's some payback to the company for having the faith to give you the job.
4. You can practice with that on your own at home. If the company won't get you a SQL Developer Edition, get one yourself, it's dirt cheap. Because replication is, like HA, something that must actually be worked with to be learned.
SQL DBA,SQL Server MVP(07, 08, 09) "It's a dog-eat-dog world, and I'm wearing Milk-Bone underwear." "Norm", on "Cheers". Also from "Cheers", from "Carla": "You need to know 3 things about Tortelli men: Tortelli men draw women like flies; Tortelli men treat women like flies; Tortelli men's brains are in their flies".
March 5, 2013 at 2:30 am
I can understand your nerves regarding this new role, but it sounds like a great opportunity for you. You're going to get exposure to a lot of aspects of SQL Server, the company obviously really like you and (for me this is the main part) you will have the support and expertise of the other DBAs you'll be working beside. You're not going to be left alone to work it out yourself. Well done on getting this!
March 5, 2013 at 3:07 am
Congratulations, first off!
Your reaction to leaving your job of 10 years is understandable. Everybody doubts themselves when they start a new job, everybody. You spend the first 6 months-1 year, waiting to be 'found out'; it is inevitable. They will 'see right through you' any day now. You have 'thrown away' a secure job where you were the go-to guy for everything. Very soon your boss at the new place will call you to one side, tell you you're not quite who they wanted after all, sorry. They thought you were better than this. You will lose your home and your car...
Right ;-)?
This is all totally normal, and we all go through it. The reality is that although you will be expected to hit the ground running and get stuck in straight away, you will not be expected to be familiar with their set-up and with their particular idiosyncrasies for quite some time yet. There's another DBA there already so this is a great learning opportunity for you. It might feel like a baptism of fire, but the best opportunities usually do.
Good luck.
March 5, 2013 at 4:03 am
Beatrix Kiddo (3/5/2013)
Congratulations, first off!Your reaction to leaving your job of 10 years is understandable. Everybody doubts themselves when they start a new job, everybody. You spend the first 6 months-1 year, waiting to be 'found out'; it is inevitable. They will 'see right through you' any day now. You have 'thrown away' a secure job where you were the go-to guy for everything. Very soon your boss at the new place will call you to one side, tell you you're not quite who they wanted after all, sorry. They thought you were better than this. You will lose your home and your car...
Right ;-)?
This is all totally normal, and we all go through it. The reality is that although you will be expected to hit the ground running and get stuck in straight away, you will not be expected to be familiar with their set-up and with their particular idiosyncrasies for quite some time yet. There's another DBA there already so this is a great learning opportunity for you. It might feel like a baptism of fire, but the best opportunities usually do.
Good luck.
+ 100 at least
I have always found I am my own worst enemy and forget that I went through a grilling (not as bad as yours) to get the job I'm in now - where my employers trust me.
Well done and good luck
-------------------------------Posting Data Etiquette - Jeff Moden [/url]Smart way to ask a question
There are naive questions, tedious questions, ill-phrased questions, questions put after inadequate self-criticism. But every question is a cry to understand (the world). There is no such thing as a dumb question. ― Carl Sagan
I would never join a club that would allow me as a member - Groucho Marx
March 6, 2013 at 4:49 am
Viewing 15 posts - 1 through 15 (of 23 total)
You must be logged in to reply to this topic. Login to reply