In this blog entry, I’d like discuss and explore the characteristics that define an Exceptional DBA. Few DBAs will have all these characteristics, but the best DBAs will have most of them.
If you are reading this blog entry, then I think I can reasonably assume that you already enjoy technology, a key trait of all Exceptional DBAs and IT professionals. The only reason I mention this obvious point is that I occasionally run into DBAs who actually don’t appear to enjoy working with technology. For example, at conferences I often sit at breakfast or lunch tables with attendees who I don’t know. I ask them about their job and why they are attending the conference. It is always a shock to hear somebody tell me that the only reason they are at the conference is because their boss made them attend. The only advice I can really offer these people is this: find yourself a new career.
A challenge is an ambiguous concept. That which presents a challenge to one person may be a slam-dunk to another. For example, writing a Transact-SQL script might be a daunting task to some DBAs, but for others, it is something they can almost do in their sleep.
Every DBA faces a different set of challenges in their daily work, and it is not necessarily the ability to respond immediately to a given technical challenge (for example, by dashing off a SQL script) that sets apart the Exceptional DBA. It is more their attitude toward challenges that makes the distinction.
Exceptional DBAs look at challenges as opportunities to learn something new; to do something different. They aren’t afraid of challenges, they look forward to them. In many ways, challenges are just a part of the normal routine of being a DBA.
Enjoys Problem Solving
Every day, DBAs solve problems. They may be as simple as determining why a backup failed, or as complex as creating a disaster recovery plan for a bank. The Exceptional DBA regards problems as a new challenge (see previous trait); a puzzle to solve. This is why they come to work, because each day is different and challenging. If they don’t have new problems to solve, they get bored. In other words, the Exceptional DBA enjoys the process of problem solving.
While Exceptional DBAs enjoy problem solving, they also realize the following important points:
- Not every problem can be solved.
- Some problems can be solved after time spent troubleshooting, but can wait.
- Some problems can be solved after time spent troubleshooting, but need to be fixed now.
When cases of type 3 arise, the Exceptional DBA has no issue with asking for help. The Exceptional DBA is comfortable with the idea that they don’t know all the answers and that, if time is a problem, calling in help sooner rather than later is the best approach to take. This could mean posting a question on a forum, or calling Microsoft SQL Server Product Support, or whichever other route is open to them in order to find the answer the need, quickly.
Good with Details
For a DBA, the job is all about details. First, and foremost, the Exceptional DBA must have the detailed, in-depth technical skills they need to perform their daily work. There is no such thing as an “almost perfect” backup or a “fairly good” transaction. In most cases, something either works or it doesn’t, and the Exceptional DBA must be intimately familiar with the many and detailed steps required to perform their work.
Second, Exceptional DBAs must be very thorough and meticulous as they perform their work. For example, if a DBA want to set up security on his or her servers, to prevent any possibility of unauthorized access, they must carefully sort through the many possible ways security could be broached, and protect against each one.
Third, Exceptional DBAs need to be exhaustive and comprehensive when performing their work. For example, when creating a disaster recovery plan for an organization, the DBA must consider every possible disaster, determine how it might affect his or her servers, and develop a plan to minimize the consequences of the disaster occurring.
I am not sure that I would list “enjoying details” as a required characteristic of being an Exceptional DBA, but dealing effectively with details is critical.
As ironic as it sounds, one of the only constants in the career of the Exceptional DBA, is change. While DBAs many not see change every day, changes big and small occur frequently, often with little or no warning. For example:
- A new SQL Server instance needs to be installed and configured.
- Another SQL Server needs its hardware upgraded.
- Patches have to be added to all SQL Server instances on a monthly basis.
- Your current manager quits and you have to “break in” a new one.
- A new ERP system is to be implemented in the company by the end of the year.
- Your company goes out of business and you lose your job.
Sometimes it can be fun, and other times disheartening, but the Exceptional DBA regards change as inevitable. Instead of fighting it, they embrace it, and do the best they can with what is given to them.
If you don’t love to learn, there is no way you can keep up with the constant changes in database and related technology. While some general skills, such as problem solving, only have to be learned once; other skills, such as technology-specific skills, have to be relearned over and over again as technology changes and evolves over time. The only way to keep up is to become a lifelong learner. You need to take as much time as you can find to not only keep your current skills up to date, but also to add to your repertoire.
The Exceptional DBA realizes the need for constant learning and includes it as part of his or her schedule. For example, scheduling in time for learning a new SQL Server skill, reading a professional publication, checking out the latest SQL Server blogs, attending classes or user group meetings, or even attending national conferences, are all ways the Exceptional DBA can keep up.
For the Exceptional DBA, learning is a part of his or her lifestyle and job, not just something that has to be “squeezed in” only when necessary.
The Exceptional DBA accepts responsibility not only for their assigned tasks, but also for their actions. For example, if the DBA is responsible for safeguarding the data integrity of an organization, then the DBA will take all prudent steps required to see that the data is protected.
If that same DBA makes a mistake that causes some data corruption, then he should immediately stand up and admit to the mistake, and not try to minimize his involvement. Besides taking responsibility for their actions, the Exceptional DBA will also offer solutions to prevent the problem from happening again.
Professionalism on the job covers many different areas, but it really comes done to a single idea: respect for others and the organization you work for. Another way to look at professionalism is via the old adage: treat others as you would like them to treat you.
As a DBA, you are often privy to many company secrets. You have access to data that could damage individuals, or your organization, should it be made public. This knowledge carries with it a heavy responsibility. From the organization’s point-of-view, it is your responsibility to protect it, insuring that only those who need access to the data have it. If the data is lawful then this is an easy responsibility to uphold. You just don’t share it with any person who is not authorized to know about it.
On the other hand, you are bound by legal responsibilities outside of your organization. Although rare, you may, on occasion, discover data about unlawful activities. This may require you to investigate the best options you have available, such as contacting an attorney, asking advice from a trusted friend, or even quitting your job if aren’t comfortable with the situation. You are not required to be a hero in these occasions, but you are expected to meet your legal obligations as a citizen.
Another aspect of being trustworthy is being honest. Just as you should be honest in your personal life, you also need to be honest in your work life. Yes, there can be justification for the occasional white lie (your boss’s new outfit really looks cool), but when it comes to substantial issues, honestly is the only option. If you are asked how long it will take for a particular project to be completed, offer your honest advice. Don’t tell the person what you think he wants to hear. If you are asked to do something you don’t want to do, don’t say you will, then not do it.
The Exceptional DBA needs to develop a reputation beyond reproach.
Being dependable is much like being trustworthy. It is a sign of who you are and how you interact with others. Some examples include:
- You do what you say you are going to do. If something prevents you from doing what you said you would do, then you let the people involved know about it as soon as possible.
- You do what you are expected to do. If it is your responsibility, for example, to write a budget every fiscal year, then you perform that task as expected, and turn in the budget on time.
- You are punctual. You show up to work on time, and you show up to meetings on time.
Of course, not only do you do the tasks agreed to, and expected of you, but you do them well, and you complete your projects on time. The Exceptional DBA needs to have a least “four nines” dependability level, just as you expect your SQL Servers to have “four nines” up time, or more.
Can Work Well Independently or in a Team
As a DBA, you will often have the opportunity to work by yourself, and as part of a larger team. You need to be able to do both well if you want to be an Exceptional DBA.
The Exceptional DBA will encounter many times when he or she works alone. This could include writing scripts, monitoring server performance, troubleshooting problems, or writing documentation. The Exceptional DBA is able to work quietly, alone, without the need to constantly interact with others.
Conversely, the Exceptional DBA will often work as part of a team. This might be a team of production DBAs who oversee a large SQL Server farm, or maybe the production DBA is part of a development team, creating an in-house application. In these cases, there will need to be a lot of communication by everyone on the team in order for everything to run smoothly.
I would like to make a personal observation here. Many DBAs I know are…how can I say this politely… “independent” types. By being independent, I mean that they think they are smarter than most everyone else at their organization, and that only they know the best way to manage SQL Server, or to write SQL Server-based applications. While it is great to be a smart DBA, being a smart DBA does not make you an Exceptional DBA. By being independent, many DBAs sabotage their careers because they are not good team players.
Manages Time Well
The study of economics is all about learning how to find a balance between people who have unlimited needs and wants, and a physical world with only limited resources. The same can be said about the work of the DBA. Most organizations have a seemingly insatiable desire to assign DBAs (and all IT staff, for that matter) a huge amount of work. On the other hand, the DBA only has a limited amount of time, and physical resources, in which to produce the work. The result can be a state of constant conflict between the DBA and the rest of the organization.
This situation is further complicated by the many warring factions within an organization, each one feeling that their needs are more important than the needs of other factions. For example, one project may need the use of two DBAs for six months, and another project may need a DBA for three months. If the organization only has two full time DBAs for all production and development work, this presents a problem. Technically speaking, it is up to the DBA’s manager to find the right balance. However, in the real world, this often is not the case, and DBAs often ends up with more work that they can realistically accomplish.
There is no easy way to resolve this problem. Having a very understanding manager will help a lot, but the only real choice for the DBA is to be as efficient as he or she can be, making the most of the available time and resources.
The Exceptional DBA realizes that he or she can only offer a finite amount of work in a given amount of time. To maximize the work-to-time ratio, the Exceptional DBA carefully manages time, focusing on what is important and ignoring what is unimportant. He or she also looks for every possible way to extend their capacity to work, by making full use of productivity tools.
Can Communicate Effectively, Both Orally and Verbally
Whether you like it or not, DBAs must be effective communicators. Unfortunately, the art of good communication is not taught in most schools, and many DBAs find themselves in uncomfortable positions because of their lack of communication skills. Here are some examples of where good communications skills are needed by the DBA:
- Making a PowerPoint presentation at a group meeting.
- Convincing your manager that a SQL Server needs more RAM.
- Writing hardware specifications for a new SQL Server.
- As a DBA consultant, making a sales presentation to a potential client.
- Writing a proposal to purchase a third-party tool to administer your SQL Servers.
- Documenting SQL Server development best practices for use by developers.
- Writing a disaster recovery document.
- Creating and writing a budget proposal.
- Teaching an in-house class to other DBAs or developers.
- Speaking at a conference or user’s group meeting.
- Sharing information in a public forum.
- Writing a SQL Server or personal blog.
- Writing articles for SQL Server community website and publications.
- Writing a resume.
While a typical DBA may not participate in all of the activities above, the Exceptional DBA often participates in all of them, and more. Becoming an effective communicator is one of the secrets of becoming an Exceptional DBA. After all, if you can’t communicate how good you are to others, how can you ever be recognized as an Exceptional DBA?
An important part of becoming a good communicator is being a good listener. Many people confuse “hearing” with “listening.” To listen well means not only to hear what the person is saying, but also to understand what the person is saying, and why they are saying it.
The Exceptional DBA knows that what people say is not always what they really mean. By asking follow-up questions, or at least by repeating what the other person said to verify that they heard the person correctly, the DBA can better understand what the person needs, and take appropriate action. Keep in mind that not everyone is a good communicator, and that you may often have to help others communicate with you.
I have seen this over and over again in my career. A new DBA starts with a company, all gung-ho about making his or her mark. He offers lots of ideas and advice, but nobody really listens, and he eventually becomes discouraged. Either he ends up quitting and finding different work, or staying and ending up like Wally, the cynical engineer in the Dilbert comic strip.
In another case, I know of a DBA who expected everybody to do things his way. When this did not work out for him, he blamed the organization and his co-workers. As far as he was concerned, everyone else was the root cause of his problems and he became a complainer and whiner, and nobody wanted to work with him.
DBAs must have realistic expectations about their job, and they must come to grips with the reality that no job will meet all of their expectations. Not even self-employment will necessarily meet 100% of one’s expectations. Every job has its good and bad points. The Exceptional DBA understands this and accepts it. When things don’t work out as planned, the Exceptional DBA learns from the situation and moves on. I don’t mean moving to another job, but moving on with their job and life, and not letting small problems become big problems.
Of course, there will be cases when a job is so bad that you have no choice but to leave, but this is rare, assuming you had realistic expectations in the first place. If you find that you are bouncing from one job to another, you may want to reevaluate your job expectations, and try to make them a little more realistic.
Being flexible in your approach to your job is also being realistic about your job. In other words, the job of the DBA changes over time, and you have to be flexible and be willing to change as the job changes.
Flexibility is important on a day-to-day basis, as well as when dealing with the “bigger” changes. For example, when you came to work today, you had planned on writing some needed documentation, but instead you find out that you needed to help a developer tune a poorly-performing query. Or maybe you had planned on installing a new SQL Server, but a blocking problem started that you needed to investigate right away, because users are complaining about not getting their work done. In other words, the Exceptional DBA realizes that things change, and that he or she has to adapt to the situation at hand.
It takes a half hour for the new service pack to install. It takes six minutes to reboot the server. The query takes 16 minutes to run before it finishes. It takes an hour to explain to a new developer the organization’s best practices for writing stored procedures. The backup takes four hours to complete.
The DBA is often faced with one request after another, often in a rapid-fire sort of way. On the other hand, many DBA’s tasks take time, lots of time, wasted time. Sometimes the waiting can be used to perform other tasks, and other times it can’t. However you look at it, DBAs end up spending a lot of time waiting for something to happen before they can proceed with their next task.
The Exceptional DBA learns to be a patient person, to expect that tasks will take longer than they had hoped. Moreover, they build this into their schedules, as they are realistic and know that waiting is just a part of the job of the DBA. Exceptional DBAs also take this time to relax, to find a little quiet time out of an often-turbulent day.
All of the Exceptional DBAs I know have a passion for their jobs as DBAs. The really enjoy their work, and it is a big part of their lives. The reasons they are passionate vary widely. It may be because they enjoy technology, or because they feel they are providing a worthwhile service in the marketplace. It may be that they like to share their knowledge with others, or like to be creative in their work. It may be because they work for a great organization or have great co-workers. Each Exceptional DBA has their own reasons why they enjoy their work, making it hard to describe all of them here.
Not only does enthusiasm help a DBA become an Exceptional DBA, being an Exceptional DBA helps fuel even more enthusiasm. This is a positive feedback loop than can contribute to a very rewarding, lifelong career.
While self-confidence helps the Exceptional DBA reach his or her goals, self-confidence is also the reward that the Exceptional DBA receives for a job well done. If you are seeking to become an Exceptional DBA, you need to start out with clear, simple goals. Once you have attained these, you can set yourself additional, more difficult goals. If you proceed slowly like this, you will begin to develop more confidence in your abilities. Moreover, the more self-confidence you gain, the easier it will be for you to continue on your path to becoming an Exceptional DBA.
So what do you think? Do these characteristics accurately describe the Exceptional DBA? Have I left any important characteristics out? Please post your thoughts below.