The ‘Entry-Level’ Gatekeeper: Auditing Job Descriptions with Textstat

This article shows how to use free, open-source tools like Python and its Textstat library to build a script that automates the process of capturing "gatekeeping language" in job descriptions before publishing them.



The 'Entry-Level' Gatekeeper: Auditing Job Descriptions with Textstat
 

Introduction

 
Have you ever come across an "entry-level" job description in which candidates' requirements include impenetrable aspects like "leveraging cross-functional paradigms for optimizing synergistic outcomes", or even worse? When HR documents are full of dense jargon or business terms, they not only confuse readers but also scare talented, capable job seekers away. Since the first step towards inclusivity is accessibility, why not ensure your job descriptions keep an accessible tone through auditing processes?

This article shows how to use free, open-source tools like Python and its Textstat natural language processing (NLP) library to build a script that automates the process of capturing "gatekeeping language" in job descriptions before publishing them.

 

The Key Ingredient: Gunning Fog Index

 
The Gunning Fog Index — available in Textstat by using textstat.gunning_fog — is an excellent approach to audit text, particularly entry-level job listings. In essence, this index can be utilized to estimate the number of years of formal education a person may need to comprehend a text on a first read.

Its calculation is based on observing two main factors: average sentence length and percentage of complex terms — typically words having three syllables or more. Note that business jargon commonly abuses multi-syllable buzzwords like "operationalization", "methodologies", and so on. Therefore, the Gunning Fog Index closely approaches our intended goal of auditing job descriptions to ensure they are not overly complex for the intended profile they are meant to attract. In other words, it helps ensure the language is clear and accessible. A lower value for this index means greater clarity and accessibility.

 

Auditing an Example with Textstat

 
The first crucial step is to install the Textstat library for Python if you haven't done so yet:

pip install textstat

 

The core logic of our script will reside in a reusable function whose purpose is to audit an input text — e.g. an entry-level job description:

import textstat

def audit_job_description(job_text):
    # Calculating the Gunning Fog Index
    fog_score = textstat.gunning_fog(job_text)

    # Determining the inclusivity verdict based on the score
    if fog_score < 10:
        verdict = "Accessible & Inclusive. Ideal for entry-level."
    elif 10 <= fog_score <= 14:
        verdict = "Caution: Approaching gatekeeper territory. Simplify some terms."
    else:
        verdict = "Gatekeeper Alert: High jargon density. Rewrite for clarity."

    # Returning a formatted report
    return {
        "Gunning-Fog Score": fog_score,
        "Verdict": verdict
    }

 

The steps taken in the previous function are quite simple. First, we go straight to the point and calculate the Gunning Fog score for the text (presumably a job description) passed as input. This score, stored in fog_score, goes through a simple condition-based check to generate three different verdicts based on text complexity — much like a three-color traffic light system.

Generally speaking, a text with a Gunning Fog score below 10 is considered accessible and ideal for an entry-level job description. A score between 10 and 14 is moderately complex, and a score above 14 is deemed highly complex and in need of substantial revision.

Next, it's time to test our auditor by passing it two different example job descriptions:

# EXAMPLE 1: A "Gatekeeper" Job Description
complex_jd = """
The successful candidate will leverage cross-functional paradigms to optimize synergistic deliverables.
You will be expected to operationalize key performance indicators and facilitate continuous improvement methodologies
to maximize our return on investment and institutionalize core competencies across the organizational ecosystem.
"""

# EXAMPLE 2: An "Inclusive" Job Description
inclusive_jd = """
We are looking for a team player to help us grow our marketing channels.
You will work closely with different teams to launch campaigns, track how well they do, and find new ways to improve.
Your goal is to help us reach more customers and share our brand story.
"""

print("--- Gatekeeper Job Description ---")
print(audit_job_description(complex_jd))

print("\n--- Inclusive Job Description ---")
print(audit_job_description(inclusive_jd))

 

Output:

--- Gatekeeper Job Description ---
{'Gunning-Fog Score': 30.364102564102566, 'Verdict': 'Gatekeeper Alert: High jargon density. Rewrite for clarity.'}

--- Inclusive Job Description ---
{'Gunning-Fog Score': 8.165986394557823, 'Verdict': 'Accessible & Inclusive. Great for entry-level.'}

 

Our auditor did a great job of spotting the first description as a clear "gatekeeper" — a barrier to entry — and recommending that it be rewritten for clarity and inclusivity. The second description scored a much lower 8.16 (compared to 30.36 for the first, which is comparable to postgraduate research papers in terms of language complexity), confirming it is well-suited for attracting entry-level candidates.

 

Wrapping Up

 
Job descriptions are often a company's front door, and excessive business jargon can act as a bouncer in situations where openness matters most — particularly for entry-level roles. This article showed how to use Textstat's Gunning Fog Index to build a simple, automated text auditor that identifies overly complex job descriptions, helping ensure clear, direct, and accessible language that keeps your job listings open to every entry-level talent.
 
 

Iván Palomares Carrascosa is a leader, writer, speaker, and adviser in AI, machine learning, deep learning & LLMs. He trains and guides others in harnessing AI in the real world.


Get the FREE ebook 'KDnuggets Artificial Intelligence Pocket Dictionary' along with the leading newsletter on Data Science, Machine Learning, AI & Analytics straight to your inbox.

By subscribing you accept KDnuggets Privacy Policy


Get the FREE ebook 'KDnuggets Artificial Intelligence Pocket Dictionary' along with the leading newsletter on Data Science, Machine Learning, AI & Analytics straight to your inbox.

By subscribing you accept KDnuggets Privacy Policy

Get the FREE ebook 'KDnuggets Artificial Intelligence Pocket Dictionary' along with the leading newsletter on Data Science, Machine Learning, AI & Analytics straight to your inbox.

By subscribing you accept KDnuggets Privacy Policy

No, thanks!