AI Prompt for Automated Resume Screening and Candidate Shortlisting

About Prompt

  • Prompt Type – Dynamic
  • Prompt Platform – ChatGPT, Grok, Deepseek, Gemini, Copilot, Midjourney, Meta AI and more
  • Niche – Talent Acquisition
  • Language – English
  • Category – Recruitment Automation
  • Prompt Title – AI Prompt for Automated Resume Screening and Candidate Shortlisting

Prompt Details

## AI-Powered Resume Screening and Candidate Shortlisting Prompt

This prompt is designed for automated resume screening and candidate shortlisting, enabling efficient talent acquisition through recruitment automation. It is dynamic and compatible across various AI platforms.

**Input Variables:**

* **`job_description`**: (Required) A detailed description of the job opening, including responsibilities, required skills, qualifications, and preferred experience. This should be as comprehensive as possible, including keywords and phrases relevant to the role. Example: “Senior Software Engineer with 5+ years of experience in Java and Spring Boot, expertise in cloud technologies like AWS, and a proven track record of leading agile development teams.”
* **`resume_text`**: (Required) The plain text extracted from a candidate’s resume. Ensure proper formatting is preserved to the extent possible during text extraction.
* **`essential_skills`**: (Required) A comma-separated list of essential skills required for the role. This list should refine the skills mentioned in the job description and highlight the absolute must-haves. Example: “Java, Spring Boot, AWS, Agile Development”
* **`desired_skills`**: (Optional) A comma-separated list of desired, but not mandatory, skills. Example: “Microservices, Docker, Kubernetes”
* **`years_of_experience`**: (Optional) The minimum required years of experience for the role. Example: “5”
* **`industry`**: (Optional) The industry the role belongs to. Example: “Information Technology”
* **`seniority_level`**: (Optional) The seniority level of the role. Example: “Senior”
* **`scoring_weights`**: (Optional) A JSON object defining weights for different criteria. This allows customization of the scoring process. Default weights are applied if not provided. Example: `{“essential_skills”: 0.5, “desired_skills”: 0.2, “years_of_experience”: 0.1, “industry_experience”: 0.1, “overall_match”: 0.1}`

**Output:**

The output should be a JSON object with the following structure:

“`json
{
“candidate_score”: ,
“matching_skills”: ,
“missing_essential_skills”: ,
“years_of_experience_match”: ,
“industry_experience_match”: ,
“overall_match”: ,
“rationale”:
}
“`

**Prompt Instructions:**

1. **Analyze the `job_description` and `resume_text`**: Thoroughly analyze both inputs to identify the candidate’s skills, experience, and qualifications.
2. **Skill Matching**: Compare the candidate’s skills listed in the `resume_text` with the `essential_skills` and `desired_skills` provided. Identify exact and partial matches, considering synonyms and related terms.
3. **Experience Matching**: Evaluate the candidate’s experience based on the `years_of_experience`, `industry`, and `seniority_level` provided. Infer experience from job titles, descriptions, and durations mentioned in the `resume_text`.
4. **Scoring**: Calculate a `candidate_score` between 0 and 1 based on the matching results. Use the provided `scoring_weights` to prioritize different criteria. If `scoring_weights` are not provided, use the following defaults: `{“essential_skills”: 0.4, “desired_skills”: 0.2, “years_of_experience”: 0.2, “industry_experience”: 0.1, “overall_match”: 0.1}`.
5. **Overall Match Classification**: Classify the overall match as “strong_match”, “moderate_match”, “weak_match”, or “no_match” based on the `candidate_score` and the presence/absence of essential skills. Consider a candidate a “no_match” if they are missing any `essential_skills`.
6. **Rationale Generation**: Provide a concise `rationale` explaining the scoring and matching results. Include specific examples from the `resume_text` that support the evaluation.

**Example Usage:**

“`json
{
“job_description”: “Senior Software Engineer with 5+ years of experience in Java and Spring Boot…”,
“resume_text”: “Experienced Software Engineer with 7 years of experience in Java, Spring, and AWS…”,
“essential_skills”: “Java, Spring Boot, AWS”,
“desired_skills”: “Microservices, Docker”,
“years_of_experience”: “5”,
“industry”: “Information Technology”,
“scoring_weights”: {“essential_skills”: 0.5, “desired_skills”: 0.2, …}
}
“`

This dynamic prompt allows for flexible and precise resume screening, facilitating efficient candidate shortlisting and improving the overall talent acquisition process. By adjusting the input variables and scoring weights, recruiters can tailor the screening process to specific job requirements and organizational needs.