Career development and progression is a hot topic for everyone. It starts really early in life like when some adult asks you, “What do you want to be when you grow up?” You might have said “firefighter”, “ballerina”, “ice skater”, or “gymnast”. I’m certain you didn’t say “DBA”, but here you are anyway, at my blog, trying to figure out a career as a Database Administrator.
So, what does career progression look like for a Database Administrator? How do you move forward in your career with SQL Server? What skills should you have at year 2? Year 5? Year 10? This post will help you answer those questions.
There are all kinds of DBA’s who do all kinds of different work. That was the challenge of coming up with the information I’m going to share with you over the next several posts. I chose to create two separate career path skill lists. One for a production DBA and one for a Development DBA. The primary reason for this is that people typically become a DBA through one of two paths – Systems Administration and Developer.
Were you a System Administrator or Network Engineer when you got your start? You will probably become a Production DBA. Did you get your start as a .Net or Java Developer? You’ll likely be more of a Development DBA. Different specialties within those general paths can develop from there.
What Does a Production DBA Do?
Before we jump into skills a Production DBA needs, let’s answer what a Production DBA does. As an oversimplification, a Production DBA keeps the lights on. She makes sure that break/fix items are resolved for customer facing processes. As a Production DBA, you will be resolving performance issues in the production environment and at least occasionally these issues will be live issues affecting a large number of people, either internal or external to the company. You will often be either designing or assisting with the design of systems, answering questions like :
- How will this system interact with other systems?
- Does interaction with other systems need to be real time or can it be asynchronous?
- How will we make sure this system is always available?
- What technologies will be used once the above decisions are made?
These, of course, aren’t the only questions you’ll need to answer as a Production DBA. There will be others like:
- Why did this system go down?
- How do we prevent this outage in the future?
- Who granted the permissions that allowed this to happen?
Sounds exhilarating and terrifying all at the same time, right?!
On that note, here is a list of DBA skills you’ll need at the beginning. Look it over. Ponder it and see what you think about the list. Keep in mind, this is level 1, the entry level Production DBA skillset. I’m trying to answer the questions, “What does a beginner Production SQL Server Database Administrator do from day to day, and what are the necessary DBA skills they should have?
Production DBA Skills Level 1
- Production DBA – 0-2 years of experience
- Handles level 1 triage for things like SQL Server Agent job failures, user issues, and reactive tickets.
- Installs SQL Server instances following a process designed by others.
- Manages most administrative aspects of non-prod environments with assistance from more experienced DBAs, including the application of patches to pre-production.
- Carries out defined tasks like managing new users, running established audit processes, restoring databases to non-prod environments as required.
- Basic T-SQL development. SELECT, INSERT, UPDATE, DELETE
- May participate in SQL Server migrations in a guided manner.
- Demonstrates understanding of backup/restore processes.
- Demonstrates values driven behaviors such as humility, integrity, teamwork and is teachable.
A beginner production DBA should at some point be handling break/fix triage work. This will often comes in the form of SQL Server Agent job failures and requests from users that often say little more than, “It’s broken” whatever “It” is. At this level, you may have a more senior level DBA hand you a guide and say, “We need a SQL Server installed. Here are the instructions for that. Please have this done by noon.” You need to understand enough to get through that task successfully.
At least some beginner DBA’s maybe be given one or more non-production environments that they are the primary DBA for. This provides a mostly safe place for mistakes to be made and for learning to occur. The environment isn’t production so you aren’t going to break anything that is used by external customers. Now, you might break something that the Developers are using, but that’s less impactful than breaking external customer technology. Managing a non-prod environment gives you a place to learn the other skills in this list. Developers will need new Logins and Users created as they build new applications. They will need data refreshed from production and so at this level, you’ll get experience with restoring backups and you will have the opportunity to grow you skills with T- SQL.
People Skills for Information Technology
Now about that #9 you see in the list – “Demonstrates values driven behaviors such as humility, integrity, teamwork and is teachable.”
If you thought you would get a job in technology so you didn’t have to deal with people or work on your people skills, I’m hear to tell you that you’re mostly wrong. Sure, you can be that person who hides in their cubicle and pushes off the “people” part of their job to someone else. But, it is unlikely your career is going to progress all that far with that approach. You’re going to need to know how to interact appropriately with your direct co-workers on your team, Developers, DBA’s, end users, your boss, vendors, etc. So, if you suck with your people skills, get a good book, or two or three, and incorporate that knowledge into your life. Click here for a book I recommend and look at the other suggested reading at that bottom of the page. A primary reason I really recommend the book by Travis Bradberry and Jean Graves is that it gives you concrete examples not only of high and low emotional intelligence, but specific actions you can take to improve your people skills.
Next Steps to Take
- Write down the list above, or copy paste to a Word doc. Think carefully about each one and whether or not you currently meet this criteria. Put an “X” next to any item you need to work on.
- For each item you placed an “X” on, create a plan for improving skills related to that item. The internet is your friend here. If you’re not sure how to create Logins and Users, then open your favorite search engine and look around. There will be people and tutorials that explain it.
- If you would like help with anything on this post, or with something else you’ve seen on the site, reach out to me here or on Twitter and I’ll be glad to offer assistance.