How to interview a developer? This is a very common problem. Different people have different criteria for judging. Here is a mathematical method for me to score a developer quantitatively, so that we can roughly compare the quality of different developers based on the scores.

Quantitative Table

Item Remark Weight (1-5)
CS Basic Knowledge OS? Network? Language? Framework? Code Style? 5
Data Structure + Algorithm Basic DSA is necessary, DP/Tree/Graph? 4
Project Experience Open-source? interesting? Valuable? Match the job? 4
Job/Education Experience Well-known companies/schools are preferred. 2
Clever Self-study? Self-driven? Savvy? Good at taking notes? 2
Character Perseverance? Passionate about tech? 1
Teamwork Communication? Cooperation? Management? 1
Others Award? Hobby? Geek? 1

For an interviewer, the important are:

  • Read the candidate’s resume carefully and annotate it before the interview.
  • Be like a friend, you can get to know a real and natural performance of candidate.
  • Give the candidate more time to talk about his experience and demonstrate his abilities.
  • Be careful to guide candidates, as most candidates don’t know exactly what they need to show.

For a candidate, the important are:

  • The ability of systematical thinking.
  • The ability to find knowledge and digest knowledge.
  • The mindset of problem-solving.
  • The ability to use existing resources like software.
  • The ability of communication and teamwork.

Assessment

  • 80 < score <= 100 - Excellent
  • 65 < score <= 80 - Very good
  • 50 < score <= 65 - Can be considered
  • 25 < score <= 50 - Relatively Worse
  • 0 < score <= 25 - Extremely Worse