Database Professional may be the more apt term for a DBA these days. It sure seems to have become the new norm in terms of talent, skillset and expectations of DBAs. I remember when I first started as a Database Analyst in 2002 working for IBM, my work entailed troubleshooting database application issues at the CLI layer of DB2. When in 2005 I switched to a pure DBA role, I was given tasks at Thomson Reuters involving both the role of an Application DBA as well as a Production DBA. That was somewhat rare back in 2005 as a DBA would be focused on either Application support or Production Infrastructure support and not both back then.
It seems the expectations and demands of the DBA role in a fast-paced environment is migrating away from the traditional DBA role of the past where you would solely be taking care of DB setup, DB tuning, SQL tuning, Backup and Restore, etc.
Today in 2018 it has become even more of a multi-talented role whereby a DBA can be performing DevOps tasks, Linux Admin work, Data Analyst work on extracting information out of large volumes of data, ensuring data security, you could be checking in code or at the very least checking in DB administration automation scripts, or configuration changes in GitHub or some other code versioning control.
We are expected to work closely with Development, QA and other Engineers to keep the lights on but also to research into the latest features in a DBMS that would be most helpful in guaranteeing better uptime, better performance and smoother db scaling. A very interesting aspect of our role is to not just stick to one traditional RDBMS but explore new (possibly No SQL) solutions. This is where I got the chance to explore Redshift, HBase Hadoop, Domo, etc. That’s a fun aspect of the job of a DBA, i.e. being a researcher in database technology.
I’ve worn different hats while working in a DBA role – Architect (Database Design), Data Scientist, Developer, Cloud Solutions Architect, Business Analyst. Ofcourse your bread and butter in any DBMS management is understanding the internals of your DBMS be it PostgreSQL internals, MySQL Internals, DB2 Internals, … etc. That goes a long way in helping you scale and performance tune your database and makes the difference between your application performance being at its peak or being a miserable experience for your end users.
CNN News has consistently ranked IT jobs and specifically Database jobs as being one of the “best jobs” in the US.
Just looking at the report:
It shows Data Analyst and DBA roles as #9 and #52 “best jobs” respectively.
The one thing however that seems to be true each year that I’ve looked to hire for a DBA team is the skills shortage in true DBAs who have extensive (10+ years of real database management experience in all facets of a database). Anything shorter in terms of number of years of experience for a DBA role is seen (and somewhat rightfully so) as a risk specially when it comes to managing large sized database production environments. Any mistakes made as a DBA managing a production system is potentially a highly disruptive mistake that directly impacts the customer experience and the company reputation.
It would be great if Universities and educational institutions were able to catch up on the evolving role of DBA and accommodate the need for not just Software Programmers/Developers but also a multi-talented DBA. Ofcourse some in the industry who just have a very high level overview of what is involved in a Database Professional’s role, consider it a not very focused enough role and may risk putting a non-DBA in a DBA position. In the past I’ve found many Linux/Unix Admins try their luck as a DBA at the expense of the company making costly mistakes. It’s just not the same coming into a DBA role from a purely operating system administration or development background as with someone who is a DBA with years and years of experience given a full exposure to all different aspects of database health.
Last but not the least a Database Professional must be customer oriented and see every project, every challenge to its completion. Communicating effectively with peers and workers as well as with customers (if need be) is a skill that’s a must have for any Database Professional specially one who fulfills the role of a DBA as accuracy can be the difference between deliverance of customer satisfaction or customer pain. A DBA’s customer may not just be a company’s customer but it is more likely your fellow Developers who work closely with you. I’ve seen instances where a technically stellar DBA ruined performance on a system because they misunderstood the end goal of a task.