Hiring a Software Engineer

Our country is supposed to be producing most knowledge graduates every year. But, when it comes to hiring quality talent, we often are on the complaining side.

People, especially those who are fresh to the software industry,  often discuss with me “What should I focus on to get a job – Is it .net, java, html or what ?”

I understand that it is important to ask this question to get a job, but it is more important to ask this question “What should I focus on to do a good job on my job?

And also, it is important for the person himself to ask this question rather than his parents, which has been happening more with me.

For a entry-level software programmer, I think it all boils down to the following basics

1. Operating System Concepts – Know how computers work

2. Data Structures Concepts – Know how to deal with the most important part of your program – the data in memory.

3. Logical ability – How to make the computer work for you. Irrespective of the language, even if it is pseudo-code.

4. Desire to learn on the job

At an entry level, show me you have just the above 4 really well,  and I will hire you even if you do not know much about .net, java or neural networks.

I have seen some business people (not even formally trained on computers) logically produce their reports in excel, or even build a website using HTML on their own – what is needed is to apply your mind and not just your books.

And then later in your career, remember that there is a difference between programming and software engineering. But, time automatically will make one understand that in his career.

I would like to hear from others too what they feel about the Hiring question.