Currently I am working as a production DBA but I had engineering background (EE to be specific) and I fell in love with SQL Server and I am now trying to learn SQL Server everyday in lot of ways. I learn at work, I read blogs, articles, white papers, watch videos and attend online seminars and spend a while everyday here in ask-ssc. However, unlike most DBA's who had a developer knowledge/experience, I have little programming knowledge. Sure I can edit and use t-sql scripts but it’s hard for me to work as a development DBA and tune codes and work with developers and help them design a better program. Also I believe having minimal programming knowledge held me back from getting the most out of what I read everyday.
What I love about being a production DBA is solving problems and becoming a master of technical skills and I definitely don’t want to be a developer but I want to know enough to be able to become best production DBA. At first I was thinking to focus and learn C# in great detail so that I can be effective at my work but at this stage I figured I better use the time to learn more SQL Server to be effective at my current job. I need your help to prioritize what I should learn in the next a year or two. What I have in my mind is T-SQL, C#, PowerShell, SysAdmin knowledge, Security and compliance knowledge, enough SSIS knowledge for DBA, little bit of SSRS and SSAS. But I don’t know from which to start and what material to use.
I guess my question is how did you become the DBA you are now? What topics/subjects/resources/tools did you learn first? And what do you think I should learn to become best production DBA? Which knowledge/tools do u think is a must? also what is a must best practice for DBA's(besides learning constantly?
[feel free to edit the question if i didnt articulate my question clearly and every bit of advice is appreciated]