Lack of Time vs. Lack of Skills
I’ve been giving a lot of thought to the business and process side of SQL Server performance tuning over the past few months as I launch a new business. I’ve come up with an interesting observation that I’d like to share with you. I need to lump performance tuning scenarios into two different buckets to illustrate my point.
I know the buckets are a little bit generalized, but tuning problems in an organization can be grouped in one of the following two ways: The organization has the skills and knowledge to theoretically solve the problem, or the organization lacks certain skills or the knowledge necessary to solve the problem. That might seem silly at first glance. Wouldn’t any organization with performance tuning talent simply do it themselves? Well, no. I’m sure we all have various things in our personal lives that we could do on our own that we sometimes choose to pay to have someone else do for us. I mow my own grass and do yard work. I like doing it. However, I have friends who hire a landscaping company to do their yard work for various reasons. Performance tuning can be addressed the same way. I have several clients that have the technical skills to do performance tuning, but they choose to bring in service providers to help with some aspects of it for various reasons.
Performance Problems Always Appear
Lately, I’ve seen many situations in which a local DBA team has the requisite skills to solve performance problems, but doing so isn’t anyone’s core job. When performance problems creep in, and they always do, the problem needs to be fixed but oftentimes no one has time to do it because they’re doing their normal job. I know that’s a bit of an over simplification. But I’ve seen this pattern repeated countless times over the two decades I’ve been involved in SQL Server. If anything, I think the massive amount of free information on the Internet has increased the likelihood that an internal resource can theoretically solve the problem, but they simply doesn’t have time to do it. Performance tuning can be one of those things that’s easy to ignore until it can’t be ignored anymore.
I’m not saying that folks who specialize in performance tuning are inherently smarter than folks who don’t. However, specialization often increases compensation, and frankly, performance tuning jocks have been at the upper end of the pay scale for the 20 plus years I’ve been in computing. Consider making performance tuning your job within your organization, even if you haven’t been tasked with it. In most places, your boss will probably approve of someone taking the initiative to do so. Performance tuning isn’t the sort of job that needs to be done all day every day in most organizations. Slow and steady tends to win the race. Perhaps you don’t like the performance and tuning side of SQL Server. That’s cool. Don’t try to own this role just for the money unless it’s truly a skill set that you want to add to your SQL Server bag of tricks. But heck, it certainly isn’t wrong to love your job and boost your salary at the same time.