Since I've been a DBA for 25 years, I'm often asked "How do I become a DBA?" And the answer is as varied as the person asking the question. The most important thing to remember is that the job of a DBA requires a 24x7 commitment. Being an Oracle DBA can be a very stressful, thankless job, and many DBA jobs require the DBA to be on call on Thanksgiving and Christmas to perform downtime maintenance. Plus, the DBA is expected to constantly keep up with the rapidly changing technology, working nights and weekends on a regular basis.
It's not uncommon for a DBA to earn as much as a mid-level manager, and the high pay is a double-edged sword. The DBA must constantly justify their salary, and a good DBA who automates many of their job functions may find themselves looking for a new job.
Here are some common questions that I'm asked about becoming a DBA.
What classes should I take to prepare for a job as a DBA?
In grad school, all IT and CS students take courses like Operations Research where they learn to develop complex decision rules and them apply them to real world datasets.
Using Oracle as the back-end storage of data and decision rules is a great way to prepare for real-world applications of expert systems, DSS and AI. Also, advanced statistics courses (multivariate analysis) are a good way to prepare for a career in Oracle data mining and business intelligence (BI). For details, see my notes on expert systems and decision support systems using Oracle.
What college degrees are best for the DBA?
Companies are now requiring a combination of technical and managerial skills and the best fits are those with an undergraduate degree in Computer Science and a MBA in Information Systems. Employers need a DBA who can understand business systems areas (accounting, finance, marketing) and MBAs are a perfect fit for the DBA job role. The hard-working kids who have distinguished themselves by graduating from a top-tier university are aggressively courted by the major software vendors (Oracle likes to hire from Harvard, MIT, etc.). Oracle Corporation has published their choices of schools for "top candidates," a virtual laundry list of the world's most challenging and demanding universities:
According to the e-mail, Oracle recruits "top candidates" for product development from MIT, Stanford, CMU (likely Carnegie Mellon University), Princeton, Wisconsin, Yale, Dartmouth, Brown, Caltech, Berkeley, Harvard and Cornell.
In addition, the e-mail continues, Oracle will consider "top candidates" from the University of Texas Austin, Duke, Penn, Georgia Institute of Technology (grad students) and "any top international schools."
Do I really need a masters degree to be a DBA?
Not always, but articles note that tech jobs are way up for those with advanced degrees and experts say IT hiring is up 40% for top college graduates. Remember, there is a difference between working in database administration and being "the" DBA, the person solely responsible for the corporation's data resources.
How much can I earn as an Oracle DBA?
Here are my notes on Oracle salary compensation, and there is a wide variation according to the responsibilities of the DBA job, the quality of the DBA, the cost of living and the experience of the DBA. Here is a good Oracle DBA salary survey showing the national average at $65,000 per year.
However, there is a huge variation in DBA salary. Back in 1981, the average DBA salary was about age+10, and a DBA right out of college could expect to earn $32k/year, a nice salary back when gasoline was 80 cents a gallon. Today, inflation and increased demand have increased the DBA pay scale:
- Low-tier DBA: An Oracle DBA without college and less than 10 years' experience earns about age*2, with a 25-year-old earning about $50K/year.
- Middle-tier DBA: A DBA with a bachelor's degree and 10 years' full-time work experience can earn up to age*3, with a 35-year-old DBA earning about $105K/year.
- Senior DBA: A senior DBA with a master's degree, 20 years' experience managing a mission-critical database can earn up to age*4, with a 45-year-old DBA manager earning up to $180K/year.
- Superstar DBA: For those DBA superstars with advanced degrees and specialized skills (RAC, Oracle Apps), the pay is often as high as age*6 and a 35-year-old superstar can earn up to $210K per year.
In sum, becoming a DBA requires a lifetime commitment. Large corporations will not entrust their life-or-death data to just anyone, and most insist on hiring DBAs who have demonstrated a commitment to the profession, constantly acquiring new certifications, degrees and knowledge.
Becoming an Oracle expert
The term "expert" is used with abandon in the database industry and many people complain that there cannot possible be so many "experts" in Oracle technology. I disagree.
Oracle is the world's most robust and flexible database, yet the complexity of Oracle is not rocket science and anyone with a decade of real-word Oracle experience is likely to be an Oracle expert. Let's examine what it takes to rightfully call yourself an Oracle expert.
In my humble opinion, it's difficult not to become an Oracle expert after a decade of full-time experience. However, it's the nature of the experience that matters most:
- Real-world experience: The path to true Oracle expertise is paved with working on real-world, mission-critical Oracle databases. No amount of at-home experimentation can compare with the learning from working on a real production database. Many aspiring Oracle experts will work for free for non-profit charities in order to get this experience.
- High-quality experience: There is a wide variation in the quality of experience in the Oracle workplace. Not all experience is created equal, and a challenging high-performance database job will provide far more expertise and exposure than baby-sitting a stable database.
- Broad experience: A broad base with many different types of Oracle database is essential for developing expert status. I've been in shops with over 20 DBAs, where job duties are highly segmented and Oracle professionals are relegated to "niche" work, like security administration, or full-time patch application. On the other hand, a single DBA is more likely to get a broader range of experience. The best place to get experience is as an Oracle consultant where you are exposed to dozens of novel databases each year. A well-rounded Oracle DBA will have experience in many areas including OLTP, OLAP and batch databases.
We see these general types of Oracle databases, and an Oracle expert should have exposure to these types of Oracle databases:
What type of Oracle DBA are you?
Today, Oracle technology has become so broad that we see areas of expertise emerging. We also see these common "types" of specialty Oracle DBAs, each with their own specialized areas of expertise. Again, 10 years of real-world, full-time experience is enough to fully master these areas:
- Oracle replication expert: Experience with multi-master replication, Data Guard and Streams can make you an expert at Oracle replication.
- Oracle RAC expert: Experience deploying production OPS and RAC databases is all it takes to garner Oracle RAC expert status.
- Oracle tuning expert: Many large Oracle shops have DBAs who specialize in performance optimization, instance tuning and SQL tuning.
- Oracle warehouse expert: These Oracle DBA experts have experience with VLDB administration (partitioning), Oracle OLAP tools (Discoverer, Oracle Warehouse Builder (OWB) and Oracle Data Mining (ODM)).
- Oracle apps DBA expert: These Oracle DBAs handle the Oracle Application Server, Oracle 11i E-Business Suite and the concurrent manager.
In sum, becoming an Oracle expert requires three things, real-world experience, broad experience and quality experience.
What about OCP certification?
I don't believe that OCP or OCM certification, by itself, makes anyone an Oracle expert. I've worked with dozens of "newly minted" OCP holders, many of whom take the OCP test to advance from a position as an Oracle developer or programmer. The OCP only measures rote memorization skills, and many brand-new Oracle DBAs are not capable of managing a real-world Oracle database without hands-on experience.
Becoming the next Oracle guru
The next Oracle gurus are not hard to find. They have the stellar educations, publish insightful blogs, snag opportunities to publish and share their research. They strive for prestigious degrees, awards, publishing opportunities, certifications and challenging job opportunities. The next generation of Oracle gurus are easy to spot because they are characterized by a "can do" attitude, and they all have polished communication skills.
I don't believe that any aspiring Oracle guru would "settle" for second best, and every day I see the next generation of Oracle gurus working long hours to distinguish themselves among their peers.
Many large corporations rely on challenging universities to do the screening for them, and nobody can deny that it takes a great deal of hard work and dedication to graduate from a highly selective university. I know engineer graduates from MIT and DeVry, and while both schools create engineers, there are huge differences in the quality of the education (and the number of recruiters who hire from these schools)!
Guru teaching skills and quality
By my definition, an "Oracle guru" is a teacher, and being able to communicate is an essential ingredient. I've taught over 80 classes in graduate school, and I noticed that many aspiring gurus never learn to "dumb down" their communications to a level where they can be understood by beginners. I've successfully presented Oracle technology to ninth graders, and if you don't know how to communicate at the same level as your audience, you are a failure as a guru.
For example, many top-level IT managers don't know (or care) much about the relative features of database products (SQL Server, Oracle, DB2), and it's necessary for a real Oracle guru to deliberately overgeneralize and explain complex technology with simple analogies and illustrations.
The ability to overgeneralize and simplify complex concepts with analogies is a critical skill for any guru. Check out the Google job interview questions where job candidates must explain computer concepts to a hypothetical eight-year-old:
Q: Explain a database in three sentences to your eight-year-old nephew.
In our next chapter we will examine specific Oracle job interview questions that you are likely to encounter during your initial telephone interview. Remember, passing the phone interview is a critical prerequisite to the full-day on-site Oracle job interview.