You are currently viewing Copilot Studio and AI builder – Better together. Post 4 – Automating Resume Intake with Power Automate

Copilot Studio and AI builder – Better together. Post 4 – Automating Resume Intake with Power Automate

Introduction

A key pillar of the Talent Intake System is automation. While earlier posts covered the structure of the Dataverse tables and the Model-Driven App used by HR professionals, this post dives into how Power Automate is used to streamline the resume intake process—from the moment a file is uploaded on the public-facing Power Page to the point where it's ready for review.

Why Automate Resume Intake?

Manual intake processes often lead to delays, inconsistencies, or missing data. By automating the intake process, we ensure each resume is processed in a standardized way: creating related records, triggering evaluations, and routing data to the right tables and users. This also provides a scalable foundation for incorporating AI-based classification and scoring later in the pipeline.

Triggering the Flow

The intake process begins with a Power Pages form submission, where a user uploads a resume and selects the job they are applying for. This submission triggers a Power Automate cloud flow that handles the entire intake pipeline.

Flow Breakdown

Here’s a high-level summary of the key steps in the flow:

  1. Store a Snapshot of the Job Posting

    To preserve context, the flow copies key fields from the Job Posting (e.g., title, location, qualifications) directly onto the Application record. This ensures that even if the posting changes later, each application retains the original requirements it was evaluated against.

  2. Parse the resume using AI builder prompts and save the outputs to Dataverse
    1. The first AI builder prompt will read the resume and output as JSON. Each job and education found in the JSON output is then added to an array and saved to Dataverse.
      You are tasked with extracting information from a resume. Your goal is to identify and summarize key details that reflect the candidate's professional background, skills, and qualifications.
      
      ### Instructions:
      1. **Analyze the Resume**: Carefully read through the provided resume to extract the following key details:
         - **Contact Information**: Name, phone number, email address, and LinkedIn profile (if available).
         - **Work Experience**: Job titles, companies, durations of employment, and key responsibilities or achievements.
         - **Education**: Degrees obtained, institutions attended, and graduation dates.
         - **Skills**: Technical skills, soft skills, and any relevant certifications.
         - **Professional Summary**: A brief overview of the candidate's career objectives or highlights.
      
      2. **Summarize the Information**: Organize the extracted details into a clear and concise format that highlights the candidate's qualifications.
      
      3. **Output Format**: Your output must be a clean, valid JSON object using this exact structure. Even if there is only one education or work experience entry, always return these fields as arrays includes the following:
      
      full_name: The candidate's name
      
      email: Primary contact email (if present)
      
      phone: Phone number (if present)
      
      education: Summary of highest education (degree, school, graduation year if available)
      
      skills: A list of identified skills (technical, tools, soft skills)
      
      work_experience: List of jobs with role title, company, and years worked (start and end year)
      
      certifications: List of certifications (if any)
      
      summary: A brief 2–3 sentence summary of the candidate, if available in resume
      
      Provide the resume for analysis here:  Document input 

       

    2. The next prompt uses the same resume to extract the security information and save it to Dataverse as a JSON
      You are tasked with reviewing a resume to determine if the individual has an active security clearance or has held one in the past. Your analysis should focus on identifying any mentions of security clearances and specifying the type if applicable.
      
      ## Instructions:
      1. **Read the Resume Thoroughly:** Carefully examine the provided resume for any references to security clearances.
      2. **Identify Active or Past Clearances:** Look for keywords such as "active clearance," "security clearance," "Top Secret," "Secret,", "Confidential, or "Public Trust".
      3. **Note the Type of Clearance:** If a clearance is mentioned, specify the type (e.g., Top Secret, Secret, etc.) and whether it is currently active or was held in the past.
      4. **Determine Status** If currently active, capture the type and note it as active. If no active clearance, check for previous clearances held.
      5.**Conditional Output Rule** If an active clearance is found, do not include past clearance info. Only include Past Clearance if no active clearance exists.
      
      ### Output Format:
      Your response should follow this structure:
      
      If Active Clearance is Yes
      #### Security Clearance Summary:
      - **Active Clearance:** [Yes/No]
      - **Type of Clearance:** [Specify type if applicable, e.g., Top Secret, Secret, etc.]
      
      If Active Clearance is No
      #### Security Clearance Summary:
      - **Active Clearance:** [Yes/No]
      - **Type of Clearance:** [Specify type if applicable, e.g., Top Secret, Secret, etc.]
      - **Past Clearance:** [Yes/No] (Only include this line if Active Clearance is "No")
      
      ### Example:
      If Active Clearance is Yes
      #### Security Clearance Summary:
      - **Active Clearance:** Yes
      - **Type of Clearance:** Top Secret
      
      If Active Clearance is No
      #### Security Clearance Summary:
      - **Active Clearance:** No
      - **Type of Clearance:** Top Secret
      - **Past Clearance:** Yes
      
      Provide the resume for analysis: Document input 

       

    3. The final prompt will extract the skills from the resume and save it as JSON in Dataverse
      You are tasked with extracting all declared skills from a provided resume. This includes identifying soft skills, certifications, and technical skills mentioned in the document. 
      
      ### Instructions:
      1. **Analyze the Resume**: Carefully read through the provided resume to identify and categorize the skills.
         - **Soft Skills**: Look for interpersonal skills, communication abilities, teamwork, leadership, etc.
         - **Certifications**: Identify any professional certifications or licenses listed.
         - **Technical Skills**: Extract specific technical proficiencies, tools, programming languages, or methodologies mentioned.
      
      2. **Organize the Skills**: Create a structured list categorizing the skills into soft skills, certifications, and technical skills for clarity.
      
      3. **Output Format**: Present the extracted skills in a clear and organized manner.
      
      ### Output Structure:
      Your response should follow this format:
      
      #### Extracted Skills from Resume:
      1. **Soft Skills**:
         - [List of soft skills]
         
      2. **Certifications**:
         - [List of certifications]
         
      3. **Technical Skills**:
         - [List of technical skills]
      
      ### Example:
      #### Extracted Skills from Resume:
      1. **Soft Skills**:
         - Communication
         - Teamwork
         - Problem-solving
      
      2. **Certifications**:
         - Certified Project Management Professional (PMP)
         - AWS Certified Solutions Architect
      
      3. **Technical Skills**:
         - Python
         - SQL
         - Agile Methodologies
      
      Provide the resume for analysis: Resume 

       

    4. When adding the file from Dataverse to the prompt the file needs to be wrapped it in base64
  3. Trigger the Agent Evaluation Pipeline

    Once the Application record is updated with the job posting information and the resume information, a Copilot Studio agent kicks off to begin the automated resume evaluation process, including extracting skills, comparing against qualifications, and scoring the submission.

What’s Next

This automation sets the stage for advanced processing. In the next post, we’ll look at how Copilot Studio and AI Builder come into play to provide intelligent evaluation, classification, and even interview scheduling—all without human intervention until it matters most.

Leave a Reply