Please tell me, what does a production DBA do? Is it different from a developer? If so, what is the difference?
If you ultimately want to become a DBA, starting out as a developer is definitely a good choice. Some of the best DBAs I know started their careers as developers. As a developer you can expect to learn the basics of how relational database systems work and how to write good (well-tuned) code against the database. Once you learn these basics you can progress into database design and ultimately into how the database internals work. Or, if you are the creative type that likes to have something to show for your work at the end of the day, you may just be satisfied staying a developer.
Jumping right into DBA will be a very difficult task and is not something you can expect to do overnight. A DBA must be a jack of all trades and have a thorough understanding of logical and physical database design, operating systems, networks, applications, programming languages and tools, storage hardware, security, web technologies, middleware, scripting, monitoring software, etc. If you do not already have a solid technical background in at least some of these areas, becoming a DBA will certainly be a challenge.
Most DBAs I know are satisfied with their jobs, but being a DBA isn't all glory and is certainly not for everyone. The database is at the heart of most mission critical systems. When a critical system stops working, more often than not, folks will come running to the DBA. You must be able to handle this pressure, be willing to be on-call 24x7, work long hours, and have a thick skin for when things get rough. Some people thrive on this, some do not.
No matter which path you take, I suggest starting out by learning SQL and the basics of relational databases.
This was first published in May 2008