Programming interview

From HandWiki

A programming interview is a technical job interview in the software industry or in information technology (IT) departments of major corporations to test candidates' technical knowledge, coding ability, problem solving skills, and creativity about computers. Candidates usually have a degree in computer science, information science, computer engineering or electrical engineering, and are asked to solve programming problems, algorithms, puzzles, and/or computer related technical questions as used in Microsoft interviews.[1][2]

Interview process

Screening interview

A screening interview is usually undertaken by human resources or personnel staff, or by a third-party recruiter. The aim of the screening interview, which can occur by telephone or in person, is to check a candidate's technical relevance against the job and whether they meet minimum qualification requirements so that interviewers can determine if a candidate has the basic skills to perform the work. Candidates will be asked questions oriented around their experience and training, though there may be some questions designed to reveal other issues such as deceptiveness. However, their main interest is gathering resumes and initial impressions before making decisions on whether they will move to the next step.[3] This phase can also be aided by software tools for assessment of programming proficiency.

On-site interview

An on-site interviews consist mostly of a variety of technical questions: problems requiring a candidate to implement a simple program or function, questions that test knowledge of computers, languages, and programming; and mathematics and logic puzzles. On-site interviews usually last either a half day or a full day, and typically consist of three to six interviews of 30 to 60 minutes each.[4]

Programming language

If the interviewing position has specific programming language requirements, the candidate is expected to know those languages and solve the questions with it. If the interview is for general programming or development position, a thorough knowledge of one mainstream language such as C, C++, C#, or Java may be enough to get by.[citation needed] An interviewer may also allow use of other popular languages, such as JavaScript, PHP, or Perl. If a choice of languages is given, it is best to choose the one the interviewee is most familiar with. Interviewers are less likely to allow using less-mainstream languages such as Lisp, Tcl, Prolog, COBOL, or Fortran, however, if a candidate is especially expert at one of these, it is definitely good to tell the interviewer.

Dress code

The dress code for an on-site programming interview is usually reflected by what other people wear at the company. These days, most companies in the software industry allow business casual at work. Therefore, unless it is asked or the interviewing position has a significant business or consulting aspect whereby formal dress will be needed, a suit may be overkill for a programming interview. It is advised to dress professionally and appear clean and tidy since it gives the first impression of the candidates. If the information about the dress code of a target company is given or can be found, wear accordingly. Women are advised to avoid heavy jewelry.[5]

See also

  • Competitive programming

References

  1. Adnan Aziz; Tsung-Hsien Lee; Amit Prakash, Elements of Programming Interviews: The Insiders' Guide (1st ed.), CreateSpace, ISBN 978-1-479-27483-3 
  2. John Mongan, Programming Interviews Exposed: Secrets to Landing Your Next Job (2nd ed.), Wrox, ISBN 978-0-470-12167-2 
  3. collegegrad.com
  4. ilr.cirbekk.edu
  5. cio.com