Half the Engineering Jobs You're Applying To Were Posted Over a Month Ago
We measured every engineering listing in our index. Across seven roles, 48-62% were posted more than 30 days ago. Here's what that means for your applications — and how to filter them out.
If you have been applying to engineering jobs and hearing nothing back, part of the explanation is not your resume. It is that a large share of what you are looking at is old.
We measured it. On 13 August 2026, across our index of 1,836,356 listings from 20,000+ companies, we counted how many postings for each common engineering role were first posted within the last 30 days versus earlier. The answer, consistently, is that about half are older than a month.
The numbers
| Search | Listings | Posted in last 30 days | Older than 30 days |
|---|---|---|---|
| backend engineer | 45,544 | 17,415 | 62% |
| frontend engineer | 10,232 | 4,398 | 57% |
| data scientist | 4,626 | 2,073 | 55% |
| software engineer | 45,972 | 20,940 | 54% |
| machine learning engineer | 25,423 | 11,618 | 54% |
| product manager | 17,076 | 8,454 | 50% |
| devops engineer | 28,153 | 14,524 | 48% |
The range is narrow — 48% to 62% — which matters, because it means this is not one weird category dragging an average around. It is the shape of the market.
Zoom in further and it gets starker. Of those 45,972 "software engineer" listings, only 423 were posted in the last 24 hours. That is under 1%. On any given day, more than 99% of what you scroll past is not new.
An old posting is not automatically a fake one
This is where most articles on this subject overreach, so let us be precise.
A listing that has been open for 40 days can mean several different things:
- A genuinely hard-to-fill role. Senior and specialized positions routinely take 2-3 months to close. The req is real and still open.
- A role that was filled, but nobody took the posting down. Extremely common, and invisible from the outside.
- An evergreen pipeline posting. Large employers keep listings up to collect resumes for roles they expect to open later.
- A genuine ghost job — advertised with no intention of hiring.
Only the last of those is deception, and it is rarer than the internet suggests. The best available research is Hunter Ng's "Why is it so hard to find a job now? Enter Ghost Jobs" (arXiv, October 2024), which used Glassdoor data and a BERT-based classifier to estimate that up to 21% of job ads may be ghost jobs, concentrated in larger firms and specialized industries.
So: roughly a fifth may be deceptive, and roughly half are stale. Those are two different problems. The practical consequence is the same either way — your application goes into a void — but conflating them makes you cynical instead of effective.
Why job boards are worse than the source
The staleness you see on a typical job board is usually worse than what we measured, for a structural reason: most boards do not read the employer's applicant tracking system. They ingest feeds from other aggregators, which ingest from others. Every hop adds latency on the way in and, more importantly, on the way out. A closed req can linger for weeks after the ATS stopped serving it.
We scrape company career pages and 40+ ATS platforms directly, hourly. That is why we can tell you a posting first appeared on 12 March rather than guessing from when a feed happened to mention it — and it is why 21,660 listings entered our index in the last 24 hours while the overall pool stayed roughly flat. Jobs are closing at nearly the rate they open. The pool looks static; the contents turn over constantly.
What to do about it
The fix is not to apply faster. It is to stop spending applications on postings whose odds are already bad.
1. Sort by date and mean it
Applying within the first few days of a posting is the single highest-leverage filter available to you. Not because recruiters reward speed, but because a 3-day-old req is far more likely to still be open, still be funded, and still have a human reading the queue.
2. Treat 60+ days as a different category
Do not skip old postings entirely — some are real, and the competition on them is thinner. But treat them as speculative. Do not spend a tailored cover letter on one; spend that effort on something posted this week.
3. Verify against the source before you invest
Before writing anything custom, open the company's own careers page. If the role is not there, it is closed regardless of what the board says. This one habit saves more wasted effort than any resume tweak.
4. Let your AI assistant do the filtering
This is the part that is genuinely new. If you connect a live job data source to Claude, you can ask for freshness directly instead of eyeballing "3 weeks ago" labels:
"Find backend engineer roles posted in the last 7 days,
fully remote, paying over $180k. Skip anything older."
"Of these 20 companies, which posted multiple engineering
roles in the last month? Those are the ones actually growing."
"This role was first posted 4 months ago. Has the company
posted anything else since?"
The JobDataLake MCP server is free for 500 searches a day with no signup, and it exposes the posting date on every result, so the assistant can filter on it rather than guess. Setup takes about a minute for Claude Desktop, Claude Code, or Cursor.
The honest summary
About half of the engineering listings in front of you are more than a month old. Up to a fifth of job ads generally may never have been real. Neither number means the market is hopeless — it means the visible market is much smaller than it looks, and the people doing well are the ones aiming at the fresh slice instead of carpet-bombing the whole thing.
Fewer applications, aimed better, beats more applications aimed at postings that closed in June.
If you want the argument for what to do with the time you save, we wrote that up separately: Stop Using AI to Apply. Start Using It to Choose.
Methodology: counts taken from the JobDataLake index on 13 August 2026 using keyword search per role with a 30-day, 7-day, and 24-hour posted-date filter. "Older than 30 days" is the remainder of total matches after the 30-day window. Figures move daily; re-run them yourself against the API or the MCP server.
Frequently Asked Questions
How many job listings are out of date?
In the JobDataLake index on 13 August 2026, between 48% and 62% of listings for common engineering roles were posted more than 30 days earlier, depending on the role. For 'software engineer' specifically, 54% of 45,972 listings were older than a month, and fewer than 1% were posted in the previous 24 hours.
What percentage of job postings are ghost jobs?
Research by Hunter Ng (arXiv, October 2024) using Glassdoor data estimates that up to 21% of job ads may be ghost jobs — positions advertised without an intention to fill them, concentrated in larger firms and specialized industries. This is a smaller and different problem from stale listings, which are simply postings nobody took down.
Is an old job posting worth applying to?
Sometimes, but treat it as speculative. A posting open 40+ days may be a genuinely hard-to-fill senior role, a filled position nobody removed, an evergreen pipeline posting, or a ghost job. Verify it still exists on the company's own careers page before investing time in a tailored application.
How can I filter out stale job listings?
Filter by posting date and prioritize anything from the last 7 days. Verify against the employer's own careers page before writing anything custom. If you use an AI assistant, connect a live job data source such as the JobDataLake MCP server so it can filter on posting date directly instead of guessing from board labels.
Why do job boards show jobs that are already filled?
Most job boards ingest feeds from other aggregators rather than reading employers' applicant tracking systems directly. Each hop adds delay, especially on removal, so a closed requisition can remain visible for weeks after the ATS stopped serving it.
Try JobDataLake
1.8M+ enriched job listings from 25,000+ companies. Free API key with 1,000 credits — no credit card required.