How to Decode a Job Description Before You Apply
A contractor how-to: paste the JD, strip buzzwords, read seniority and engagement, map the stack, catch red flags, and write a three-bullet pitch — with OracleRole as the shortcut.
Most freelancers read a job description top to bottom and then rewrite their CV. Better order: decode first, decide second, write third.
This how-to mirrors what the OracleRole decoder does with heuristics — so you can do it by hand, or paste once and get a role card.
Before you start
Gather the full text (not just the LinkedIn preview). If you only have a URL, fetch or paste the body. Half a JD produces half a decision.
Pair this with the Freelance JD Red Flags Checklist (2026) when flags show up.
Step 1 — Paste the JD
Copy the role into a plain text buffer (or into OracleRole).
Keep sections that matter for contractors:
- Title and summary
- Responsibilities / deliverables
- Must-have skills and stack
- Location / language / engagement type
- Rate, duration, or salary language if present
Drop recruiter boilerplate ("exciting opportunity", "world-class team") into a mental junk drawer — you will strip it next.
Step 2 — Strip the buzzwords
Rewrite the JD in one blunt sentence:
"They need a [role] to ship [outcomes] on [stack] under [constraints]."
Delete or ignore filler such as:
- Passionate / rockstar / ninja / self-starter
- Fast-paced / wear many hats (treat as a flag, not flavor)
- Competitive compensation without a number
- Culture paragraphs that say nothing about delivery
If you cannot fill outcomes and constraints, the JD is under-specified — ask before you invest interview time.
Step 3 — Read seniority, engagement, and stack
Seniority
Scan for Staff / Principal / Senior / Mid / Junior cues and year ranges. Match the work, not the inflated title. "Senior" plus entry-level duties is a mismatch; "Engineer" plus architecture ownership may be Senior/Staff in practice.
Engagement
Separate Freelance/Contract signals (B2B, day rate, SOW, IR35 language, temporary) from Full-time signals (salary, equity, benefits, permanent). Mixed language → treat as Ambiguous until clarified.
Stack
List concrete tools only (languages, frameworks, cloud, data). Cap the list — a dozen "musts" often means wish-list recruiting.
OracleRole's role card exposes these three fields explicitly so you do not argue with marketing titles.
Step 4 — Hunt red flags
Run the checklist themes (details in the 2026 red-flags article):
- Dutch fluency gates
- Hard onsite / no-remote
- Body-shop / bench / "resource" language
- Unpaid trials or free client-ready work
- Vague "wear many hats" ownership
- Agency middleman with hidden client
- Below-market or opaque rate signals
- Urgent / ASAP hiring chaos
Write each flag as a clarifying question, not a rant. Example: "Is Dutch required for stakeholders, or is English OK for the engineering track?"
Step 5 — Build a three-bullet pitch angle
Only after decode: write three bullets you could paste into a short reply.
- Fit: role + seniority posture + top stack you actually ship
- Engagement: contract vs full-time clarity; outcomes over buzzwords
- Constraint handling: address the biggest flag (location, rate, trial, agency) or offer a two-week delivery plan if flags are clean
Example shape:
- I ship senior backend work on Python / FastAPI / Postgres.
- Looking for contract delivery with a clear SOW; happy to show recent shipping proofs.
- Transparent on rate and scope — I skip unpaid trials and prefer a short paid pilot.
OracleRole generates a draft trio automatically. Treat it as a starting point — edit to your voice.
Shortcut: let OracleRole draft the role card
- Open oraclerole.com
- Paste JD text or fetch from URL
- Read title, seniority, engagement, stack, red flags, pitch angle
- Decide take / clarify / pass
- Reuse the pitch bullets in your note
No account. Heuristic only — drafts, not verdicts.