AI Atlas Talent Network
AI Atlas / Edward Lawless / JibJob Healthcare ATS Aggregation
AI Atlas is a curated AI-native talent network.

This showcase is supporting context for the network: it helps people discover the talent area and see what a similar AI-native builder might be able to ship.

Request talent
Public showcase · Data Reporting & Pipeline Ops · Internal Tooling & Dashboards

JibJob Healthcare ATS Aggregation.

A production healthcare job aggregation system that discovers, fetches, normalizes, enriches, and verifies ATS job feeds.

Live Artifact · 01 JibJob Healthcare ATS Aggregation captured proof view. screenshot
JibJob Healthcare ATS Aggregation captured proof view.
JibJob Healthcare ATS Aggregation authored architecture diagram.
JibJob Healthcare ATS Aggregation authored architecture diagram.
Metric · 01
Production verification examples include successful bounded source runs and imported jobs
Metric · 02
Aggregation tests referenced across PRs
01 / Showcase Signal

What this showcase helps explain.

JibJob turns messy healthcare ATS feeds into searchable job pages by discovering sources, fetching jobs, normalizing fields, enriching records, and verifying production runs.

  • Production verification examples include successful bounded source runs and imported jobs
  • Aggregation tests referenced across PRs
02 / Architecture

How the system is put together.

JibJob ATS aggregation pipeline from source registry through workers, normalization, LLM enrichment, Sanity, and public pages.

The pipeline treats each employer ATS as an unreliable source that needs explicit handling. Sources are registered, workers fetch bounded batches, normalizers convert ATS-specific payloads into a common job model, and verification checks whether the imported jobs reached public product surfaces.

The AI layer is practical rather than decorative: LLMs help classify or enrich messy labor-market data, while source health reporting catches broken scrapers, empty feeds, and stale runs. This is a production data-pipeline pattern for AI builders who need reliability more than a flashy chat interface.

03 / Walkthrough

The reproducible pattern.

01

Represent every ATS as a source

Each source gets its own URL, adapter type, location metadata, and health history so failures can be diagnosed at the source level.

type AtsSource = {
  name: string;
  atsType: "workday" | "icims" | "greenhouse" | "custom";
  atsUrl: string;
  city?: string;
  state?: string;
};
02

Normalize before enrichment

Workers collect raw postings, map them into a shared job shape, then use AI-assisted cleanup only where deterministic parsing is not enough.

03

Verify the public path

The workflow is not complete until a job appears on a browsable public page and source health reports the run outcome.

04 / Stack

What it leans on technically.

Tool Version Role Why this tool
ATS adapters Current Extraction Different healthcare employers expose jobs through different vendor shapes.
LLMs Current Enrichment Helps classify and clean ambiguous job metadata after deterministic parsing.
Sanity Current Content store Stores normalized jobs and source records for operational review and publishing.
Next.js / Vercel Current Public delivery Turns imported jobs into fast indexed location and job-detail pages.
Source health checks Current Monitoring Surfaces stale runs, empty imports, and broken adapters before the product looks thin.
05 / Prompts

Copyable prompt surfaces.

Job enrichment prompt

SystemYou normalize healthcare job metadata without inventing facts.

User templateRaw title: <title> Description excerpt: <description> Return normalized specialty, seniority, and confidence. Use null when unknown.

06 / Evidence

Artifacts you can inspect.

github pr Aggregation source fix PRhttps://github.com/ChatPRD/jibjob-sanity/pull/104 Available
live demo Production sitehttps://www.jibjob.com Available
07 / Privacy & Evidence Boundary

What the public material does and does not expose.

Privacy. Use aggregate counts, sanitized job examples, and public pages only.

08 / Next Step

Use this showcase as brief context.