Oracle Role is now a Take/Pass/Ask desk — kill slow leads fast with locked filters. This post explains how we used to decode roles manually.

Blogversus

Agency vs Direct Client: How to Tell Before the Call

Versus guide for contractors: spot agency middlemen vs direct hiring teams before the first call — email domain, careers page, client-confidential language, who pays, and who interviews.

Not every posting is from the company that will use your work. Many are from agencies, staffing firms, or body shops.

That is not automatically bad — legitimate agencies place contractors every day. Opacity is the problem: hidden client, unclear payer, resource language, and interview theater that never reaches a hiring manager.

OracleRole flags Agency middleman and Body-shop / staffing language on the decoder. This versus guide shows how to tell before the call.

Agency vs direct client before the call

Quick definitions

Path Who they are Who usually pays you
Direct client The product/engineering org (or their in-house talent team) The company (or their EOR with transparent naming)
Agency / staffing External recruiter or firm hired to fill seats Often the agency (you invoice them or go on their payroll)
Body-shop pattern Volume "resource" placement, bench talk, interchangeable seats Agency; client may stay vague

Career guides draw a similar line: in-house / talent-acquisition recruiters work for one employer; agency recruiters work for a firm serving many clients.

Versus table — signals before you dial

Signal Lean direct Lean agency / middleman
Email / LinkedIn Domain matches the hiring company; title like Talent Acquisition Staffing/recruiting firm domain; "recruiter at [agency]"
Careers page Same role on the company's own careers site Only on job boards; no official listing
JD language Named team, product, hiring manager path "Our client is looking", "client confidential"
Scope Named systems / deliverables Generic skill list, "multiple openings", bench / resource
Comp talk Band from the employer (or clear contract rate) Rate may be after agency margin — ask explicitly
Process Path to hiring manager / tech lead Endless screening with no client name

Verification playbooks for "is this job real?" stress the same five-minute checks: company careers page, recruiter identity, email domain, named team, and a real process — not just a board listing.

Title card vs who owns the seat

Agencies often rewrite titles for search. Direct teams sometimes under-title real ownership. Either way, trust responsibilities and named systems over the H1 — see Role vs Responsibilities and reading beyond the title.

Body-shop vs useful agency

Useful agency: names or NDAs the client early, explains who employs/pays you, books time with the actual team, and can describe the first deliverable.

Body-shop pattern (decoder flag): resourcing, bench, immediately available, multiple openings, interchangeable "resources", no product story.

Ask:

  1. Who is the end client (name or NDA)?
  2. Who interviews next — agency only, or hiring manager?
  3. Who pays me, on what entity, and is the quoted rate gross to me?
  4. What is the first scoped deliverable after start?

If they cannot answer 2–4 after a screening, you are inventory.

Before-the-call checklist (10 minutes)

  1. Open the company careers page — is the role there?
  2. Check the sender domain — employer vs staffing firm.
  3. Scan for middleman phrases — "our client", "client confidential", recruitment/staffing firm boilerplate.
  4. Scan for body-shop phrases — bench, resource, multiple openings, day-one availability as the main pitch.
  5. Paste into OracleRole — note Agency middleman + Body-shop flags beside engagement and rate opacity.
  6. Write three clarifying questions (client, payer, hiring-manager path) into your reply.

Versus — apply, clarify, or pass?

Situation Move
Direct, named team, clear engagement Decode, pitch, apply
Transparent agency + NDA client + path to HM Clarify rate/payer; proceed if clean
Client confidential + no HM path after screen Clarify hard or pass
Body-shop / bench / resource soup Pass, or paid discovery only at your floor
Agency rate with hidden margin Quote your net; see rate negotiation

Decode it on OracleRole

Paste the JD. Read:

  • Engagement — contract vs full-time vs ambiguous
  • Red flags — Agency middleman, Body-shop / staffing language, below-market/opaque rate, urgency
  • Pitch angle — draft bullets that demand scope and rate clarity

Open the free decoder →

Legitimate middlemen survive daylight. Opaque ones do not — and that is the whole test.

Related

Take/Pass/Ask Desk

Kill slow leads fast. Score each inbound Take / Pass / Ask one against your locked kill-filter + get send-ready reply. No re-prompting.

Open Oracle Role desk →