Friday, June 24, 2011

How to get your first software engineering job?

Self evaluation is the first step, as a software engineer, you can be part of various interesting job profile. Even though software programmers is most glamorous, there are other posts that tend to be easily ignored. What I mean by self evaluation is can you judge yourself truthfully that you are logically strong enough to be a programmer? And wait, programming like learning music is a long process, if you are not coding already whether professionally or as hobby then it is going to be a hard journey to the day you become productive.

If you want to become programmer, start coding from day 1, don't wake up in your fourth year of college and google "library management software source code", there is no shortcut to learn programming other than lots of practice. Start coding in any language of your choice at least 2-3 hours a day, download source code examples and study them. Participate in submitting new source codes to,, etc (yeah, people not only download, submit too!). If you are even more enthusiast, participate in open source community to improve any opensource project like, Firefox, Linux, or Android. And if this sounds boring, leave it for something else more suitable for you. 

If programming doesn't look like your piece of cake, be happy that the software engineering paradigm doesn't end there. You can be a software test engineer, also called as Quality Assurance engineer, the people responsible for ensuring the quality of software.

QA Engineers are tech-enthusiasts, geeks who will dive in to new projects and try different ways to break it. Who wont like to be paid for reporting other people problems! If this sounds interesting, luckily software testing can be self learned by reading some good books. You can also do some course from any reputed institute. The key ingredient to this profile is the interest to explore uninhabited lands like Sir Vasco Da Gama.

Another profile is system administrator or database administrator, the people responsible on ensuring you see the home page of, and not an Internal Server Error. The sysadmin and DBA looks after the health of computer servers, forseeing problems and applying fixes along with system updates and optimizations. To be one, you need to master either Linux or Windows Server, do a certification from a good institute. And practice.

Other profiles are web designers, animators, technical support executives, technical writer, business development analyst and others. 

So once you decide on which profile you want to work in, the next step is to put the extra efforts to learn about it. If you are not one of the lucky guy to have been placed through your college campus program in an MNC, you are left with three options. 

  1. Spend money to do some courses and receive valuable certifications,
  2. Join for company's internship programs,
  3. Be different (when everyone is learning Java/C#, learn LISP or ADA and look for job in that section).
There is no fourth way, don't waste time applying for every job posted in Naukri.

And finally, while you are applying for jobs, waiting for interview results and so on, use your creativity. The best way to get hired is to stand apart. With open source, fast internet availability, and lots of information on net, it is easy to stand apart. There is internet beyond facebook, spend your time exploring your choice of profile, language and projects. Actively participate in forums, blog, submit source codes and projects, and browse freelancer projects.

Do that and job will run to you, rather than you running after jobs.