In this post, we examine the various ingredients that will help you establish a successful career as a DBA, and then contribute to your long-term career success.
- Formal Education – you don’t need a degree in database administration, but a solid computer technology background will help
- Getting Experience – getting experience as a new DBA can be tough, but it can be done
- Technical skills – sound knowledge of SQL Server is not enough on its own, the DBA needs to understand the underlying operating system and hardware, as well as the productivity tools that are available to them
- Soft Skills – the DBA needs to supplement sound technical skills with excellent teamwork, time management, writing skills, and more.
Where Does Formal Education Fit In?
I frequently get asked whether or not you need a formal degree to become a DBA. While having a formal degree is not mandatory for becoming a successful DBA, it is a great start. Let’s start this discussion talking about higher education opportunities.
Very few universities offer an Associates, Bachelors, or Masters degree in database administration. Those that do tend to be on-line schools, or technical schools, not the typical university most students attend. I believe the reason for the lack of database administration degrees in most schools is twofold. First, the market for database administrators is smaller than most other educational markets. Second, very few people come out of high (secondary) school wanting to become a database administrator. In a perfect world, a degree in database administration would be an ideal platform from which to embark on a DBA career. The reality is that there are few of these educational opportunities available.
Therefore, the most common approach people take to prepare for a career as a database administrator (either through foresight or dumb luck) is to get a degree in Computer Science or Management Information Systems, which includes database-specific courses. In fact, when many people attend a university to attain one of these degrees, they are not even aware that the career of DBA even exists, and first discover databases when taking database theory classes as part of their degree program. Such a degree provides a rounded education in computer technology and provides a great foundation for becoming a DBA.
The truth is that most people don’t go to college to become a database administrator, or even work in the technology field, so they get Bachelors degrees in other subjects, ranging anywhere from English to Business, or from Art to Math. It is not until after they enter the workforce that they realize they are interested in computer technology, or becoming a database professional.
Many people wind up as database administrators through a set of often-random circumstances. Many DBAs don’t have degrees in computer technology, and I am one of them. I have a Bachelors degree in both Economics and Business Administration, and a Masters Degree in Business Administration.
When I was getting my Bachelor degrees, personal computers were just becoming available. In fact, the original IBM PC became available about six months after I graduated. I bought one of the first IBM PCs and became captivated with the possibilities it offered. Shortly thereafter, I had the opportunity to become a computer salesperson and trainer (an odd combination indeed) at a newly opened computer store, one of the first computer stores opened in the United States. I got the job because I owned an IBM PC, which was a rare tool for most people to own at that time, and because I had taught some BASIC programming classes at a local community college.
From that first computer-related job, I began writing about computer technology, and have had a wide range of computer-related jobs over the years, ranging from application development, software support, network administration, full-time trainer, and finally database administrator. Virtually all of my computer training was self-taught, especially in the early days when computer instructors were rare. Later, I did take some week-long training classes, but most of my training was, and still is, self-taught.
While a bachelors degree in a non-computer technology field may not be as ideal a foundation as having a degree in a computer technology, it can still provide a rounded education that people can leverage to reach whatever goals that interest them. My degrees in Economics and Business Administration actually helped my computer career a lot. As I had a good understanding of accounting and how businesses worked, I was much better equipped to work in the real world than most newly minted programmers just coming out of college who had little or no experience in how businesses operated.
Now, let’s talk a little about what employers expect when it comes to formal education. Whether we agree or not, a Bachelors degree is becoming the minimum educational credential for most any type of professional job. Many companies won’t even consider someone for a job unless they have at least four years of higher education. It’s a fine line though: a two-year degree is generally not considered an adequate substitute for a four-year degree, but a Masters degree can often make a person seem to be over-educated for most jobs (unless the job specifically requires a Masters degree as the minimum educational requirement). This makes the standard four-year Bachelors degree the best route for most people. I only got my Master’s degree because I wanted to be able to teach at the college level, and this requires a Master’s degree at the very minimum.
If you look at job-wanted ads for database professionals, you will find that most employers want someone who has a four-year computer technology degree, or equivalent. In other words, they prefer someone who has a computer technology education, but they are willing to accept someone with any four-year degree if they meet the other skills and experience required by the position.
So, in order to have the best job opportunities open to you, as a DBA, you should have a four-year degree. A computer technology-related degree is preferred, but not essential. If you are starting out in your career, and want to become a database professional, the more closely aligned your education is to computer technology, the easier it will be to find related jobs.
How about those people who don’t have a four-year degree? Is it possible for them to become database professionals? Yes, but it is tougher. I know DBAs who have not attended a university, or perhaps attended for a while, but never attained a degree. These people often start with companies in a low-level computer technology job, such as working the help desk. Then, through self-study, on-the-job training, and experience, they eventually move into the DBA role.
Most of these individuals stay with a single company as they develop their skills. Once they have developed a lot of experience as a DBA, they can move to other companies, who are willing to waive the four-year degree minimum requirement in return for the hands-on experience that they offer. Of course, some companies won’t waive this requirement, and so certain job opportunities will remain closed to non-degree candidates.
Up until this point, we have been considering formal university training at the beginning of one’s career. What if you already have an IT career, but want to switch to become a database professional? For example, maybe you are a developer who wants to stop writing code and focus on database administration. How does formal education fit into this scenario? If you already have a computer technology-related degree, you are in good shape. All you need to is gain specific database-related skills and experience. If you have a non-technology-related degree, and you have lots of technology experience (say you have been a network administrator for three years or more), you are also in good shape for making the transition, if you attain the necessary DBA skills.
If you don’t have a technology-related degree, or technology-related work experience, then changing careers to become a database professional is more problematic. In this regard, it is as if you are starting from scratch. You might want to consider going back to school (part- or full-time) to get a degree in computer technology or database administration (where available). If you already have a degree, getting a second degree should be much faster.
While a good and relevant formal education is an excellent first step to becoming a successful DBA, it is just a start. Universities generally only cover database theory, not specific database skills. Because of this, you will need additional technical skills to pursue a DBA career. In the next section, we learn what those skills are, and how to attain them.
In almost every job ad you see for a DBA, experience is required. So how do you get your first job as a DBA if you don’t have any experience as a DBA, and how can you get experience as a DBA if you can’t get a job as a DBA in the first place? Most new job seekers face this same dilemma, especially if they are looking for professional-caliber jobs. So what do you do?
One option is to apply for DBA jobs that don’t require experience. If you have training as a DBA, and have a degree or certification to verify your credentials, then some companies will hire you. DBAs are in such great demand now that some companies hire DBAs without experience. If the company is large, they may even offer a training program to get you started out right.
While getting hired without experience is great if you can find such a job, most DBA jobs require experience as a DBA. The fact is that most people who become new DBAs are promoted to that position from another position within the company they currently work for. In other words, they have been working for a company for some time in some computer-related position, have a good track record, and have expressed an interest in becoming a DBA. Oftentimes, if a company cannot find an experienced DBA to fill a position, they will recruit from within, and train the person for the job. That is what I did, along with many of the DBAs I know.
However, what if you are working for a company that doesn’t have a DBA position open? Or maybe the company is too small to need a full-time DBA. What do you do then? One option would be to identify any DBA-type work done within your current company and volunteer to do it as part of your regular job. This will start getting you hands-on DBA experience, even if it is only on a part-time basis. If your current job does not afford you the opportunity to gain any DBA experience, you may have to consider changing jobs, and finding a company where DBA opportunities exist. It is either this option, or trying to find a job that will hire a DBA without experience.
What if you can’t change jobs right now, and don’t have any opportunities to get any practical DBA experience? At this point, you are running out of options. You might contact non-profit organizations and volunteer your services, or you might attend a local SQL Server user’s group and ask the members for their suggestions on how you can get experience in your local area.
However you gain your DBA experience, you will find that it is the most important asset you can have.
Mastering DBA Technical Skills
Even if you were to graduate from a university with a Masters degree in database administration, you won’t be prepared for the day-to-day work as a DBA. Learning the practical side of being a DBA takes additional technical knowledge and a lot of practical experience. In this section, we take a broad look at the specific kinds of technical skills you need to become a DBA, along with suggestions on how to attain them.
Obtaining Specialized Database Skills
As we discussed earlier in the book, it is virtually impossible for anyone to know everything there is to know about databases. Because of this, I suggested that you specialize in an area that interests you. This might be DBA System Administration, DBA Database Designer, DBA Development, DBA Business Intelligence, among others.
The key to becoming a DBA is to select a specialty, and then master all the technical information related to it. For example, if you want to become a DBA System Administrator, you need to learn about how the database engine works, how to perform routine maintenance tasks, how to performance tune, how to troubleshoot problems, and so on. Pick whatever DBA specialty interests you, and make it a point to master it, inside and out. If you don’t know what specialty to pick, I recommend you start as a DBA System Administrator. As you begin to master these skills, you will also be learning about the other specialties, and you can always change specialties when the option arises.
Not only are most DBAs expert in their chosen SQL Server specialty, they are also very knowledgeable about the physical computer hardware on which SQL Server runs. Getting the best performance and scalability out of SQL Server requires DBAs to know how to select the optimum hardware for their SQL Server. In addition, hardware skills are necessary for knowing how to best configure the hardware, along with how to diagnose and troubleshoot hardware-related problems. DBAs usually don’t depend on others to figure out problems with their servers.
Knowing the Operating System
Another critical component the DBA needs to understand is the operating system. It is fully intertwined with SQL Server and the physical hardware, and can’t be separated. The DBA needs to know how to install it, configure it, manage it, and troubleshoot it. Many problems that are associated with SQL Server are operating-system related, and the DBA needs to understand its intricacies in order to resolve them.
Whatever database specialty you choose, you will have both built-in and third-party tools available to help you do your job and be more productive. In my experience, many DBAs don’t take the time to learn how to master the tools available to them. This means they end up being less proficient and productive at their work.
Not only do most DBAs master all the tools included with SQL Server, they also learn about related third-party tools that can help him become more productive. This means they often are downloading new tools, and trying them out, seeing if they help them do a better job.
Adopting SQL Server Best Practices
In addition to the raw technical knowledge that a DBA requires, in order to know how to perform specific tasks with SQL Server, there is an additional layer of knowledge DBAs must know, and that is SQL Server Best Practices. As a DBA, you are often many faced with many different ways to perform the same task. Some of the options are better than others, especially if you factor in the requirements of a specific situation. Best Practices refers to the best way to perform a specific task, given the circumstances you are facing. For example, there are different ways to back up and restore databases. The best way to do this often depends on the situation.
Unfortunately, most SQL Server Best Practices have not been codified anywhere. Instead, you have to search them out from books, articles, and websites. In other cases, you have to learn them by trial and error. Many DBAs often develop their own set of Best Practices and use them in their day to day work, helping not only to bring consistency to their work, but also to help perform their job better and more efficiently.
How to Obtain DBA Technical Skills
As you can see, DBAs need to have a wide variety of technical skills. So how does the DBA attain them? It really comes down to time, both time for learning and time for gaining experience. As mentioned earlier, these are many technical skills required that you won’t generally learn from a university. Instead, they are skills that are acquired in many different ways. Most DBAs master technical skills by using one or more of the methods detailed below.
Most DBAs will probably use all of these training methods at one time or another. You may find that some are better suited to you than others. It really doesn’t make much difference which option you choose, as long as you take the time to learn. Mastering the technical skills to become a DBA is your responsibility. In other words, you have to design your own education program. Nobody is going to do it for you. You need to decide what you need to know to meet the educational needs of your DBA specialty, and decide how you are going to acquire those skills.
Formal Classroom Training
Formal classroom training is offered by corporate training companies, and some colleges and universities (usually non-credit), and is one of the fastest ways to master multiple technical skills, including SQL Server, hardware, and the operating system. Many of these classes are called certification classes because the assumption is that once you take the class then you should be ready to take the related certification test, assuming you want to become certified. While these can be expensive, they are an effective way to learn a lot of information very quickly, especially if the subject matter is new to you.
Seminars and Workshops
These are training sessions that last one day, or less, and focus on a very specific topic. Generally speaking, these are best for people who already have some background in the subject matter and are looking for more in-depth knowledge of a particular subject.
Conferences encompass many different learning formats, including formal classroom training, half-day and one-day workshops, short (60-90 minute) seminars, hands-on training labs, and general sessions. They even offer opportunities to ask database experts specific questions about any topic you want to learn more about, on a one-on-one basis. If you are a new DBA, conferences can be a little overwhelming, but educational. In many cases, you will see experienced DBAs attending conferences not only to learn something new, but to network and make new connections.
Learning over the Internet is becoming more and more common, but the cost and the quality of the learning varies substantially. In some cases, you can take free lessons that range from average to exceptional in quality, and in other cases you can pay a lot of money for mediocre to exceptional training. If you are paying a lot of money for on-line training, be sure you carefully check out the company first before you send them your money.
Self-Study Booking Learning
One of the most popular ways to master SQL Server technical skills is to read books. There are books on virtually every topic and at most every learning level. Books allow you to choose when you learn, but on the other hand, you have to be disciplined enough to take book learning seriously if you want to get the most out of your time.
Magazines and other Publications
There are few technical magazines or publications that focus on SQL Server, or databases for that matter. Of those that are available, they are most useful for keeping up with SQL Server news and third-party products, but they are not always the best way to learn new skills.
Websites, Blogs, News, RSS Feeds
By contrast, there are many different websites and blogs devoted to SQL Server. Unfortunately, the quality of the content varies widely, and much of it can be out of date. This means that you may have to spend a little extra time searching for SQL Server-related websites and articles that cover the specific material you want to master. Many DBAs consider this type of learning as “just-in-time” learning. In other words, if you need to learn a specific skill or task very quickly, then the Internet is often the quickest way to find the content and to learn it.
On the Job Training Opportunities
If you work for a larger organization, they may offer on-the-job learning opportunities, including formal instruction and mentoring. If you have these options available, you will want to take advantage of them.
Mastering DBA Soft Skills
If you want to become a successful DBA, not only do you need exceptional technical skills, you also need to master many soft skills. Yes, I know what you are thinking. You are thinking that if you are a technical wiz, you don’t need soft skills. Unfortunately, that’s not the case.
Following is a description of the numerous types of soft skills that the DBAs should master.
While this phrase may be overused, it is overused with much justification. While DBAs may find themselves working alone more than other professionals do, they still need to work with others. This includes talking with end-users, developers, IT professional, and managers. If you don’t get along well with others, you will severely reduce your chances of becoming a successful DBA, or even of having a long career as a DBA.
If you don’t naturally have people skills, learning them can be difficult, but you do have some options available to you. You might consider reading books on people skills, taking classes or seminars, or even individual counseling. While people skills may be hard to learn, learning them will pay off for your entire life.
I consider teamwork skills a little different from people skills, although there is a lot of overlap. People skills are about getting along well with others. Teamwork skills are learning how to work well with others. Many times, you find yourself in a team of people that you did not pick, and would not pick if you had a choice. Teamwork skills are learning how to work effectively in a team, even if you don’t like each other!
As a part of a team, you might be the leader (also requiring leadership and project management skills), or you may be a contributor, who is assigned a task that needs to be completed. Whatever role you fall in, you need to participate and work together as a team to accomplish the task successfully and on schedule.
If you have difficulty with teamwork skills then, first, be sure you have good people skills. Once you have accomplished this, then focus on building teamwork skills. There are many books and seminars available on building and managing teams. In fact, your organization might even offer one in-house. If so, jump at the first opportunity at taking it.
Personal Time Management Skills
Most successful DBAs have more work than they have time to accomplish it. To get everything done, the DBA needs to be effective at managing his of her time. It is very easy to just sit back and have work come to you, pile up, with much of it never getting done. Instead, you must be proactive when managing your time. Keep a schedule and assign priorities to tasks so you can ensure that what has to get done gets done, on time, and successfully. Don’t be afraid to say no to new tasks if you don’t have the time to do them right.
If you have trouble managing your own time, start small by using a schedule, making appointments for yourself to ensure work gets done. Using Microsoft Outlook, or a similar tool, is a great way to track tasks, appointments, meetings, and other things you need to accomplish. If this doesn’t work for you, there are many books and seminars available on personal time management.
If you want to be a successful DBA, you will find yourself managing many projects, from the smallest that take a single day and just yourself to complete, to those that make take a year and many people to complete. Project Management is like personal time management, but on a much larger scale. Depending on the complexity of the project, you may spend all of your time managing it instead of actually producing any work yourself.
Project management is a skill set most people don’t naturally have. It has to be learned through training and experience. It is much more than just learning how to use Microsoft Project and creating nice-looking PERT charts. It involves managing people and other resources over time to accomplish a specific goal. While you can buy books about project management, the best way to learn it is by taking formal classes or seminars on it. Once you have learned the basics, then it is usually trial by fire when you begin your first project. Hopefully, it will be a small project that will give you the experience you need before tackling large projects.
Leadership is a hard concept to define. Essentially, it is the ability to define an objective, to clearly communicate what the objective is and why it is important to others, and then to get other people to help you reach that objective.
When many people think about leadership, they think about politicians or corporate CEOs. While they need to have good leadership skills, so does the successful DBA. In many cases, the ability to be able to clearly define goals, communicate them to others, and then get others to work toward the common goal, is a valuable skill. Leadership can come into play in meetings, teams, or large projects. You don’t have to be a manager to be a leader.
Most people don’t consider themselves leadership material. However, in many cases that person is doing themselves an injustice. Everyone has the ability to define goals, communicate them, and get other people to help attain them. Essentially, it is a matter of planning and execution, sprinkled with a lot of people skills. While you can take leadership classes, the best way to learn leadership skills is to take on the responsibilities of a leader, and get hands-on experience.
As much as you might dislike writing, it is a very important skill to learn. Virtually every day, you will find yourself communicating with others in writing, whether it be an e-mail, some documentation, or a formal report. Unfortunately, writing is a skill that is poorly taught by most schools, including universities. If you realize you don’t have the skills to be a good writer (grammar, punctuation, style), then you need to take it upon yourself to learn these. This is not easy, especially if your previous schooling has been weak. Your best option is to take formal writing classes to master these skills. While you can read books and take short seminars on writing, it is hard to learn how to write well unless you get regular feedback.
Once you have learned writing basics, the next step is to develop your skill by practicing. The more you write, the better you will become. Many DBAs who want to become better writers get experience by writing articles for websites and magazines. As a beginner, you may not get paid much, or not at all. Nevertheless, and more importantly, you will get the experience and feedback that will help make you a better writer, a better communicator, and a better DBA.
We all have heard that public speaking is the most feared of all human activities. I am not sure that I fully agree with this statement, but public speaking does not come naturally to many people. Learning public speaking skills is important for the successful DBA because you will find yourself doing it, whether you plan to or not. For example, you may have to present at a meeting, teach an in-house seminar, or even find yourself talking at a user’s group meeting. What most people don’t realize about speaking is that you have to plan it, you just can’t wing it.
Like writing, I feel that the best way to learn public speaking is by taking formal training classes and/or seminars. You might also want to join a speaking club, such as Toastmasters International. Once you have the fundamentals down, then you need to practice and practice. Start practicing at work. Then practice at presenting at organizations you belong to, and so on. Start small and work yourself up to speaking to larger and larger groups, and from short sessions to longer sessions.
Knowledge of Legal Responsibilities
As DBAs, we often find ourselves involved in fulfilling legal responsibilities, such as maintaining data privacy, or archiving data for legally defined periods of time. In order to carry out the legal responsibilities of the job, you have to know what your responsibilities are. Simply claiming to be ignorant of the law won’t work. In fact, it is possible to go to jail for failing to meet your legal obligations.
The difficulty is in finding out what those legal responsibilities are, as they vary from industry to industry, state to state, and country to country. Because you are not an attorney, and because your manager is not an attorney, it is important that you ask the upper management of your organization to specifically define what your legal responsibilities are.
Starting Honing Your Skills Today (and don’t stop)
As we have learned in this article, becoming a successful DBA is more than just knowing a lot about SQL Server. It includes knowing about hardware, the operating system, best practices, leadership, time management, communication skills, and much more. This may seem like a lot of material to master. And it is. Nobody can be expected to master all of this in a short time period. Instead, it is accomplished over time.
If you find that you come up short in some of these critical knowledge areas, start today by picking out one or two of them and start working on them, and work on them every day until you master them. Only through perseverance and hard work will you become a successful DBA.
Being a DBA is not a static career. It changes all the time. While the soft skills you need may not change over time, your technical skills will have to be constantly refreshed as hardware, the operating system, and SQL Server evolves over time.
The successful DBA is lifelong learner, and makes learning a regular part of his or her regular activities. Some DBAs make it a point to read books, magazines, or web-based content on a daily basis, while others prefer to attend formal training or conferences. It doesn’t matter how you continue your learning, as long as you keep it up on a regular basis.