DEV Community

Cover image for Surviving ATS Knock-Out Questions, Work Authorization Filters & Years-of-Experience Traps
Muhammad Ali Mughal
Muhammad Ali Mughal

Posted on

Surviving ATS Knock-Out Questions, Work Authorization Filters & Years-of-Experience Traps

The most common rejection I see in engineering job searches is not a weak resume. It is a single dropdown answer. A candidate with eight years of Laravel and Vue.js work answers "5" to "How many years of PHP experience do you have?" because they counted only their current job, the requisition's rule says "less than 6 = disqualify", and the application is moved to a rejected state before the parser even reads the PDF. Nobody looked at it. Nobody will.

While building Smart Resume Analyzer, I have walked a lot of engineers through their rejected applications line by line. In maybe a third of the cases, the resume was fine and the knock-out questionnaire did the damage. This post is about that layer: the screening questions, the work authorization and sponsorship filters, and the years-of-experience math that quietly sorts candidates before any keyword ranking or human review starts.

📚 Series Roadmap — 2026 Tech Hiring & AI Screening Playbook

What are ATS knock-out questions and how do you avoid being auto-rejected by them?

Direct answer: Knock-out questions are screening questions an employer configures with a disqualifying answer, such as "No" to work authorization or fewer years than required. Answer them truthfully but precisely: count all relevant professional years, match your resume dates to your answer, read sponsorship wording literally, and check which ATS the job uses before applying.

Open notebook and blank index cards on a wooden desk in morning light, representing pre-computing honest answers to job application screening questions

How the knock-out layer actually works

In Part 1 I described the ranking pipeline as parse, normalize, score. Knock-out questions sit in front of all of that. They are not AI and they are not clever. They are rules a recruiter or hiring coordinator set up when the requisition was opened, usually copied from the last similar job:

Requisition: Senior Backend Engineer (PHP/Laravel)
Q1  Are you legally authorized to work in [country]?          Yes / No        -> "No" = reject
Q2  Will you now or in the future require visa sponsorship?   Yes / No        -> "Yes" = reject (if no sponsorship budget)
Q3  Years of professional PHP experience?                     0-2/3-5/6-8/9+  -> "0-2","3-5" = reject
Q4  Willing to work on-site in Riyadh 3 days a week?          Yes / No        -> "No" = reject
Q5  Expected base salary (numeric)                            free text       -> often hidden range filter
Enter fullscreen mode Exit fullscreen mode

Depending on the platform and configuration, a disqualifying answer can do one of three things: auto-reject immediately (sometimes with a delayed "we've decided to move forward with other candidates" email), move you to a low-priority bucket the recruiter never opens, or just flag you. You cannot see which one applies, so treat every configured question as a hard gate.

The behavior also differs by platform. Before applying, I check the job link with the Which ATS Is This Job Using tool (I wrote up the URL patterns in this earlier DEV post), because the questionnaire style tells you a lot about how strict the gate is.

ATS Platform Typical Knock-Out Style Where Questions Appear Common Trap for Engineers What I Do Differently
Workday Multi-page questionnaire, dropdown ranges, "Yes/No" eligibility pages After account creation, before or after resume upload Re-typed work history with different dates than the PDF; range dropdowns that undercount Fill the "My Experience" page manually so it matches the PDF exactly; see the Workday Resume Checker
Greenhouse Custom application questions on a single page, often free text plus a few required selects Same page as resume upload Short free-text answers that read as "no" to a human screener; location and relocation questions Answer free-text with a specific sentence, not "N/A"; check with the Greenhouse Resume Checker
iCIMS Prescreen questionnaires, sometimes weighted/scored Before resume upload on many portals Weighted questions where a "partial" answer silently lowers rank Pick the most accurate highest-applicable option; see the iCIMS Resume Checker
Lever / Ashby / others Short custom questions, recruiter-defined Application form Salary and notice-period fields used as filters Give a researched range, not a single low or high number

Trap 1: The years-of-experience undercount

This is the one that hurts senior engineers the most. People answer the "years of X" question with their gut, usually counting the job where the skill was in the title. Recruiters and ATS rules mean total professional years using the skill.

My own example: I have been writing PHP professionally for over nine years, but only some of those roles had "PHP" or "Laravel" in the title. If I counted only titled roles I would land in a lower bucket and get cut from senior requisitions I am qualified for.

Here is the method I give people:

Step 1  List every role (including freelance/contract) with Mon YYYY - Mon YYYY dates.
Step 2  For each role, mark whether the skill was used in production work (not tutorials).
Step 3  Sum the months for marked roles. Do not double-count overlapping roles.
Step 4  Round down to whole years. That is your honest answer.
Step 5  Make sure the resume shows that skill inside those dated roles, so the parser agrees.
Enter fullscreen mode Exit fullscreen mode

Step 5 matters because some platforms and recruiters cross-check. If your dropdown says "9+" and the parsed resume shows PHP only in a 2023-present role, you look inflated. I covered how parsers compute those ranges in How ATS Parsers Read Work Experience Dates, Career Gaps & Overlapping Roles.

Before and after: making the resume support the answer

Before (skill hidden in a summary, role bullets skill-less):

Software Engineer — Fintech Co. | Mar 2018 - Jun 2021
- Built payment features and internal dashboards.
- Worked with the team on performance improvements.
Enter fullscreen mode Exit fullscreen mode

After (skill attached to the dated role, so it counts toward the PHP total):

Software Engineer — Fintech Co. | Mar 2018 - Jun 2021
- Built PHP 7 / Laravel 5.8 payment reconciliation services processing 40k transactions/day on MySQL.
- Cut dashboard API p95 latency from 1.9s to 420ms by adding Redis caching and fixing N+1 Eloquent queries.
Enter fullscreen mode Exit fullscreen mode

Same job, same truth. Now the parser credits 3 years and 3 months of PHP/Laravel to that range, and the questionnaire answer is backed by the document.

Trap 2: Work authorization and sponsorship wording

Two questions look alike and are not:

  • "Are you legally authorized to work in this country?" asks about today.
  • "Will you now or in the future require sponsorship?" asks about any time, including when a temporary permit expires.

The common mistakes are answering the second question based only on the current permit, and answering "No" to authorization for a fully remote role through an Employer of Record when the job actually hires internationally. Read the posting's location line and the question together. If a remote role says "Remote — Pakistan" or "Remote — EMEA" and asks about authorization, it usually means authorization in your country of residence.

Never lie on these. Misrepresenting authorization surfaces at offer or background-check time and gets the offer pulled. The honest fix is targeting: filter for roles that state sponsorship, EOR hiring, or contractor engagement, and stop spending applications on requisitions where a truthful answer is a guaranteed reject.

Trap 3: Location, on-site and salary fields

From the recruiter side, "Willing to relocate?" and "Expected salary" are used as filters far more often than candidates assume. Patterns I have seen cause silent rejections:

  • Answering "No" to relocation on a hybrid role because the question was ambiguous. If you would relocate for the right offer, "Yes" is truthful; add a note in a free-text field if one exists.
  • Typing a single salary number far outside the band. Use a range anchored on market data for that location, e.g. USD 85,000 - 100,000 base, flexible on total compensation.
  • Leaving a numeric field as 0 or 1 to avoid committing. Some forms treat that as a real number and rank you out.

Trap 4: Inconsistency between the form and the PDF

Workday in particular asks you to re-enter experience on its own pages, and the resume autofill is often wrong: merged roles, swapped months, missing companies. Recruiters see the form data first. If the form says you joined in 2021 and the PDF says 2019, you look careless or dishonest.

Before submitting, I do a side-by-side check of every role: company, title, start month, end month. Then I run the final PDF through the ATS Resume Checker to confirm the parsed dates match what I typed.

The 8-step knock-out diagnostic checklist

  1. Identify the ATS first. Use the job URL and Which ATS Is This Job Using to know whether to expect a Workday questionnaire, a Greenhouse single-page form, or an iCIMS prescreen.
  2. Pre-compute your skill years. Keep a small table of total professional years per core skill (PHP, Laravel, Vue, Node, TypeScript, .NET) using the 5-step method above.
  3. Make the resume prove the number. Every skill you claim years for must appear inside dated roles, not only in the skills list.
  4. Read authorization questions literally. "Now" vs. "now or in the future" are different questions.
  5. Check location and remote scope. Match the question to the posting's location line before answering.
  6. Give researched salary ranges. Never a placeholder number.
  7. Reconcile form vs. PDF. Company, title, and month/year must match exactly.
  8. Log your answers. Save your questionnaire answers per application so you stay consistent when the same company reposts or a recruiter calls.

Frequently asked questions

Can I find out whether I was rejected by a knock-out question?

Usually not directly. The signal is timing: a rejection email within minutes or hours of applying, before any human could have reviewed it, strongly suggests a rules-based disposition. Review your answers for that application against the posting.

Should I round up my years of experience to pass the filter?

No. Round down to whole years based on dated professional roles, and include freelance and contract work where you used the skill in production. Honest totals are often higher than people expect once they count every role.

What if the dropdown options do not fit my situation?

Pick the most accurate option, then use any free-text or cover-letter field to clarify in one sentence, for example: "7 years PHP total; 4 of those leading Laravel teams."

Does answering "Yes" to sponsorship always mean rejection?

Not always. Some companies sponsor, and others ask only for planning. But if the posting says "no sponsorship available," a truthful "Yes" will almost certainly be filtered, so spend that application on a role that sponsors or hires through an EOR.

Do knock-out questions affect my resume's keyword ranking?

They run separately. A strong keyword match does not override a disqualifying answer, and a perfect questionnaire does not fix a resume the parser cannot read. You need both, which is why I check the parse with the Workday Resume Checker before applying to Workday portals.

Next in this series, Part 4 covers writing system design, reliability, and cost-reduction bullets for backend and DevOps resumes.


Follow & Connect

Top comments (0)