Thursday, July 14, 2011

Masters in System Engineering

Systems Engineering Principles and Practice (Wiley Series in Systems Engineering and Management)Recently I have been pondering whether to get a Master's degree and if so then which degree should I get.  Initially I thought I should get my degree in Information Systems or Computer Science.  I also thought about being the "big boss" in a company for which I may need a  Masters in Business Administration (MBA).
With IT being commoditized and being outsourced, I decided that I don't want to get a master's degree in Information Systems or Computer Science.   It's so Y2K mindset.   Instead I am strongly considering getting a master's in Systems Engineering.  I believe Systems Engineering will provide me the tools to excel in the future.  I don't see IT being the way it is now in ten to twenty years.  I could get two hundred or more certificates from Oracle, IBM, Microsoft, CISCO and worry about renewing my certs every few years or get a degree in Information Systems and morph into a nice comfy paper pushing employee.  Neither career appeals to me.  MBA sounds great but I don't want to spend $40,000 and more and end up being a mid level manager.  I will go for an MBA if the program is right.  Currently getting a MBA from non reputable college is not my view of career advancement.

So. I have decided to pursue a master's in Systems Engineering.  After getting some insight into couple of complex systems like the National Incident Management System (NIMS) or National Airspace System (NAS), I believe this would be a fascinating domain to study in and it will equip me to do my current job better.  Please feel free to comment and tell me how you feel about my decision.

Monday, July 11, 2011

Do I need a PMP next to my name

PMP Exam Success Series: Mindmaps PlacematI believe job seekers hurt their chances when they start appending various professional acronyms to their name.  I saw this person on Linkedin  and looked at the acronyms following this person's name. I then analyzed it. This person has:
    • MS - Master's of Science
    • MBA - Master's in Business Administration
    • CISSP - Certified Information Systems Security Professional
    • PMP - Project Management Professional
    • ITIL - Information Technology Infrastructure Library certifed
    • MCSE - Microsoft Certified Systems Engineer
    • CCNP - Cisco Certified Network Professional
    • Sec+ - I found this definition on Wikipedia Security+ is a certification dealing with computer security topics such as cryptography and access control, as well as business-related topics such as disaster recovery and risk management. 
I look at this person's profile and wonder the following things:
      • Why does this person have a MS, MBA and multiple certifications?
      • Does this person think that he/she needs to prove his/her technical skills?
      • Is this person demand a high salary or consultant rate since he/she has numerous certificates?
      • Why is this person so technical and have an MBA?  What is his/her career goals? 
I strongly believe this practice promotes recruiters to downgrade resumes or CVs which over use acronyms next to the candidates' names. I do believe that couple of acronyms next to the names may be helpful but why would a recruit consider someone who has a MBA or a PMP to be a Linux Kernel developer?

Saturday, July 2, 2011

RDBMS got it right with SQL.

Beginning iPhone 4 Development: Exploring the iOS SDKI recently purchased couple of books to learn how to write iPhone/iPad mobiles apps. I then viewed Objective-C on wikipedia to understand the nuances of the programming language.  It's doesn't look too bad.  It is geared more towards C++ which is not a bad approach.  The reason Apple uses Objective-C is because how Steve Jobs, Apple CEO, was involved with the company that invented Objective-C.  After spending numerous years working with Java, J2EE, ColdFusion, JavaScript, studying C++ in college and working with .Net, I feel that the paradigm of object oriented programming is fractured and it needs to be standardized.  Vendors like Oracle, Microsoft and Apple have come up with different compilers and different approaches on how engineers interface with the computer.

This has not be the case with relational databases where Structured Query Language (SQL) is a universal standard and it is quite straight forwards.  Vendors have taken liberty on how stored procedures, triggers and other things have been developed but the underlying SQL is a common standard.

The Object Oriented programming community should push for standardization of basic OO principles like a class, an interface, a public method, a private method, a static method, primitive data types.  By doing that design patterns can be implemented in a standard approach. For instance can anyone tell me how to develop code using Objective-C for the singleton design pattern.

UML will also be standardized an more granular.