Building Your DBA Skillset

As a DBA and hiring manager, Chris Shaw has been on those sides of the recruitement process. As an MVP and active member of the SQL Server community, he knows what resources are available to help DBAs hone their abilities. Who better to guide you through the many paths to developing your DBA skillset?

Like all professional technologists, we must constantly learn new skills and concepts in order to keep pace. What skills should we develop, and where should we go to get educated and trained?

We’ll try to answer this in this article.

Three of the more important traits for database professionals are:

  • the ability to adapt;
  • to be aware of what can be done with the technology they are working with,
  • to know how to learn more about the technology in a given timeframe.

While it’s possible to teach people about how to extend their skills, the ability to adapt is not something that a traditional classroom education can easily teach, as it ultimately boils down to attitude more than aptitude. Fortunately, this attitude can be nurtured and developed alongside technical skills; indeed, someone willing to continue improving their skills and knowledge probably possesses strong elements of the right perspective, already. As a result, most of the educational options we’re going to look at are not just available to those wishing to embark on a career as a DBA, but to working DBAs looking for career advancement as well.

Choosing your Training Options

In many professions, a form of higher education leading to a degree or similar certification is almost a necessity. However, in the database profession, higher education and extensive experience are on a more-or-less equal footing. A DBA’s wages, and the decision on who to extend an offer to, will often depend on a mix of the two. Indeed, in the case of veteran DBAs with years of experience under their belts, higher education is desirable but not essential.

If you are seeking your first DBA role, or looking for promotion from a junior role, then the practical training provided by online classes, conferences, workshops, and User Group attendance can be invaluable. They are also excellent places to build your network of contacts in the profession.

1322-knowledge.jpg

Figure 1. There are a huge number of ways to get the information you need.

If, however, you are seeking a career as a DBA but lack direct experience of working with databases, then a relevant qualification or certification is a good place to start. However, the sort of real-world experience that can be gained from the more informal education paths may still be equally important to developing your skill set.

The informal routes to improving your skills are always worth pursuing, but the balance you strike between those and “traditional” methods will depend on your circumstances and needs.

Traditional Education Options

The options available for becoming a database professional have dramatically improved over the last 10 years. The quality and quantity of traditional education sources have grown, thanks in part to the rise of online resources. Traditional schools and institutions have come to realize that the expert management of data in the computing environment, is essential in today’s business environment, so they have become far more willing to provide appropriate courses

Colleges

Colleges and Universities are starting to develop specialized Computer Science degrees, but only a select few offer programs that are specifically database-related. While the range and quality of classes is increasing in the colleges that do offer database programs, I would still highly recommend that anyone considering formal education as a route into the database profession performs some thorough research. Find the colleges offering the best courses and the best instructors.

Because the technology changes so quickly, the better instructors are professionals that not only teach, but also use the technology on a regular basis. These instructors can pass along not only the technical “how-to”, but also the best practices and understanding of why things should be done a certain way. Many of the top professionals that work with SQL Server also teach classes about SQL server, and their wisdom is invaluable.

Just to give you a sense of what’s on offer, a recent Internet search provides a good example of the classes that a Computer Science degree (with a focus in database technology) now includes:

Required

  • Quantitative Methods for Information Systems
  • Business Data Communication Networks
  • Database Design and Implementation for Business
  • Information Systems Analysis and Design
  • IT Strategy and Management

Concentration

  • Data Mining and Business Intelligence
  • Advanced Database Management

Elective

  • Database Security
  • Designing and Implementing a Data Warehouse
  • Database Administration

Database professionals may not agree on all aspects of such courses, but it’s certainly as big step up from a single class in introductory SQL.

Technical Schools

One immediately noticeable difference between technical schools and traditional colleges or universities is the overall cost of attending. The traditional school, such as a University, may require you to take classes that are not directly impacting your career in order to achieve a diploma. These classes come with their own costs, in terms of both time and money. A traditional University often also requires a full time commitment, whereas technical schools generally cater to individuals who maintain a full time job, and are more inclined to offer associate degrees.

It’s true that attending a traditional college as opposed to a technical school often makes a bigger impression on your resume. However, from a hiring manager’s point of view, in terms of database skills, there is not much difference between candidates who attended a prestigious four year school and those who went to a technical school.

“If you are considering
a technical school,
check their accreditation
carefully”

That said, if you are considering a technical school, check their accreditation carefully. Accreditation requires adhering to a strict set of guidelines set by accreditation boards to maintain a certain standard of education.

Most schools have accreditation and work hard to keep it, and validating that a school is accredited helps protect you as the student. Many of the classes taken at an accredited technical school or community college will roll over to a traditional school if, as a student, you would like to obtain a more traditional degree.

Equivalent Experience

Many job postings specify that a degree or “equivalent experience” is required for the applicant to be eligible for a role. Somewhat frustratingly for applicants, the definition of equivalent experience is entirely unregulated. Essentially, each employer is left to define for themselves who is qualified to become a database professional. A company that has a strong need for a database administrator who understands database mirroring may consider a candidate’s single year of experience to be equivalent to another candidate’s success in a database mirroring class. To be fair, working with a database feature in production does generate many more “real experiences” than working with the same feature in a lab environment, but drawing an equivalence between those experiences and a certified qualification is too often a subjective judgment.

1322-DBA.jpg

Figure 2. Learning from an educational enviornment and learning from experience are both valuable.

Unfortunately, there is no neat solution to this problem, and it falls to the applicant to research the company’s needs and expectations (in terms of your personal characteristics as well as your technical skills), and then consider not only what information should be included in the education portion of their resume, but how that information on should be presented.

Microsoft Certified Classes

Microsoft offers classes for most of the software packages they sell, which can last between one day and one week. The classes are taught by certified Microsoft Trainers and tend to follow a standard pattern of lectures, followed by practical labs, followed by Q&A sessions.

“Companies understand
these classes will not
create experts, but will
generate the core
knowledge needed to
start the advanced
learning process.”

The classes tend to be thorough and focused, generally starting right from the basic installation of the relevant software, along with installation options, and including a chance to try out the tools and features in well-equipped, high-spec labs. However, these classes frequently don’t dive deep into the advanced features of SQL Server.

Upon completion of the class, students are given a certification of completion, which is not to be confused with a certification. Often companies will use these certified classes as a method to give employees a foundation in a new technology. Companies understand these classes will not create experts, but will generate the core knowledge needed to start the advanced learning process. These classes are all listed at: http://learning.microsoft.com/.

Certification

Microsoft also offers a range of Certifications designed to test a person’s knowledge and skill in a specific technology, such as “SQL Server 2008”, or in a broader discipline, such as “Database Administration”. Some of the certifications that a Microsoft-centric DBA may want to consider include:

  • Microsoft Certified Technology Specialist (MCTS):

    There are a range of certifications based around the SQL Server technology, such as MCTS: SQL Server 2008, Database Development. A number of the server software offerings, such as Exchange, SQL Server and Access, begin with this certification.

  • Microsoft Certified IT Professional (MCITP):

    This certification combines multiple exams to test an individual’s knowledge of a broad discipline, such as Database Development, Database Administration, or Business Intelligence. Generally, attaining MCITP will require you to pass one of the relevant MCTS exams.

  • Microsoft Certified Master (MCM):

    An advanced certification that goes beyond taking the exams and includes experience as a condition for passing. Yet even completing the exams and meeting the experience requirements does not guarantee the MCM certification, as advanced knowledge in the specialist area is also a requirement. The cost of this certification can be high, but it is very well respected in the industry because of the difficulty in obtaining it.

  • Microsoft Certified Architect (MCA):

    An advanced certification is for individuals that work closely with Microsoft on their products, either at Microsoft or with a Microsoft partner. An MCA has completed more than the tests and classes, as this certification requires an advanced understanding of the specific product in question.

Microsoft Certification

Figure 3. The many paths to Microsoft SQL Server Certification. Image © Microsoft

While most managers will not consider certification to be an adequate replacement for real experience with the relevant tools and technology, many will take them into account as a ‘differentiating factor’ between two candidates of similar experience. Furthermore, they are also a good indication of a candidate’s desire to learn and keep up-to-date with latest technology in their field.

Boot Camps

A boot camp is a class with one goal: to assist an individual in passing certification exams. They can be as short as a single day or can last several weeks, depending on the number of exams the individual wants to take. Their schedules can be compared to finals week in traditional education arenas, with a lot of studying and a pass-or-fail exam at the finish line.

On the plus side, boot camps offer a quick route to becoming certified. People with experience in a specific product can focus on upgrade tests, or on areas where they may not have traditionally worked.

On the negative side, boot camps offer little in the way of practical experience, and are an expensive alternate to other education routes. Many are focused solely on getting you through the certification exam and, while this may sound like an advantage over other education routes, in my experience, when people are “cramming” purely to pass a test, they rarely retain the knowledge for long afterwards.

Ongoing Education

As a database novice, or an established professional looking to take their career to the next level, there appear to be endless classes and resources to aid your education. And yet, once the classes are completed, and the next conference is months away, the need for education and assistance in solving real life problems will continue. This is where you need to rely on the wide variety of day-to-date resources available to the SQL community. Things like workshops, SQL Saturday’s, User Groups and your own network. From an employer’s point of view, your regular participation in knowledge-sharing resources also demonstrates your desire to excel in your chosen field.

Meeting and Mentoring

As a DBA, you will be on a journey of continual learning, partly to refine and enhance your skills, and partly to keep up-to-date with current technologies. The informal education options available to you will help you on that journey, as will your willingness to participate in the database technology community.

And just as good chess players become great chess players by playing with people better than themselves, database professionals who work with each other will continually be encouraged to meet and exceed their peers’ skills. As a young or novice database professional, mistakes can be avoided when senior professionals are around to help you to navigate through the more difficult aspects of SQL Server.

“There is no better way
to become an expert
on a topic then to teach
that topic to someone
else, so you should give
as well as take within
these communities.”

Likewise, senior database professionals keep their skills sharp by assisting novices. Look for a mentor in your social networks, user groups or even at work, and if you’re a more senior professional, be willing to mentor others. There is no better way to become an expert on a topic then to teach that topic to someone else, so you should give as well as take within these communities, be aware that being a mentor yourself sharpens your skills.

As a hiring manager myself, I appreciate that this kind of practice is absolutely invaluable, because although training budgets can quickly be reduced, the need for advanced skills do not diminish with them.

Workshops

Workshops are short but focused events that tend to dig deep into a specific topic – most last 6-8 hours, but others can last a couple of days. Most major conferences include pre-conference seminars which are essentially workshops by another name, and tend to cover specific technical topics. Occasionally they’ll cover more general topics such as “what do I need to learn in the first 30 days of my DBA job”.

In addition to pre- and post-conference workshops, there are a number of single of multiple day workshops available in any given month, many of which are sponsored by companies that may be trying to sell a service or a software package. A swift internet search and a keen eye on newsletters and online communities should quickly reveal your options.

Conferences

Conferences are larger events, offering many different speakers talking about a range of topics. A few of the more popular conferences for SQL Server include the PASS Summit, Tech Ed (now Microsoft Ignite), and SQL Connections. As mentioned earlier, many conferences have the days before and/or the days after designated as seminar days, where speakers come in and teach workshops.

1322-SQLBits-Brighton-2011-Awards.jpg

Figure 4. SQL Bits 8, the largest SQL Server event in the UK. Photo © Brad McGehee

Workshops aside, conferences are a great way to broaden your skill sets by sitting in on sessions where speakers will focus on a specific feature of the technology for 75 to 90 minutes. In addition, each year, a number of authors publish lists on why going to a conference is beneficial, and most of these lists mention these benefits:

  1. Meet the industry experts and exchange ideas with them;
  2. Meet with vendors to witness new tools that could potentially make your time more productive;
  3. Stay up to date with the new technologies and theories;
  4. The return on investment for your education dollar is unmatched;
  5. Access to many advanced sessions that aren’t taught in traditional classes;
  6. Meet other database professionals and exchange ideas with them;
  7. Networking and building connections eases the search for new positions (or hires, if you’re a more senior professional);
  8. Events that surround the conference make it easy to socialize with your otherwise exclusively professional network;

Code Camps

There are also options for database professionals who either can’t afford to pay for the conference or can’t take that much time away from work. A number of user groups and organizations host single-day conference-style events, known as SQL Saturdays or Code Camps.

Attendance at a code camp is generally free of charge and lasts a single day, and many of these events are held on a Saturday and at locations that can support many people. These events are held all around the world to cut down on the travel costs, and some of the bigger events can consist of 50-100 sessions.

A good way to hear about these events is to ensure that you have signed up for the various free newsletters that circulate your technology community. Local SQL Server User Groups, PASS and SQL Server Central are just three easy examples.

These events are priceless in terms of the amount of practical information that they offer, and all for free. If an event is taking place within a day’s drive, or an inexpensive flight, then I’d encourage you to go along. It’s much cheaper than attending a full conference, and the learning opportunities are excellent.

Online Events

Thanks to the widespread availability of high speed internet, online video training (also known as webinars) and even online conferences are becoming increasingly common events. While they vary in terms of cost and number of sessions, some events, such as the 24 Hours of PASS as well as many Live Meeting Events offered by Microsoft, are free. On the other hand, some events, such as vConferenceOnline, offer multiple tracks with many of the same speakers as the “real world” events, but with a smaller attendance fee.

Online events allow you to see sessions without leaving the your home or office, and are a great way to start developing new skills at a fraction of the costs of in-person classes and conferences. As with Code Camps, to get more information about online events, I recommended you stay up to date with some popular newsletters and the major organizations that host in-person classes and events.

Note: When comparing the costs of online events to in-person events, remember to include the cost of flights, hotels, food, transportation to and from the event, and the cost of storing your vehicle at the airport. A recent survey of online event attendees said the online event saved them, on average, over $2,000.00.

Before you sign up for an online event, do your research, as the descriptions are sometimes a little misleading. For example, one event claims to offer conference-like sessions, but you never get to see the speaker, only demos and screen shots. This can be a great way to learn as long as that’s how you like to learn, but it is most definitely not conference-like.

Because you won’t be in a ‘learning environment, I would recommend that you attend these events from a quiet room in your office, or even a quiet corner of your local coffee shop, where you won’t get interrupted.

Online Communities

The Internet has plenty of online communities that offer a great place where people with common technical interests can share their ideas and gather information.

These online communities have grown from just providing articles, to including editorials, forums, scripts, and videos. Some of the bigger online SQL Server communities include SQL Server Central, and SQLPASS.

Potential employers may consider your activity in an online community as an example of a candidates desire to learn their trade. A word of caution, though, if you decide to mention these activities in your résumé, it would be wise to make it clear that you contribute to the wider world of SQL Server in your own time.

1322-sql_online_communities.jpg

Figure 5. Just a few of the many online SQL Server communities out there. Clockwise from top left, Simple-Talk, SQLPASS, SQL Server Magazine, and SQLServerCentral

Forums

Forums are generally components of larger online communities, allowing users to post questions to their fellow community members, and answer questions in return (when they have the necessary knowledge). This second element is crucial: in healthy and active online communities, the members posting questions will also attempt to assist their peers. This helps both parties to develop their skills.

An advantage to participating in online forums is that their content often ends up being indexed by search engines such as Bing or Google. This makes the questions, answers and, on a more selfish note, your contributions all searchable by the wider community of the internet. There are a number of forums that a SQL professional can participate in, and some of the more popular ones include SQL Server Central, SQL Team, and MSDN.

Blogs

Contributing to blogs, or starting your own, can be a positive thing for your skills and resume. To anyone who reads your blog (professional network and prospective employers alike), it’s a highly visible indicator of your knowledge and your commitment to sharing it.

Successful blogs have consistently high quality posts on them, but this is not to be confused with posts on advanced topics. Every database professional had to start somewhere and learn the basics, and a blog which covers a wide range of topics and a wide range of skill-levels is beneficial to many, provided the posts are well thought out and well written.

Bear in mind that you will only impress your readers if you write about topics which you know about, because many readers of technical blogs will subscribe to them looking for technical tips or an informed opinion. In most cases, the audience who you are writing for will be database professionals very much like yourself, so what interests you is quite likely to interest them.

As well as the more common blog platforms (such as Blogger and WordPress), some of the online SQL Server communities (SQLBlog and SQL Server Central) also offer free technical blog space to their members.

Article Writing

As your skills and experience grow, you may find that you have been faced with problems which may not be well documented, and very few problems are related to only one environment. These situations are great opportunities to help the technical community at the same time as adding to the accomplishments on your résumé.

The first step to becoming a technology author is in picking a topic; it would be wise to focus on topics that you know well or experiences like the one mentioned above, and technologies that you use often in your day to day activities. Look at the article as an opportunity to document how you complete that task, and ways in which you have made your job easier or more efficient. Many of the online resources and communities accept article submissions, so you could consider sending your articles to SQL Server Magazine, SQL Server Central, and last but not least, Simple-Talk.

User Groups

When professionals in the same local community meet to discuss SQL Server, a User Group is generally what brings them together, or else is about to be created. The user group meetings are normally free to attend, and may even have a sponsor to supply anything from pizza for the members to meeting space and speakers.

User groups will traditionally meet after normal business working hours, and most meetings start with a networking period, followed by speakers sharing information about a wide array of topics. These meetings typically last a few hours. Alternatively, some user group meeting will meet at lunch and encourage members to bring their afternoon meal, along with discussion topics for the meeting.

“Volunteering for the local
group is a key way to
make connections that
could potentially assist
you in job searches, at
the same time as adding
relevant technical
experience to your résumé.”

Speakers for the local user group, much like many of the speakers at Code Camps, normally come from the local community, and are often looking to develop their speaking skills for bigger events. On occasion, speakers that are marketing a product will come to speak at the local group meeting; thankfully, most user groups work with the sponsored speakers to ensure that the material includes information which is useful in and of itself!

Since most user groups don’t have large budgets, they mainly rely on their local membership for speakers, meeting places, volunteers and officers for the group. Volunteering for the local group is a key way to make connections that could potentially assist you in job searches, at the same time as adding relevant technical experience to your résumé. As an officer in a user group, you could be asked to speak, organize events, lead projects and offer leadership to new members, and these are all skills that could be used in the workplace.

Speaking

Many people have a fear of public speaking, but this skill can be used in many more contexts than just technical events, and is almost indispensable to more senior professionals. Consider this: after any outage, management is going to want to know what happened and how it can be avoided in the future. Management may also ask for budget planning information. The ability to speak in front of a group of people is a huge asset in these situations, and one that you will always be able to use.

The challenge of getting started in public speaking is more one of nerves than finding the opportunity to speak. User groups are often looking for speakers, and will often open the floor to anyone who makes a request to present. They are an excellent place to start getting used to speaking, and it will help you to develop and improve these skills if you ask your audience for feedback.

Volunteer Work

For all that I’ve described a huge variety of ways to discover information, there is nothing to top actual experience when it comes to improving your skills. A great way to gain experience on your own, without having to purchase servers, is to volunteer with public organizations both charitable and otherwise. Many of these organizations have been able to purchase hardware and software at discount prices, but probably rely on volunteers to help them install and configure the systems.

Volunteering is also a great way to show on your resume that you have the personal motivation to continue to remain on top of technology, and will also give you the opportunity to work with aspects of the technology which are comparatively new to you.

Example: I was working on a technology team for a charitable organization when table partitioning was released in SQL Server 2005. The database schema at my full time job did not provide me the opportunity to work with table partitioning, yet I was able to release this at the charitable organization because of their needs, and was able get the practical knowledge that I needed to supplement my SQL Server 2005 skills.

Summary

Your skills can be acquired and honed through a number of different routes, and the particular path you choose should reflect how you learn the most efficiently, and the skills that you already possess. Do you learn better online, in person, reading a topic or listening to a lecture? Maybe a hands-on approach will give you best chances of success? No matter how you learn, it is important to continue to learn and stay up to date with all the new technologies throughout your career.

The day that you stop learning new things with the SQL Server product is the same day that your skills start to become stale. There are so many changes between versions that your skills can become dated very quickly. To increase your opportunities for an interview or advancement, the best way to present yourself on your résumé is by showing you are dedicated to keeping your skills up to date.