Development vs. Administration
To build a house, you need an architect to design the house
and tradesmen (plumbers, electricians, and carpenters) to build
the house according the architect's plan. Database developers
are the architects and builders of database systems. After the
house is built, you will need to perform routine maintenance
on the house and possibly make modifications or additions to
the structure. Generally, you need tradesmen to act as maintenance
and repair workers to accomplish these tasks. Database administrators
are the repair and maintenance workers of the database world.
They monitor the operation of the database and make improvements
and modifications when necessary to ensure the smooth flow of
data.
There are normally two versions of a database, the "production"
and "development" versions. The "production" version is the
one that is in current use. Up time (the time that a database
is available for use) is critical with the production version
since employees and customers may need to access and use the
database at any time. Consider the production version of the
Amazon.com customer order database. When you go onto Amazon
you need the database to be available so you can place your
book order. The fulfillment department at Amazon needs the customer
order database to be functional so they can pack and ship your
order. Maintaining and improving performance of the production
database is the primary role of the database administrator.
Troubleshooting current problems (such as corrupt indexes or
lack of disk space) that occur during day-to-day use of the
database is critical to achieving a high percentage of up time.
Database administrators need to be available any time there
is a problem, so they often carry beepers and cell phones and
are required to be "on call" outside of normal working hours.
The "development" version of a database is where all the tinkering
and design work takes places. Layout of tables, programming
and connection of the database to other software programs is
laid out in the production version. In this way, new plans can
be tested without affecting the "live" data in the production
database or affecting its up time. Database developers primarily
work with the development version of a database.
Some doctors choose to specialize in a particular field after
taking their base training in medical school. Depending upon
the specialty, this requires an additional one to three years
of schooling. A similar situation occurs in IT since database
administrators and developers are often trained IT professionals
who choose to specialize in databases. Database administrators
need to be familiar with the operating systems that their databases
are running under (such as UNIX or Windows 2000). This is necessary
since many operational problems of databases require solutions
that are specific to a particular operating system. Therefore,
being trained in network administration as well as well as database
administration gives you a competitive edge when seeking employment.
Similarly, many database developers have training in programming
since database development (such as development of SQL queries
and interfacing databases with other systems) requires familiarity
with programming languages and concepts. Therefore, a solid
programming background in addition to database design skills
will make you stand out from the competition when applying for
a job.
In small and medium size corporations the lines between development
and administration become blurred. Often, database personnel
are called on to fill both roles at different times. For instance,
your primary focus may be developing the next version of a customer
service database. But, you may also be required to be "on call"
for a certain number of hours per week to solve day-to-day problems
with the production database. Being a jack-of-all-trades (someone
who can handle both development and administration) makes you
a valuable addition to any database team.
|