How To Become a Database Developer / Programmer Expert
Why Become A Database Programmer
Did you know you can actually program in a database? It's called SQL, or Structured Query Language. If you want to become a programmer, and think there's too many options out there (C#, C++, VB.NET, Perl, Assembly, etc.), there's one language that most, if not all, businesses use, and that's SQL! There's other query languages, but the only ones that really matter any more use SQL.
"Didn't you say that there's only one version of SQL?" Well, I lied, but only a little. Oracle uses its version of SQL, called PL/SQL, and it has its own quirks, and Microsoft uses its own version, called T-SQL, and it has its own twist on the ANSI version. There's even an open source database called MySQL, with its own spin on (or subset of) ANSI/ISO SQL.
How Do I Get Started?
Then, buy a <insert database of your choice> for Dummies book, read it from cover to cover (twice), and do the exercises.
Build some databases of your own. Insert data into them, and play around with its many features. Starting web sites and collecting data is a good way to learn how to use it.
What Will I Need To Land A Job?
Experience, certifications, and most likely a degree. Bachelor's degrees are a dime a dozen in most markets, but I've known people with less education that work with databases. Not many, though!
How Do I Get Experience If I Don't Have A Database Programming Job?
Well, that is tough, but that's why you built your own database driven web site--to showcase your skills!
What Version Do You, the Author of This Article, Use Most Often?
Since I use Microsoft SQL Server almost exclusively for everything I do, at the office and at home, I'll focus on that version. I've dabbled a little in Oracle, and a little with MySQL, but my true love is MS SQL Server!
I've found that SQL is quite different from the other (aforementioned) programming languages. But once you start using it, and looking at the ample examples online and in books, you can find the information you need to get the job done. Once the light flips on in your head, you're on your way to a fulfilling career.
What Can You Do With SQL?
Aside from adding, updating, and deleting data from a database, or a collection of records stored in memory or on disk, you can also take action on those insertions, updates, or deletions! Send an email when a record changes, post new content on a web site when new products are added, show the accountants where they can find more pennies from reigning in on the below cost discounts the salespeople are offering their customers, respond to an email automatically with meaningful data back to the originating sender (or some other person)? It's all possible.
Why Microsoft SQL Server Over Oracle or MySQL?
Oracle is one of the best, most stable, most powerful databases out there, hands-down. I'm sure to be flamed for what I'm about to say, but...it's too much! For what the average small to medium-sized business needs, it costs too much for the software, the programmers/ developers/ administrators cost too much to hire, it's very cumbersome, and to get done the things that make Oracle such a great database, you need a staff of smart and highly paid people to do it!
What? Oracle Programmers and DBAs Make a Lot of Money?
You may be thinking, "well, if Oracle programmers and DBAs make so much money and are in such short supply, maybe that's what I should get into." Well, I say go for it! Good for you!!! Please, let me know how it turns out! I'd love hearing from you. Really!
For me, however, the cost of entry into that market is way too high. The schooling required, the specialty areas of expertise, all make it unattractive for me--too much work! It's not like I'm lazy (although lazy is defined by varying degrees), but it's like the difference of going to school for many years to become a doctor or lawyer. Yeah, the money's good, eventually , and the prestige is enviable, but who wants to go to school for so long and pay those high tuitions, only to have to pay back all those student loans? My personal acceptable amount of delayed gratification is/was exceeded by trying to learn Oracle for a career. Plus, my boss chose a MS SQL Server based ERP system instead of Oracle, so it was a no-brainer which one I was going to learn.
It comes down to this. Do you want to be agile and possess enough knowledge to do amazing things with MS SQL Server? Or do you want to know enough about Oracle to be adequate? I, personally, want to do amazing things!
Oh, and by the way, MS SQL Server pogrammers make enough to live comfortably as well.
Allow me give you a background of why I love MS SQL Server so much, and not only to have such a strong opinion, but also, impose it upon you. What do they say about opinions and arses? Something about everyone having one?
The company I work for is a billion dollar company with business units and entities throughout the world, including Asia, Europe, South America...you name it! However, our North American headquarters, and even our Global Headquarters in Switzerland, uses the Oracle Database for their ERP systems. They had a guy that was touted as the Oracle expert. He was both the DBA (Database Administrator) and database programmer.
As mentioned previously, we had our own ERP system at the business unit I worked for that ran on an MS SQL Server backend. I was a lowly "programmer" who barley knew how to spell SQL. BASIC and Visual BASIC were my favorite languages, although I sucked at it so much that they offered me the System Administrator role so they wouldn't have to fire me. I guess I was a nice guy or something.
They finally closed the office I worked at because of consolidations. They laid off all the programmers and almost all of the office staff. Who did they keep around? Me! What?! The guy that sucked at programming? Well, I had a secret weapon that kept me employed when all others were let go. I developed a web based Extranet (using ASP at the time) that ran on an MS SQL Server backend. Our clients were using this Extranet, and demanded that it still be available during and after the closing of the local office. Our corporate parent couldn't shut off our ERP system until this Extranet was developed for their Oracle ERP system! Hah!
They could have purchased a plug-in for their ERP system, but it wouldn't have been as robust and it would have been a lot more costly for the many modifications and additions it would require. So why didn't their Oracle DBA/Programmer or inhouse programmers write something that did the same thing? Because they couldn't! They didn't have the knowledge (or the time) that was needed to do something like that.
The system I built using MS SQL Server read a specially formated email from the customer (that was generated from their ERP system) that needed service on their equipment. The MS SQL Server then inserted the information into the database. The system would then identify the technician that belonged to the store/customer with the problem equipment, and would send the appropriate technician a text message on their phone/alphanumeric pager. If the technician wasn't available, or if it was after hours, it would go to the secondary technician. Then, the customer was automatically emailed back with their service call number, and an ETA, which was determined by how high a priority the customer thought the service call needed to be.
This was all done with T-SQL! Every bit of it using the native commands MS SQL Server has to offer, back in the year 2000! Who was doing those types of things back then, and if they were, how many people did it take to come up with something like that? It took our office one person, who wasn't/isn't very good at programming to begin with!
We also used the interactive pagers to allow our technicians to close their calls, query the database for their calls for the day, and order parts--all using MS SQL Server native commands to facilitate this. That's not to say there was no programming involved, but it was so easy, even a caveman could do it. (Please forgive the gecko commecial reference.)
The point of all this (self promotion)? It doesn't take a genius to do amazing things with MS SQL Server, so it has a much lower entry point for those of us who chose Business School instead of being a doctor, lawyer, or an engineer.
Further Oracle Abuse?
After they closed the office, they asked me to write an Extranet for their Oracle based ERP system. I've seen the system in the past, and almost vomited when I did. It took me many months to do the same thing that only took me probably a month to do with SQL server, and it had less than half the functionality. It was also SLOW! And through it all, SQL Server still handled the email part of it, because no one could tell me how to do the same thing in Oracle--not even the best minds our billion dollar company had to offer.
I'm pretty sure they're using an MS SQL Server somewhere, still, to this very day, to handle the email functionality, because one of the programmers called me a year or so ago to ask me about the code, and if it was okay to move it.
To be fair, the Oracle based ERP system was an abomination, not Oracle itself. I didn't mean for this to be a slant against any particular database, but for Oracle to allow such a code and GUI abortion to run on their system is shameful to say the least.
Where am I now?
Working as an IT Manager for another (larger) business unit (in the same company) that uses another (different) MS SQL Server based ERP system. Our parent company plans on going to another/different Oracle based ERP system that they will impose/force on all the business units, but they slated our business unit to be the last business unit they convert because of the strength and capabilities of our MS SQL Server based ERP system. Again, what?!
And , they still haven't fired me for being a sub-par programmer (but they did promote me to management to keep me away from doing any harm).
It goes to show how far you can go just by knowing a little SQL, and with Bill Gates on your side, how can you go wrong?
- Welcome to UberPCGeeks! Tutoring for Certifications
We can help you get certified in many different Microsoft Certifications.
Shameless Self Promotion
If you think you're interested in SQL Server Database Administration or Development, I want to help!
For a nomial hourly fee, I can set up a web meeting for you, in the evening or weekends, to show you the basics and/or the interface. If you're interested in certifications, we can set up tutoring or a certification "boot camp" of sorts taylored just for you to set you in the right direction.
You can contact us at the following web site:
I will personally talk to you and conduct the meeting, and it can last anywhere from a half-hour, to as many hours as you want.