I am getting a lot more unsolicited questions these days such as this one: “My co-workers tell me there is no future for SQL Server DBAs. Will I have a job in the long-term? I’m confused and frustrated!”
While the market currently has far more DBA jobs open than there are candidates, many people currently working as DBAs are worried about their future.
First of all, the people who are making such pronouncements tend to be on the younger side (under 50 at least). And the people who get worried about pronouncements such as these also trend younger. Those of us who have been through a couple of these transformative cycles, such as mainframe to minicomputers, minicomputers to client-server, and client-server to Web 1.0, can tell you that the lifespan of all of those older technologies has been much longer than expected. I remember hearing that the mainframe was dead back in the late 1980s and early 1990s. But guess what? The mainframe business still generates BILLIONS of dollars of revenue per year. In fact, COBOL developers are earning more than $100k/year! These technologies all have a very “long tail.”
Responding to those who say that “there is no future for the SQL Server DBA” requires a bit of nuance. The shortest possible answer is that they are incorrect. There will always be a need for a person, somewhere on the team, to take responsibility for the database(s). The databases of a company, after all, are the most important asset of the entire IT organization.
On the other hand, many people think of the job of the SQL Server DBA as consisting of a very specific list of job tasks. If they are thinking this way, then the answer is yes. Many of today’s current job tasks for a SQL Server DBA (backing up up databases, patching, running scripts, etc.) are indeed going away because of the cloud, automation, and better tools. But will the SQL Server DBA go away? No—definitely not.
When people say that, it sounds similar to what a captain of an old sailing ship with sails might say when he sees the first steam ships sail into port: Well, I guess we don’t need sailors anymore. What!? Not true at all! But we won’t need sailors who are masters of rope and knot, nor will we need sailors who are great at climbing rigging and setting sails. Now we will need sailors who know steam engines, fuel management, welding, steerage, and such. And a sailor of either skill set still needs to understand many of the same processes, such as working with peers, working with the harbor master, loading and unloading cargo, etc. So, I’d say your colleagues are being short-sighted in thinking that the tasks equal the job. Not so.
The Real Question
After discussing my opinion on the first question, inevitably the second question is: “What should I learn to stay relevant in this new age?” or “What should my next move be?” or some other variation. Sometimes, the question is put very specifically about a given two or three technologies, as in “Should I spend time learning either Azure database administration or change paths over to Hadoop and NoSQL?”
The first thing to recognize is that staying with SQL Server (or your database of choice) is far-sighted if you focus on performance-tuning. In the cloud, performance-tuning is a massively important new skill. Why? Currently, bad performance can be masked by overbuying hardware. Consequently, performance-tuning is a useful skill, but it’s not a common everyday skill because there are easier ways to fix many performance problems by simply throwing more hardware at the issue. As we move to the cloud, however, every bit of bad SQL or T-SQL code will cost more money, sometimes a lot more money. Being able to detect, diagnose, and tune those issues will be a critical skill for the modern cloud-centric DBA.
Furthermore, many organizations are discovering that they have a lot of data but are not really doing much with it. Their OLTP systems provide a history of transactions and some reporting. But this data is not powering a data-driven culture. That’s where data science and machine learning come in (for what it’s worth, Python is my preferred programming language for these applications). These technologies enable companies to use their data in ways they have never done in the past. It helps them to control costs and to maximize profits. This is huge. If I were a young man with time to study, I’d go all in with ML and AI. That path would indeed lead you away from DBA jobs if you pursued it to its limits … and into much better paying ML jobs. However, your DBA skills would give you a very solid grounding indeed.
Will the DBA disappear? No, far from it. But specific skills needed by DBAs and certain job roles fulfilled by DBAs will certainly change as we move to the cloud. Stay flexible. Keep learning. Sharpen your skills. And you’ll have a happy career for decades to come.