AI Resume Parser and Developer Profile Analyzer - n8n Workflow

Automate technical recruiting by using this advanced n8n workflow. It uses VLM Run to parse resumes, analyze candidate GitHub profiles, and save structured data to Google Sheets.

Workflow Preview

Ready to automate?

Download this n8n workflow template and start using it instantly.

Who is this best for?


  • Technical Recruiters and HR Professionals managing high-volume applications.

  • Startups and Hiring Managers seeking automated technical skill assessment.

  • Teams looking to centralize candidate data efficiently using an n8n workflow.

  • Developers interested in customizing n8n templates for advanced data processing.

Overview

The challenge in technical hiring is manually extracting structured data from diverse resume formats and cross-referencing that data with external professional profiles like GitHub. This n8n workflow solves this by creating a hands-free, scalable intelligence pipeline.

Using an n8n trigger, it instantly processes incoming applications. VLM Run handles the complex task of AI resume parsing. Crucially, the n8n workflow then performs deep GitHub analysis, calculating experience, identifying language distributions (JavaScript, Python, C++, etc.), and counting total stars/forks. This comprehensive profile is then automatically logged into Google Sheets and instantly shared with the team via Slack, ensuring timely follow-up and data integrity. This specific n8n template dramatically reduces manual labor and speeds up time-to-hire.

How it Works

This automation initiates with the 'Monitor Gmail for Resumes' n8n trigger, which constantly checks for new emails containing attachments.


  1. Resume Intake: The Gmail n8n trigger captures the email and downloads the resume attachment (PDF/DOCX).

  2. AI Parsing: The 'Parse Resume with VLM Run' n8n node takes the attachment and extracts key fields (name, email, phone, GitHub URL, etc.) into a structured JSON object.

  3. Conditional Logic: The 'Check for Github Profile' If n8n node verifies if a GitHub URL was successfully extracted.

  4. GitHub Analysis (If True): If a URL exists, the workflow uses Code and HTTP Request n8n nodes to extract the username, fetch public profile data, and analyze all public repositories. Custom Code n8n nodes calculate GitHub account age (experience), framework usage, and aggregate metrics like total stars and forks.

  5. Data Consolidation: Whether GitHub analysis was performed or skipped, the 'Flatten Response' Code n8n node merges the initial resume data with the collected GitHub metrics, creating a single, rich candidate profile item.

  6. Output & Storage: The consolidated data is immediately appended to the 'Save to Google Sheet' n8n node, creating a searchable database.

  7. Team Notification: The 'Send Slack Notification' n8n node alerts the hiring team with a summary.

  8. Candidate Acknowledgement: Finally, the 'Send Acknowledgement Email' Gmail n8n node sends a professional confirmation back to the applicant.

Installation Guide

To deploy this powerful n8n workflow, follow these setup steps:


  1. Import: Copy the entire JSON code and paste it into your n8n canvas using the 'New' -> 'Import from JSON' option.

  2. Credentials Setup:

Gmail Trigger & Sender: Configure two separate Gmail OAuth2 credentials for the 'Monitor Gmail for Resumes' trigger and the 'Send Acknowledgement Email' node.
VLM Run: Create an API Key credential for the 'Parse Resume with VLM Run' n8n node.
Google Sheets: Set up Google Sheets OAuth2 access for the 'Save to Google Sheet' n8n node, ensuring the connected account has write access to the target spreadsheet.
Slack: Configure Slack API credentials for the 'Send Slack Notification' n8n node, and set the target channel ID.

  1. Google Sheet Configuration: Ensure you have a target Google Sheet created with columns matching the data mapping defined in the 'Save to Google Sheet' n8n node (e.g., Name, Email, GitHub Experience, Python Projects, etc.).

  2. Activation: Once all credentials are linked and the necessary parameters (like Google Sheet ID and Slack Channel) are updated, activate the n8n workflow.

Node Details

Monitor Gmail for Resumes (Gmail Trigger n8n trigger):
Function: Starts the n8n workflow upon receiving a new email. Essential for initiating the automated process.
Key Configuration: Configured to poll every minute and crucially, downloadAttachments is set to true to retrieve the resume file.
Parse Resume with VLM Run (VLM Run n8n node):
Function: Uses AI (VLM Run) to perform highly accurate optical character recognition and structured data extraction from the resume attachment, specifically targeting the document.resume domain.
Key Configuration: file set to attachment0 (the first downloaded attachment); domain set to document.resume.
Check for Github Profile (If n8n node):
Function: Directs the flow based on whether the VLM Run parsing extracted a GitHub URL from the resume.
Key Configuration: Checks if {{ $json.response.contactinfo.github }} exists.
Analyze Repository Data (Code n8n node):
Function: Custom JavaScript logic that iterates through the list of GitHub repositories, calculating total stars, total forks, and counting the primary language and known frameworks (e.g., React, Django, Docker) based on repository descriptions and topics. This demonstrates the power of a custom n8n node implementation.
Flatten Response (Code n8n node):
Function: Merges the data from three upstream sources (VLM Run data, GitHub Profile data, and GitHub Repository data) into a single, comprehensive JSON object for simplified output mapping.
Save to Google Sheet (Google Sheets n8n node):
Function: Stores the final structured candidate profile, including technical metrics, into a centralized tracking spreadsheet.
Key Configuration: Operation set to appendOrUpdate; maps specific fields like C++ Projects, GitHub Experience, and Github follower count directly from the flattened JSON output.
Send Acknowledgement Email (Gmail n8n node):
Function: Provides good candidate experience by sending an automated, personalized response to the applicant's extracted email address.

Related n8n Workflows

Free

Nodes: 10 Nodes
Updated: December 26 2025
View all
Created by

I’m Shahrear, a Software Engineer with over 5 years of experience in full-stack development and workflow automation. I specialize in building intelligent, scalable automations using n8n, helping teams streamline operations and boost productivity. I’m also an expert in developing custom n8n nodes, with published work on npm - including the @vlm-run/n8n-nodes-vlmrun package. https://github.com/vlm-run/n8n-nodes-vlmrun

Featured*