Showing posts with label Advice. Show all posts
Showing posts with label Advice. Show all posts

Thursday, October 18, 2012

DBA Study Guide

 Hello Dear Reader, over here at Pragmatic Works we’ve been growing like weeds.  For the most part we are looking for Sr level people for Sr. Level positions.  Part of that process is interviewing.  Going for a job as a Sr. Consultant is a bit different than going for a job as a DBA. 

Today’s market for DBA’s is quite good.  If you are looking there are jobs out there.  A lot of the time after weeks or months of interviews when the “ideal” candidate has not been found you tend to lower the requirements.   It’s the Animal House “We need the dues” moment. 

Only for a business it is we need a butt in the seat.  You start asking the questions can we find someone with the right attitude, someone who can learn, someone who might not be at the level we want, but we can work with.  Often you can find a diamond in the rough and grow that person into the experience level you wanted.

In the Consultant biz it’s a bit different.  You can do that for Jr or Mid level jobs, but Sr level positions require you to really know your stuff.  You cannot expect a person to know everything, and one person’s Sr is another person’s Jr.  Not to mention there is a wide area of DBA expertise to be considered.  But we have to draw a line in the sand, and Knowledge is very important.

Can you answer some of the following questions:

  1. What is a heap?
  2. What is a Clustered Index, a Non-Clustered Index, and what are the differences between the two?
  3. What is a Page Split?  
  4. What is a Forwarding Pointer?
  5. Why do they matter?

If you cannot then I wanted to toss out some learning resources that cover a wide breath of area.  This is similar to the Microsoft Certification exams where they say know how to Baseline a server, couple different ways to skin that cat, so I know there are a LOT of different things to each very general area.
(*Note no actual cats were skinned in the process of writing this blog).  

This is just a collection of books that I’ve read over the years.  Some go in depth in particular areas, some are general and cover many.   My buddy Mike Davis (@MikeDavisSQL | Blog) wrote a similar list for BI folks if you are interested in that click here to read more.

But I wanted to toss them out so if you are looking for a good book you can find one.  Just looking to grow in a particular area?  Then these will help you as well.

Internals:  If you are looking for a book on Internals you cannot go wrong with Kalen Delaney(@SQLQueen | Blog).  The 2012 Internals book is due out in November, and I can’t wait to read it.  This book has many wonderful contributors and is well worth the money even though a new one is on the way out.  I cannot recommend this book enough.

Internals/Extended Events/Troubleshooting:  Christian Bolton (@ChristianBolton | Blog) put together an All-Star team for this book (a 2012 edition is due out soon as well).  It not only covers internals but tools to diagnose them from some of the Premier experts in the field.  I put this neck and neck with any book.  If you work with SQL Server 2008/R2 you should own a copy.

Query Tuning:  Grant Fritchey (@GFritchey | Blog) is a damn nice guy.  I don’t understand why people think he’s a Scary DBA, (Grant thanks for the advice on the Katana collection and sharpening swords in front of the daughter’s boyfriend before dates, priceless).   I just don’t understand the scary thing at all.  Regardless of his disposition Grant is the guy that wrote the book on Query Tuning and Execution Plans.  He is a master in this field and the only people I would regard higher are the people Grant would recommend.

Clustering:  Alan Hirt(@SQLHA | Blog) is to clustering what Grant Fritchey is to Query Tuning.  I’ve attended Alan’s pre-con’s, read his books, and watched his generous and free advice via #SQLHelp.  If you are working in clustering you should have Alan’s book it will point out best practices and save you head ache’s (I’m looking at you government SOC’s Image when setting up a 2008 Cluster).

Replication: I wanted to recommend a replication book however, I haven’t purchased this one.  My friend and co-worker Chad Churwell (@ChadChurchwell | Blog) is one of the smartest replication guys I've ever met and he recommends it. I’m making the recommendation because of Chad and I have done more replication as a Consultant that I did as a DBA.  I’ve set it up, I’ve fixed it, I’ve learned how to find out when it’s broken, what broke it, and why.  I’d also bet I’m not alone.  I’ve only read the free pre-view of the book and chapter wise it summarizes everything I’m looking for an Expert in Replication (other than experience).

Mirroring:  I would put Robert Davis(@SQLSoilder | Blog) in the realm of Mirroring what Grant and Alan are to their respective books.  Robert has blogged incredibly useful and real world information about mirroring.  AND YES I understand that Always On Availability Groups are the way to go.  However, not everybody is on SQL 2012, and a solid understanding of Mirroring allows you to better understand all the goodness that is Always On Availability Groups.

Hardware and Virtualization:  When it comes to hardware you don’t get much better than Glenn Berry(@GlennAlanBerry | Blog).  From his free Assessment Scripts on SQL Server Performance (Glenn's is here) is essential when you go onto a new server for the first time and try to holistically figure out what is going on right and wrong.  The first chapter alone taught me more about CPU’s and which to choose than years of experience had.  I was able to use this knowledge immediately.

Performance Indexing: Jason Strate (@StrateSQL | Blog) and Ted Krueger (@Onpnt | Blog) are incredibly smart guys.  SQL MVP’s, years of experience, and deep knowledge all combine to give you an answer to the age old question ‘What should I index and Why?’.  Indexing is a core thing that DBA’s should know about.  Adding, removing, finding good ones, and identifying bad ones are important.  Not to mention the answer to all of my previous questions are in this book.

SQL Server 2012/ SQL Azure/Powershell:  I work with some pretty smart guys.  SQL MVP’s, Consultants, and their friends are just as smart.  These two books are a collabertaive effort between brilliant people  Adam Jorgensen (@AJBigData | Blog), Brian Knight (@BrianKnight | Blog), Jorge Segarra (@SQLChicken | Blog), Patrick Leblanc (@PatrickDBA | Blog), Aaron Nelson (@SQLVariant | Blog), Julie Smith (@JulieChix | Blog)…And MORE (sorry for the people I left out)!  If you are looking for information on SQL 2012 and how to use it go to the Bible and their other book on Professional Administration.


A lot of books I know and no I don’t expect you to read all of them before an interview, but there are a lot of common theme’s in the world of SQL Server.  A good expert should be EXCITED about what they learn about.  They should be able to pick something tell me what they know, and I’d like them to do it in a way that I’m excited about it by the time they finish.

I love going to SQL Saturday’s, PASS Events, and Conferences because they make me excited to learn.  And I really love to learn.  Find something that you are passionate about, and learn it really good.  That kind of learning and passion is infectious and is exactly what makes all of the authors I’ve mentioned such great SQL Server professionals. 

Hopefully, whether you’re looking for a job or not, it will help you find something that you love to learn about.



Thursday, June 23, 2011

Stay Positive Kiddo

I say this to my kids whenever I see them getting frustrated, or if a negative attitude is threatening a good time.  No parent wants to go to Disney World and hear, “When are we going to do something fun?”  It is a good way not to go back.  Everyone likes to be appreciated.  When you’re treated poorly there is not a lot of incentive to act in a positive way.

We work in a field where things are constantly changing.  We have to constantly keep learning.  For the majority of people out there, Learning is not our day job.  We have another job that we work, where there are demands on our time.  Hopefully we get chances to use the knowledge we spend our time working so hard to learn.  Learning is tough, it takes time, away from our family’s and away from places like Disney World.

In our quest to continue to learn, and to possibly implement we will hit challenges.  You might try to be an early adopter of a new software product, you may be pushing to get productivity tools like Redgate, or you may be pushing to get best practices adopted.  In our job that is outside of learning you are sure to face challenges.  The most important thing is to stay positive.

“But Balls”, you say, “My Boss Doesn’t Listen, my work place has BAD habits, we don’t follow best practices, when I make a point in a meeting no one listens even though I’m right.  They are never going to change why should I keep trying”

I hear you Dear Reader, and if someone in the IT field hasn’t been in the position you are then they are new to the IT field.  It will happen one day.  But when you Stay Positive, you’re not always doing it for the other guy, sometimes you’re doing it for yourself.


If you’ve ever been in the spot where you are the one in the room that is always right, but nobody wants to listen to you, it is very frustrating. 

You can feel like you are shouting at the sky, for all the good that you are doing, and you may be tempted to just quit trying.

You’ve got two choices one choice in this case Blame Everyone Else or Take a Long Hard Look at yourself.  Look at the way you try to lead a conversation.  Is it an Argument between two parties or is it a civil discourse? 

When your Manager or Co-worker's say no to an idea of yours, perhaps they have genuine concerns.  When they speak listen, and see if those are concerns you know how to relieve. 

My outlook is that if I don’t know a technology well enough to alleviate those concerns then I shouldn’t be trying to push it on them.  That my require more learning on my part. 

I like to work up Demo’s, it allows me to learn something and then turn around and have something to show.  They can ask questions, and if you don’t have the answers you go an learn and come back with them.

This all get’s back to Trust.   If you spend a lot  of time shouting, or talking normally but with a lot of disdain then that is exactly what people will expect from you.  If they trust they will have a negative experience with you, you have to over come that first and formost.

Stay Positive Kiddo find a better way, it is out there and you can do it!


Whatever you do, don’t start spewing negativity like a sprinkler.    Back when I was in college I was part of a Fraternity and we needed to host an event to get people to show up, and consider joining. 

I liked to think that I came up with the plans, that I was the “idea guy”.  Eventually I stopped listening to others because I thought my ideas were right.  One day we were having a meeting and one of the guys suggested, in order to get people to show up to our reqruitment event, having a BBQ in front of the Student Union building, buying glow in the dark cup’s to give away with our phone number and letters on it, a theme for it and T-shirts as well.   To top it off that evening we would have a party and use the BBQ to get people excited and show up.

At first I didn’t like it, I was looking at all the NEGATIVES of what could go wrong.  We would be doing this during lunch time in the middle of a school day, people are going to class not a BBQ.  We are doing this on short notice we need to advertise. People are busy running to class they won't want to stop by.  But I stopped and realized that I was the problem, as I looked around the room all of the other guys were very excited about this idea.  I slowly went around the room and realized everyone was on board with this.  Everyone wanted to do it.  I was the only problem. We did it and It turned out great!

I realized that ENTHUSIASIM was key to this.  We went out and had a great time.  The guys all had a blast.  Win or lose this was a great team building moment for us.  Everybody loves ENTHUSIASIM.  If you see a lot of people having fun, our natural incliantion is to look over and say, WOW what are they doing that looks great!

 You’ve got to have a little fun with it Dear Reader, or at least you need to pull together for the good of the team. 

Sometimes when a user says “Why don’t we try X,Y, or Z?”, even if you know your right instead of just saying no, if there is time and Production isn’t on fire in the background, then take the time to give it a try.  Walk them through it and treat it as an opportunity to learn/teach.  Nobody likes to be told “NO” all the time, sometimes you’ve got to give it a shot. 

Deep down we are all SQL Geek's, PROUDLY, you can always make learning and Demo's fun!  Just Stay Positive Kiddo, you can do this!


Under this same argument I will put down sometimes you need to find a better job.  Let’s say you take a good hard look at how the conversations are going, and you find you are positive, you’re growing as a professional, but there is a culture at your work that is hostile or even negative.

There are Pro’s and Con’s to any big decision and I would say look at it hard.  But remember that when you interviewed to work for a company, they INTERVIEWED you, and you INTERVIEWED them.  If they didn’t offer you something you wouldn’t be there.   And if that offer turned out to be smoke and mirrors, then use that to learn in your job search.

Look at the good, look at the bad, and make an educated decision.  After the honeymoon phase of a new job you should have certain expectations of your work place, just as they should have of you.



Wednesday, June 1, 2011

Looking For A Job: The Dreaded Money Conversation

A couple of days on Twitter I had an exchange with some fellow Twitterer’s (sp?).  One of them had re-tweeted someone, repeated what someone had posted, with regards to how an interviewee was obviously not a good fit because the first question they had asked was what was the Salary Range for the position and they were obviously just in it for the money.

I took exception to this.  Having recently changed jobs within the last year, and being the interviewee & interviewer plenty of times in the past, the importance of the money conversation was still fresh in my mind.

“So Balls,” you say, “it’s all about the money?”

Glad you asked Dear Reader, you need to have more that moves and motivates you than money, but it is important never to underestimate its importance.   I love what I do, but if I could not support my family and do it, I’d do something else.  Family is first to me, and that means money is pretty important when I look at taking a job.


Maybe you’re under paid, maybe you’re overworked and underappreciated, or maybe you’re looking for better opportunities.  There is nothing wrong with any of that.  When you go on Monster, Dice, or [insert job board of choice] and you start looking, eventually, you will probably type in your position and sort by Salary.

This is a good thing to do, you should look at what the posted range is out there.  You should probably go on and look at what your position range is for your area.  You should get an idea of what you are worth.  Perhaps you’ve been with your company so long that you are getting paid more than the average person in your area.  Perhaps you are way underpaid.  This knowledge will help you decide what you are looking for and what you should expect to get.


So eventually you find a post, get an email with a job description, or a recruiter contacts you with an opportunity.   You’re psyched, you’re stoked, you’re…….wondering where the salary description is.  Did I miss it?  Did they forget to put it in the information they sent?  You look at the numbers description the averages for your area and you HOPE that this job will come with the salary you want.

This is the point where I will say shame on you COMPANY X or shame on you RECRUITER, not that they are bad people but they are playing the game.  Everyone wants to get good people for the BEST DEAL possible.  You want money from them, they want you to kick butt, take names, and work cheap.  So you have to play the game as well.

The money talk is uncomfortable, we don’t like asking about it.  If you are working with a good recruiter they will share this information with you. 

“But Balls”, you say “I feel a little uncomfortable about asking, how do I do it”



You may be tempted to yell show me the money but that would be the wrong approach.  There are a couple approaches.  If there are questions that you have about the job or the position in an email or a phone call put those up front. 

I’m the kind of guy that I won’t be turned off from a Candidate if money is the first question, but most people aren’t like that, they want to believe in their heart of hearts that you want this jobs for bigger reasons than the money.   So let’s use a little etiquette.

  1.  Make sure and research the company if they have a website visit it, and mention how you are interested to work for this company (And I hope you are!)
  2. Ask a question about the job, or ask to clarify anything that seems ambiguous to you
  3. Politely point out that the salary and salary range information was missing and state that as excited as you are about this opportunity you wouldn’t want to waste the Companies time or yours perusing a position that isn’t right for either of you.


It’s all about the manners, I mean after all you’re excited for this job, you do want it, but the money does need to be there.  If you ask the right way they will tell you, if they are good and upfront company.

Occasionally you’ll get a response along the lines of “what are you looking for salary range?”, they are being purposely vague.  It’s not bad, but it is someone who is trying to cleverly find out what you want without showing you their cards.  I would respond with the following:

“ a salary range that is fair for my position and experience and allows room to grow and continue to support my family, here is what I’ve seen is the typical range in this area, insert numbers from what your research shows, can you tell me what the specific range for this position is?”


We all have somebody to take care of, ourselves or our family and it is hard to work at a job and not enjoy the labors.  We all start at the bottom, it is rare that someone is so brilliant they go straight to the top.  But finding the right job for you is the mixture of a lot of good things, the people around you, the team you work on, your manager, and yes the money.

Money is very important and it should not be over looked because people are afraid of being greedy.  Remember it's not greedy to feed your family, pay your bills on time, or earn an good wage.  Don't be afraid Dear Reader ask when it is important.

The fact is it is a bit of a dance, but if you have to dace be as polite and direct as possible, the end goal is to find a job, get the money, and do the you complete me speech in the living room work happily ever after.