Every now and then I get a question in e-mail and I usually just reply and leave it at that. I figured since I’m spending the time to answer the questions, I might as well wrap them up and share them with others. And, yeah, this is a good place to tie that unicorn mask into my blog.
Recently I received the question below from someone that is at a consulting firm doing mainly SQL development work:
The question I have is I really want to learn more and dive deeper into SQL and I do not feel that I am getting that where I am at. I am looking for any suggestions you may have for me to break into a program/role where I can learn from a DBA or how to become a DBA. I have the base knowledge but I want to learn more on the administration side. Any help or suggestions you can give me would be greatly appreciated.
The most traditional way to get the DBA experience is to move back into a role outside of consulting where you get to manage an environment. This can provide that deep DBA knowledge that you are looking to gain. You’ll likely need to find an employer that is looking for a DBA that can work across both DBA and SQL Developer skillsets, where you can emphasize the second as a reason to overlook some of the missing knowledge in the former. Unfortunately, this is a good way for a consultant to go batty since one of the main reasons for going into consulting is to get around and see new environments.
As an alternative to that, I would look at two strategies. First, identify information and skills that DBAs know and are good at. For instance, disaster recovery and performance tuning. Then just learn all that you can about the topics. Speak on them. Write about them. Talk to others on the topics. Basically, form your processes to accomplish them and get others to validate. Then use your peers to guide you along best practices. This will build the basis of knowledge that you’ll need as a DBA.
The second strategy is to try and apply that knowledge. Push your firm to adopt an OLTP practice. With this, you they can attract other DBAs that you can learn from and provide engagements that will be important to being a DBA. As a consultant, this is really where the fun DBA work often is. Most of us don’t like to be on-call – but we enjoy leveraging our knowledge and skills to build the right environment and make the performance scream. Help your company move toward engagements that emphasize the upside of the DBA skillset. Some of these will be assessments where you evaluate the configuration and utilization of environments. You can check the HA/DR plans to validate that they work as intended. Offer performance and index analysis services to leverage your experience with other clients with new clients.
The concern may be that you don’t know enough to help in all cases. When we go to clients, their DBAs often have well thought out reasons for the way things are – our goal there is to challenge the assumptions but not the intellect. There will be differences in opinions at times. But this is where you can bring value. With consulting it is often easier to build a network of professionals with vast expanses of knowledge and experiences. We can leverage that for our clients and bring in the information and view points that the client’s own DBAs may not have considered. In the end, we will make the DBA and environment better, and learn, for ourselves, a bit more about how to engage future clients.
What do you think? What advice would offer to someone that asked the same question? Leave your replies in the comments below. Also, if you want “the unicorn” to answer a question in a future post, send me a message on LinkedIn or at AskTheUnicorn.