Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

I really want to ask this questions to my fellow developers here in Programmers.SE because i am hiring freshers for my company.. Even though i know some basic questions that can be asked to a fresher during interview and i want to know,

What are the skills you look for when hiring a fresher/newbie for developement?

share|improve this question

closed as not constructive by Yannis Rizos Mar 8 '12 at 13:04

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.If this question can be reworded to fit the rules in the help center, please edit the question.

    
Fresher? I've never heard that term before. –  WalterJ89 Dec 14 '10 at 4:04
    
Freshman... that makes sense –  WalterJ89 Dec 14 '10 at 4:06
1  
@walterj89 In India students who finish college and start searching for job are called freshers... –  Oscar Dec 14 '10 at 4:08
1  
Look for a fresher who might stick around ;) –  Job Dec 14 '10 at 4:37
    
+1 - nice question. I appreciate your insight to hiring people. I am sure you will get good developers! –  k25 Dec 14 '10 at 5:00
show 1 more comment

9 Answers

up vote 9 down vote accepted

First and foremost, see if the student has got a desire to learn. According to me puzzles/ English based exams are just pointless. I could probably accept testing a person's English skills, but that should not be based on a "test". It should be based on how they communicate their ideas. Asking them to solve puzzles is just a hogwash.

To see their desire to learn, you could question them in various grounds. Assuming that their resume is true, look for a person who has a good skill set. Interview that student along with 2/3 people who are well-versed in those skill sets (for example C++/ C#/ Java). Normally in India, I have seen students just add C / C++ to their resume irrespective of how confident they are. To test whether they are pretty confident in C/C++, test them in its basics like pointers/related data structures. Probably you could also ask them solve simple problems, or debug a faulty piece of code etc.

Personally, I don't think that the student should be from computer science (neither am I). If they are from CS test them in their basics - like automata, algorithms,discrete structures, computer networks etc. etc. If they are not from CS, you could still test them in data structures, as this course is pretty much common across departments. Even if they are not from CS, based on their resume, you could ask questions related to their area of interest. And, don't just go by their grades. They are not indicators to their programming knowledge.

share|improve this answer
2  
+1 for And, don't just go by their grades. They are not indicators to their programming knowledge. –  CyprUS Aug 8 '11 at 13:19
add comment

For me following three are important -

  1. Loyalty : All things can be taught to loyal people.

  2. Commitment : Does he think Job as a Mission or Drudgery.

  3. Integrity : Values shape up all other skills, to differentiate one works hard to acquire rest of the skills.

About Programming, I think the following things matter:

  1. Problem Solving Skills (Aptitude)

  2. In depth Knowledge of Programming languages

  3. Experience in atleast one Project in a specific language

  4. A good(atleast OKAY) record while pursuing Computer Science(or equivalent) education.

share|improve this answer
    
+1 for problem solving skills –  user2567 Dec 14 '10 at 8:36
    
how much of Loyalty, Commitment can you expect out of 20 yr olds ? I am working at my first job and i am the least loyal person to them IMHO; but they love me! they are quite happy with me, Now i might just give them the chance to buy my loyalty for another year .. but thats another thing ... Also i think good sound knowledge of any one programming language (not scripting ones) is okay at the beginning .. ppl dont study that much in college :P –  Ritwik G Oct 14 '11 at 5:03
add comment

In principle, it’s simple. You’re looking for people who are

  1. Smart, and
  2. Get things done.

The Guerrilla Guide to Interviewing by Joel Spolsky

share|improve this answer
add comment

Hiring someone fresh out of school is a mixed bag: university is so different than production coding, that unless the potential hire has a long record of open source contribution to show off, there's no telling if he or she will adapt to the real world, let alone how.

The up side is that one gets to introduce that newbie to real-world coding and (hopefully) mold him or her into a useful sort of coder. That is what I have in mind when evaluating this type of candidate. I look for one who:

  • has pursued opportunities to better his/her craft outside of school requirements, whether in the form of open source contributions (preferable) or personal hobby coding

  • has a logical way of approaching problems

  • groks hacker culture (or, for bosses other than me, the particular corporate culture the person is being hired in)

  • is not just intelligent, but also engaged

  • responds well to correction/criticism and generally isn't someone who's ego I need to protect

  • knows how to learn on the fly, and learn independently

share|improve this answer
add comment

The most important qualities a fresher should have is the right attitude and problem solving capabilities. The right attitude can be checked by asking them the questions about the final year project. Check if the person was really involved in the project. See his/her enthusiasm. Check if the person has enthusiasm in programming. Check if he/she has participated in any competition or member of any organization.

Problem solving capabilities can be checked by asking small puzzles which can be solved using hints. More stress should be given on the way how the problem was attacked. This can also be checked by giving small programming assignment (second greatest in an array, finding stream of k consecutive zeros, or Joel's favorite number of set bits in an int) in their favorite language. Again rather than whether he/she knows the problem, the emphasis should be on how he/she is tackling the problem.

share|improve this answer
    
-1 for "Check if he/she has participated in any competition or member of any organization." what kind of measure does that give you. Totally bogus way to test an individual. –  Ritwik G Oct 14 '11 at 5:05
    
that is to check if there enthusiasm. Should not be given high weight. This is straight from Joels list. Please check joelonsoftware.com/articles/CollegeAdvice.html –  Manoj R Oct 17 '11 at 5:33
    
its not like joel is a god or something. stop being a nerd and bring something original to the table. P.S. I am pissed off cos its moronic judgement like yours that has put 3 complete retards on my team. now i need to deal with that crap all day long. –  Ritwik G Oct 17 '11 at 17:26
add comment

Since you are hiring fresher in India, my suggestion would be like following.

  1. Resume : This will tell you their confident and clarity of their knowledge will clearly. Many people follows the template resume from Naukri or some of the websites and will put the polished words, but not about their skills. This will surely indicate that they are not capable for doing independently.

  2. See their academic score from resume. If it is above 65% to 70% consistently across the all level, you can have confident that they can work consistently.

  3. See Clarity of resume that how much of their own stuff they have put. Even if there is no their own stuff, it is really good than they took from the templates. Because, you need a true people than people who are making up as they are good.
  4. Make comfortable them in the interview hall first. This is very important for fresher since they will get easily tensed and they will not be able to present by themselves because of nervousness even they are good.
  5. Talk with them politely and ask questions related to their comfortable technical language/topic.
  6. You should keep one important thing in your mind that our education system. It is not good in India in-terms of practical learning since here they concentrate only in theoritical stuffs rather than practical. It makes complex to the fresher as well as interviewer. So, you can give low priority to their interview score in technical knowledge than their personal skills and consistent academic score.
  7. Ofcourse, their maths(including logical) skill should be good. you can ask them about their mark in all level and this will also give you a clue whether they are a good problem solver. Or else, you can ask some simple logical & puzzles to determine their capability additionally.
share|improve this answer
    
ji ungaluku madurai ah! Enaku tirunelveli! –  Oscar Dec 14 '10 at 6:38
    
@Pandiya Chendur Please don't make localized out of context comments. No one other than people who knows Tamil will understand what you said above and leaves them wondering. –  Christy John Dec 16 '10 at 12:21
    
-1 for point two –  Ritwik G Oct 14 '11 at 5:06
    
@Scrooge, can you explain more about your concern on my 2nd point? –  sankar Oct 21 '11 at 11:51
    
@sankar i don't see any relation between a proficient programmer and consistent student (at least in the Indian universities context). you will only hire the wrong people if you keep that as your "point two of selection criterion" (P.S. nothing against good students .. I am a throughout distinction holder (Univ. of Pune) myself ..). Doing good at those dumb univ. tests is so f##king unoriginal; it kinda kills a programmers soul. –  Ritwik G Oct 21 '11 at 19:29
add comment

I mostly check for basic programming skills and look for good aptitude. For Aptitude you can ask them to solve them some basic mathematical problems.

I strongly believe that a only good maths guy can be good programmer. If someone's maths is weak he cannot ever ship good code or write good algorithms.

Freshers with these basic qualities can be trained and made productive in no time.

share|improve this answer
    
-1 for 'cannot ever ship good code'... maybe you could explain? –  mpeterson Dec 14 '10 at 6:14
2  
-1 for saying If someone's maths is weak he cannot ever ship good code or write good algorithms. –  CyprUS Aug 8 '11 at 13:20
add comment

I've recently done a fair bit of hiring. The first thing I'm looking for is basic coding skills. We get our agent to make them sit technical test which asks them to write some basic algorithms (and also some SQL).

If they do well enough in that, we'll get them in for an interview. If they have good communication skills, and don't seem too full of themselves, it's a likely hire.

share|improve this answer
add comment

The 3 *I*s

  • Intensity
  • Integrity
  • Intelligence

share|improve this answer
    
What do you mean by "intensity" ? –  barjak Dec 17 '10 at 10:14
    
Intensity in this context means the passion with which he/she can do a job. –  Prasoon Saurav Dec 17 '10 at 10:18
add comment

Not the answer you're looking for? Browse other questions tagged or ask your own question.