Free hiring tool
Check a Job Post for Legal and Bias Problems
Paste any engineering job post and get a fix list: missing pay range where required, "US citizens only", age/gender/origin-coded words, salary-history asks, too many must-haves. Deterministic; nothing stored.
Try it
A fix list for any engineering job post: missing pay range, "US citizens only", coded words, too many must-haves.
Worked example
A made-up example, run through the tool when this page was built. Load it into the form above to see it live.
Input
- Post text
Rockstar Full Stack Developer Join our young, energetic team! US citizens only. Requirements: - 10+ years of JavaScript - React - Node.js - AWS - Kubernetes - Python - Go - CS degree required - Native English speaker Please include your salary history with your application.
- Locations
- California
- Employee count
- 40
Result
8 issue(s) found (3 high).
- HIGH "US citizens only" restricts applicants by citizenship or immigration status. The DOJ Immigrant and Employee Rights Section has settled cases over postings like this. ("Join our young, energetic team! US citizens only.")Fix: Ask instead: "Are you legally authorized to work in the US?" and "Will you now or in the future require visa sponsorship?" Keep a citizenship requirement only if a law, regulation, or government contract requires it, and say which.
- HIGH Asking for "salary history" is banned in many states and cities (e.g. CA, NY, NJ, IL, MA, CO, WA, VA) and anchors offers to past pay. ("Please include your salary history with your application.")Fix: Remove it. If you want to check fit, ask for expected compensation instead, and publish your range.
- HIGH No pay range found, and pay-transparency laws apply in: California.Fix: Add a good-faith salary or hourly range (minimum and maximum, not open-ended). Also check each law's extra items, e.g. a benefits description (none here).
- MEDIUM "young, energetic team" signals an age preference. The ADEA protects applicants 40 and older. ("Join our young, energetic team! US citizens only.")Fix: Describe the work and the skills it needs, not the age or career stage of the person. State a MINIMUM experience if you need one, never a maximum, and drop graduation-year requirements.
- MEDIUM "Native English speaker" is a proxy for national origin, which Title VII protects. ("- Native English speaker")Fix: Write the level you actually need: "fluent professional English (written and spoken)" or "able to present to customers in English".
- MEDIUM 9 must-have requirements. Long must-have lists deter qualified applicants, especially women and career changers, who tend to apply only when they meet every item.Fix: Cut to the 3-5 that truly gate the job. Each must-have should pass: would I turn down a strong candidate missing only this? Move the rest to "Nice to have".
- LOW "energetic" is often read as code for "young". ("Join our young, energetic team! US citizens only.")Fix: Name the behaviour you need instead, e.g. "comfortable owning several projects at once" or "moves quickly on ambiguous problems".
- LOW "Rockstar" is masculine-coded jargon that measurably reduces applications from women. ("Rockstar Full Stack Developer")Fix: Say what the person will do: "senior engineer who owns the payments service end to end".
Pay rules as of 2026-10-04. General information, not legal advice. Laws change and vary by location; confirm with counsel.
What it needs
| Input | What to give it |
|---|---|
| Post textrequired | The full job post text |
| Locationsoptional | Where the role can be filled (for pay-range rules) |
| Employee countoptional | Total employees |
Call it from your assistant
In any assistant connected to Ruzora's MCP server, the tool is lint_job_post. Your assistant fills the arguments from the conversation; this is the shape:
{
"post_text": "Rockstar Full Stack Developer Join our young, energetic team! US citizens on...",
"locations": [
"California"
],
"employee_count": 40
}Frequently asked questions
- Is "Check a Job Post for Legal and Bias Problems" free?
- Yes, it is free. The check runs in your browser on this page, so the text you paste stays on the page. The same check runs in Ruzora's MCP server and in Sol; if you continue there, what you send goes to that service.
- What does "Check a Job Post for Legal and Bias Problems" need from me?
- Post text (required): The full job post text. Locations (optional): Where the role can be filled (for pay-range rules). Employee count (optional): Total employees.
- How does "Check a Job Post for Legal and Bias Problems" work?
- It is a deterministic rule check: no AI model reads your text, and the same input always gives the same result.
- Does it make the hiring decision?
- This organizes evidence for you. It is not a hiring decision: you make the call.
- What can it miss?
- These are pattern checks: they catch the listed wording, not every biased or unlawful phrase, and they cannot judge tone or whether a requirement is truly needed. A human read is still worth it.
- Is this legal advice?
- General information, not legal advice. Laws change and vary by location; confirm with counsel.
