My goal this year is to move back to my home state, looking to move around September, and I would like a job as a SQL developer when I get up there. My goal is to take the first half of the year to finish preparing myself. A little about my experience: my degree is in the System Admin side of IT with no programming experience in school. I have held a Help Desk Analyst position for 3 years and for the past year and a half I have been training with our Application Developer/DBA, and he has granted me access to most of our databases at work. I would say I write basic select queries a few times a week, I have written 12-14 reports that get used frequently by my department and have frequently update/delete information on our database tables. Our Developer/DBA has shown me some of the hands on he does as far as database administration goes but has not had me done anything major with the database out side of updates, deletes, and writing a few stored procedures. As of this past September I have been learning C# and have recently signed up for a class on
EDX.org offered/taught by MIT on programming and computational thinking using Python and plan on working on my problem solving skills as well for a nice foundation. I am currently studying for my 70-461 Exam and plan on taking that next month. I am reading *Expert Performance Indexing for SQL Server 2012* to give myself more familiarity in indexing and once I pass my exam I will start learning more adsvanced techniques on SSRS and possibly picking up a developers license to SQL Server 2014 so I can play around with more than the Express version offers. I was wondering if I am doing enough to reach my goal or is there any thing else you would recommend? Any other books you'd recommend I check out before I try to get a job in the field? By September I will have a good 2 years of SQL experience but with my lack of formal education in developing I want to make sure I have have the skills needed to get a job and succeed in this field as I enjoy it and want to get into an actual SQL developer position. Any help or suggestions is appreciated!
My first piece of advice is to not think of SQL Server as just a single application you want to learn. I'd say SQL Server is more of a platform like Office. Given that, I suggest getting your feet wet everywhere and then choosing an area for focus. There are 4 primary components (plus other features): 1. The database engine: back-end; the core database functionality for storing and managing data; There are actually 2 career paths in this area alone. One path is the traditional DBA path focusing on maintenance and typically requiring more hardware and infrastructure knowledge than other SQL Server careers. The other engine path is that of a SQL developer focusing on the database side of application development. 2. Reporting Services: mostly front-end; build reports from stored procedures or views; Positions in this area are often labeled "report writers", but those with more advanced skills can do much more than that. Not only are there levels of complexity in reports (and their sources), but there are also opportunities to bridge reporting with any of the other SQL Server technologies not to mention application UI development. 3. Analysis Services: build models for interactive analysis with Excel and other tools; You can choose a back-end approach focusing on building data models (both logically and physically) and/or choose a front-end approach focusing on things like PowerPivot and generating output from cube data. 4. Integration Services: back-end; data migration with some workflow capabilities; Think of SSIS as the glue that holds everything else together. With it, you can import and export data to/from SQL Server, Oracle, text files, spreadsheets, ... any OLE DB data source. You can write .NET code to manipulate the data, send emails based on various conditions, and many other tasks. My focus, for example, is on the engine and integration services. I prefer those because I like working on back-end systems more than front-end. But even after over 16 years, I am continuously learning new techniques. I think your idea of buying a copy of SQL Server Developer Edition is excellent. If/when you do that, make sure you also go [here] to get the latest copy of Data Tools for BI (to develop solutions for Integration, Reporting, and Analysis Services) and the Data Tools integration with Visual Studio (if you want to develop databases using database projects). :
Good answers so far, all I could add would be to find your local SQL Server user group or PASS Chapter (
www.sqlpass.org) and start attending their meetings, both where you are now and when you will be when you move. Getting to know people in the SQL Server world is a great way to learn about SQL Server but also to hear of jobs that are coming up or to let people know that you are looking for a position. Its like being involved on the forums but better because the pizza is free!
It sounds like you're doing most of what you can do. The only addition I would make is to look around your area to see if there are any non-profits or schools or churches that need some database work that you can do for them in SQL Server (Express edition is good for learning too, and free). The main thing you need to get hired as a DBA is experience, so anything you can do to get that experience is going to be helpful. Another way to learn that is frequently overlooked are forums like this one and SQL Server Central and others. Answering questions is a great way to learn. Lots of the questions involve fundamentals so looking up and understanding a good answer on someone's backup question or SSRS question or whatever is a good way to start to understand more of the topics. Other than that, keep doing what you're doing and best of luck.
So, a follow up question to this post, I took Tom's advice and decided what I want to focus on, which is more front end type stuff as this is what I do on the side at work and I really enjoy it, but I am also interested in performance and maintenance and I want to keep myself a little more well rounded in my SQL knowledge. I feel in any subject in IT you should know all sides of it good/well, and then can specialize in one area of that subject. Can anyone recommend any good resources on the "back end" or "Administration" side of SQL? I've been reading some blogs and reading a lot of forum posts (though some of it is still a little advanced for me it's still interesting to read) but I also enjoy going through a book which is more structured and having hands on labs/exercises to do, that I can take and build upon and try out my own things. I know that Microsoft has 2 more SQL certs that focus more on the administrative side of things, but in my experience books for certifications don't always cover everything on a subject, just what you need to know for a certification.