Programmer is a highly skilled position, and excellent programmers are equally rare in every company. And this needs the technical interviewer’s fire eye fine gold, excavates the talent for the enterprise.

With so many programmers being interviewed, how to quickly identify their abilities, saving time and energy for both parties, has become one of the skills interviewers must have.

However, people’s skills are graded, so different job requirements should be treated from different perspectives. If you go through the same recruitment process, it can be problematic.

Today, we’ve taken a look at some of the best ways to quickly judge a programmer’s skills, from the interviewer’s point of view.

Read the candidate’s resume

Resumes are the stepping stone for job seekers. Reading a candidate’s resume is the first step in the hiring process. Resumes come in all shapes and sizes, and engineering interviewers are usually busy. How do they read resumes quickly and without losing focus?

A candidate’s experience with a large company is important to the interviewer, and the higher the rank, the better. In general, Ali P8 is better than P7 technical ability, Baidu T7 is better than T6. However, this is only true for large companies. For some small companies, Title does not equate to ability.

Second, the interviewer will also look at technical project experience, high-quality open source projects, project background is appropriate, whether the technical website has published articles or high-quality technical blog, and whether the candidate has done some side projects, etc., are the criteria for the interviewer to judge the candidate’s ability.

Two, the interview process assessment of technical skills

Some technical interviewers ask memorization questions and theoretical questions, but these are relatively meaningless liberal arts questions that don’t measure technical skills.

Experienced interviewers will design questions like this:

Give some code snippet that includes Spring features, and ask the candidate to explain the major actions taken from application startup to code execution. Of course, candidates will be told to focus on Spring’s AOP/IOC features, and be as specific as possible so that they don’t understand what the interviewer is trying to say.

This gives the candidate something to say, avoids rote memorization, and is a better test of whether the candidate really understands.

Some interviewers said they would also ask candidates to rewrite a thread-safe class to be thread-safe, involving volatile, locking, concurrent containers, Atomic operations, CAS lock-free programming, and so on.

The candidates who can give good answers must have practical experience, thought deeply, and really understand. Others, on the other hand, may have just read a few tech blogs.

Third, technical discussion

More interviewers like to treat the interview as a technical discussion, and get a sense of the candidate’s technical abilities.

For example, the interviewer will ask the candidate to introduce the architectural design of a certain project. After the candidate explains the architectural design of the project, the interviewer will raise the defects in the design or ask the technical difficulties in the architecture and discuss with the candidate in depth.

If a candidate performs well during the process, he or she is close to passing the interview.

For the interviewer, the candidate’s technical ability is fundamental, so the interview process will be a more comprehensive assessment of them. Their interview experience can also be instructive for programmer candidates:

“How to present yourself in front of the interviewer and help you gain recognition faster.”