Hiring or (Being Hired as) a DBA

Download Report

Transcript Hiring or (Being Hired as) a DBA

Hiring (or being hired as) An Oracle DBA Presentation 66

Michael R. Ault DMR-Trecom

Introduction

 The DBA market is being saturated with both jobs and candidates -- How do you match one to the other?

 The interview process is critical to hiring, or being hired as a DBA  As a Senior Consultant for DMR-Trecom I have had to develop an interview strategy to separate the “wheat from the chaff”

Topics of Discussion

 What is a DBA?

 What levels are there in the DBA job and what are their qualifications?

 Interview Tools  Does certification mean anything?

What Is A DBA?

According to the DBA manual duties include:  Installing and upgrading the ORACLE Server and application tools.

 Allocating system storage and planning future storage requirements for the database.

 Creating primary database storage structures (tablespaces) once developers have designed an application.

What is a DBA? (cont.)

 Creating primary database objects (tables, views, indexes) once application developers have designed an application.

 Modifying the database structure, as necessary, from information given by application developers.

 Enrolling users and maintaining system security.

What is a DBA (cont.)

 Ensuring compliance with Oracle License agreements.

 Controlling and monitoring user access to the database.

 Monitoring and optimizing the performance of the database.

 Planning for backup and recovery of database information.

What is a DBA (cont.)

 Maintaining archived data on appropriate storage devices.

 Backing and restoring the database.

 Contacting Oracle Corporation for technical support  Plus many other duties....

Distilled Version:

To be a “Full Charge” DBA you must know:  Installation  Configuration management  Security  Monitoring and Tuning  Backup and Recovery  Trouble Shooting  Vendor Interface

Personality Traits of a Good DBA A good DBA exhibits:

 Self Confidence  Curiosity  Tenacity  Tactful  Self starter  Detail oriented

Trait One: Self Confidence Without it:

 They will constantly ask about decisions both major and minor.

 They will be afraid to show initiative.

 Will be afraid to admit they don’t know something -- it isn’t bad not to know something as long as you know where to look it up!

Trait Two: Curiosity Why do you need it?

 Oracle is constantly changing, and not all of the changes are documented  You can’t depend on employer to provide references, you must have them yourself.

 The Oracle toolset requires “Mining” to get the full benefit from the data dictionary, DBMS_ packages and utility scripts.

Trait Three: Tenacity

 Trouble shooting requires tenacity (so does dealing with Oracle Support at times).

 Many times the “Next” solution is the correct one.

 Tenacious DBAs solve their own problems (usually proactively) but they know when to call for help.

Trait Four: Self Starting

 Important with any position, but especially DBA.

 DBA has to be proactive, not reactive.

 DBA has to be willing to “Go where no one has gone before” and develop their own tools where none exist.

Trait Five: Tactful

 DBA deals with all levels of people from upper management to programmer to vendor.

 Needs to be able to deflect unreasonable demands without burning bridges.

 Has to be able to manage both upper management’s and user’s expectations.

Trait Six: Detail Oriented

 Dealing with Oracle requires detail oriented people, from command syntax to storage requirement specifications.

 DBA work requires documentation, of tools, parameters and storage decisions.

 Most DBA work requires time management skills -- attending meetings like other managers but also trench work.

Knowledge Required of DBAs

To reiterate:  Installation  Configuration management  Security  Monitoring and Tuning  Backup and Recovery  Trouble Shooting  Communication

Installation

 Oracle is ported to many, many platforms. Installation on OpenVMS is different than on UNIX or NT.

 A bad install can ruin a production environment.

 DBA should be knowledgeable about your platform.

Configuration Management

 Database sizing - tablespaces, redo logs, rollback segments, tables and indexes.

 Physical file placement (OFA)  RAID usage in your environment.

 RAW usage in UNIX and NT.

 Required kernel parameters for your platform.

Security

 System and Object level security  Roles and Profiles  Secure Oracle (if required)  SQLNET security  Password Security options (in ORACLE8)

Monitoring And Tuning

 Next to backup and recovery most important knowledge factor.

 Detailed knowledge of the data dictionary is required.

 Knowledge of the uses of TKPROF and EXPLAIN PLAN.

 Knowledge of COST and RULE based optimizers.

Monitoring and Tuning (cont.)

 How indexes help or hurt you.

 Use of Hints.

 Initialization parameters and their uses.

 DBA_, ALL_, USER_ views  V$ dynamic performance tables  SYS owned “$” tables  DBMS_ packages and UTL* scripts

Backup and Recovery

 Most critical aspect of the DBA job.

 Must know import and export and sqlloader  Must understand hot and cold backups.

 Must understand partial recovery options.

 Must understand archive logging.

Troubleshooting

 Binary ability, either you have it or you don’t. (if you don’t, don’t be a DBA!)  Requires an analytical approach tempered by leaps of faith (intuition).

 Requires tenacity tempered with the willingness to ask for help.

Communication

 DBAs must be able to be understood.

 DBAs must be able to file intelligently written reports.

 DBA must be able to document actions, scripts and installations.

Levels Of DBA

 Candidates will range from DBBS level to full charge DBA level.

 Resumes will not tell you this information, only a detailed in-depth interview can sort them out.

How to Tell a DBBS

(DataBase Baby Sitter)  Has a great looking resume.

 Has managed lots of instances.  Has no self-bought reference materials, may not even have a computer at home.

  On most jobs they will have used third party monitoring tools.

Can’t answer questions about Data Dictionary or DBMS_ packages.

How To Tell A DBA

 Has a great looking resume.

 Has managed lots of instances.

 Has bookshelf full of self bought references  Complains about the download time of the Oracle Demo packages from the web page over his 56k modem line at home.

 Knows init.ora, Data dictionary and DBMS_ packages and UTL* scripts cold.

Converting a DBBS to DBA

 Get then involved with IOUG  Get them involved with CompuServe forums (ORAUSER, ORASUPP)  Get them their own paper copy of the docs.

 Train, train, train  Other than for general monitoring, wean them away from too many third party tools, until they no longer need them.

Developing Interview Questions

 Decide on categories needed  Give specific questions with specific answers for detail questions  For questions with open ended answers, be sure the interviewer has the skill level to understand the correct answer.

 Assign point values to each question.

 Handouts give examples.

Prequalification of Candidates

 Oracle Corp. Certification doesn’t count for much, if you attend the classes, you get certified (sorry Oracle) I’ve got 5 of them...

 Third party training ranges from excellent to very poor...

 The new test based certification, while not perfect is a good starting point.

 Always check references.

Appearance

 Shows attention to detail  Shows social skill level   The days of the brilliant maverick are numbered, besides, they are greatly over rated.

If they don’t care enough to dress properly for your environment, do you want them in charge of your data?

Summary

 There is no magic formula.

 Hiring or being hired as a DBA is hard work.

 Successful hiring or being hired as a DBA requires careful preparation.