Happy New Year everyone!
I woke up feeling like it was time I wrote a new blog post. I figured I'd reflect on the post masters work world.
So did I need a masters to get the job I have? Absolutely not. Apparently work experience is far more desirable than education. Some employers consider grad school some type of work experience, but these employers are few and far between.
The job I got right out of school was a Drupal job (surprise surprise). I did have a couple of years experience using Drupal, so it wasn't a problem for me to find that work. Since the drupal stuff wasn't what I spent 3 years in grad school for, it was a little depressing knowing I didn't have to be in grad studies to do what I was doing. The part that really hurt was when I was passed up for doing something that my grad studies actually prepared me to do for someone else that had more experience in mobile application development.
Basically what went down is that we have an iPhone guy that built the iPhone app. Ever since Android was announced, I have been tripping over myself trying to learn as much about the OS as I could. I'd been very vocal about what my intentions were and when I planned on moving forward with Android application development. One day in the office, we had a meeting to discuss what was happening with the product and the direction the company was taking. So one of the owners then turned to the iPhone guy and said "So what about Android?" Considering I'd been so vocal about Android, they didn't ask me. I was hurt pretty bad when the did that. Why was I hurt? Well in previous conversations with the iPhone guy, he said "There is no way I will ever learn Java". So while these 2 were talking about Android right in front of me, the iPhone guy said "Well, I'll the damn thing if I have to." I felt like punching someone in the face. I guess at that point they could tell I was getting very agitated with how they were ignoring me so they thought they'd get my 2 cents. Then after I gave them my 2 cents, the final decision was to outsource the project.
This was the turning point in my stint with the company. I realized my determination, drive, and professionalism were being wasted. I decided the MacBook pro would be my next computer purchase, and my move into the mobile application development market was sealed. It was great working with those guys, but the more I worked with them, the less I'll get to do things I enjoy. And what I enjoy is tasks that challenge me.
So I got my mac in October, and I spent a considerable amount of time just getting accustomed to all the mac-isms and getting rid of all my windows isms. From the software development point of view, the one thing i had to get use to was that there is no home or end button on my mac. I kept pressing the eject button. I had no idea how dependent I was on those 2 buttons. But in the end, these were small issues given how much I gained in platform stability and usability. Plus this mac is a sexy piece of machinery.
Now after getting my head around using the Mac, I did a bit of Android development and started looking at the job posts. Believe it or not, there are no Android development jobs in Toronto! Then I did a search for iPhone jobs, and there are a ton. So I knew what I had to do. I started by learning how to use Xcode. There was only so much I could learn because a few chapters in and they jumped right into the Objective-C thing. So I found a book on Objective-C. I started reading it and it turned out to be the wrong version. I needed to learn Objective-C 2.0. I figured the differences were not that bad so I jumped right into iPhone development. I was 7 chapters into the new book and realized I didn't understand Objective-C well enough to have any business building iPhone apps. So I basically took 2 weeks to read the Objective-C documentation on the apple web site, and then picked up a cocoa programmers book and read a good chunk of that. At this point, I'm ready to hop back into purely iPhone development practicing.
The bad part about all of this was that I thought I would be done my iPhone development book by now. I wanted to start a full on job hunt for iPhone jobs by now. I guess if I didn't go at my own pace, I wouldn't understand the language as well as I do now. Sometimes I think I'm too much of a perfectionist for my own good. Now I have some iPhone dev interviews coming up and I feel like I'm underprepared for them. But then I think about how my Objective-C and Cocoa experience I have now because I took the time off to read about them. I'm more qualified to write iPhone apps than most of the people I went to school with, and for that matter, more than many developers in the GTA. I feel as if I'm ahead of the pack when it comes to iPhone dev, so I shouldn't really feel underprepared.
I wanted to be done my iPhone dev reading for another reason. I still am super interested in Android. I bought the Android book and the iPhone book at the same time. I wanted to get through iPhone, get the job, and then do Android on the side, or something like that. I also plan on buying one of those android dev phones that are available. I guess I could focus on iPhone until the phone arrives, but I really want to be ahead of the curve when a phone with that OS comes to Canada. I still see it as being a sleeping dragon. The iPhone is trendy and nice looking, but it's fixed to the hardware. Android will run on many phones. As soon as sexy phones come out for the platform, it'll probably take off as fast, if not faster than the iPhone. Maybe not faster, but power mobile users will find more utility from Android phones than iPhones. So this includes BB users and users looking to move from PCS handsets to smart phones. Oh, and the Android OS can also be placed on PCS handsets. Yeah.. it'll be huge.
So basically, the message I'm trying to get across in this blog post is that you're MSc skills will probably not be appreciated at your job. If you want a job that has to do with your MSc, you need to study more and beg for the opportunity for experience in that field. The experience factor is just undeniable at this point. Especially with the economy the way it is, tech companies aren't looking to start throwing money at training a new developer.
As for the salary, that's something you gotta work out for yourself, and can truly only be determined based on your experience. You'll know where you stand with respect to efficiency and professionalism compared to the people you worked with, and the legacy you leave behind.