For a typical SG SME hiring round: you write a JD (or copy an old one), post on JobStreet/LinkedIn, get 100–300 CVs, manually screen down to 10–15, interview 5–8, hire 1.
The screening step (CV → shortlist) is where 60–80% of the founder's hiring time goes. It's also where AI helps most.
Below: an end-to-end workflow covering JD writing, CV parsing, scoring, and interview-question generation. Each step is one prompt.
Step 1 — JD from messy notes
*"Turn the messy notes below into a polished Singapore job description for [ROLE TITLE].
Sections: about [COMPANY NAME] (1 paragraph, polished), about the role (1 paragraph), what you'll do (5–7 bullets), what we're looking for (must-have vs. nice-to-have, 4–6 each), what we offer, how to apply, hiring process (1–2 lines).
Tone: warm, specific, no clichés. Avoid: 'rockstar', 'ninja', 'fast-paced', 'hit the ground running', 'wear many hats'. Use Singapore English. Mention salary range if I've included one.
Notes: [PASTE NOTES]"*
Output is rarely ready to publish — but it's a 70–80% draft you can edit in 15 minutes vs. 90 minutes from scratch.
Step 2 — CV parse and score
For each CV (PDF or text), run:
*"You are screening a candidate for [ROLE TITLE] at a Singapore [SECTOR] company.
Job requirements (must-haves): [PASTE FROM JD]
Job requirements (nice-to-haves): [PASTE FROM JD]
Below is the candidate's CV. Score them and return JSON:
- years_relevant_experience: number
- must_haves_met: array (which ones)
- must_haves_missing: array (which ones)
- nice_to_haves_met: array
- top_3_strengths: array
- top_3_concerns: array
- salary_expectations: if mentioned
- notice_period: if mentioned
- fit_score: 1–5
- one_sentence_summary
CV: [PASTE]"*
Run this across all 200 CVs programmatically (Claude Code) or paste-by-paste for smaller volumes. Sort by fit_score, then review the top 20–30 manually before deciding the final shortlist.
Step 3 — interview questions per candidate
For shortlisted candidates, generate role-specific and candidate-specific interview questions:
*"Below is a CV for a [ROLE] candidate, plus the JD. Draft 12 interview questions split into:
- 4 role-fit questions (test whether they can do the job)
- 4 experience-validation questions (drill into specific claims in their CV)
- 2 culture/values questions (open-ended, situational)
- 2 red-flag follow-ups (if there's anything unclear or unusual in their CV)
Tone: rigorous but human. Singapore English. No 'tell me about a time when...' if it's a junior role (cliché).
JD: [PASTE]
CV: [PASTE]"*
You walk into every interview with sharp questions tailored to that candidate. Time saved per interview: 20–30 minutes of prep. Quality lift: significant.
PDPA and bias considerations
Three rules to follow.
1. Redact identifiers before scoring — at minimum: name, age, schools. Score on relevant experience and skills only. This reduces (doesn't eliminate) bias risk.
2. Use enterprise-tier Claude with no training on input. Personal data is not used to train the model. Documented in your data-processing record.
3. Human reviews every shortlist before contacting candidates. AI scores; human decides. Required by good practice and consistent with the PDPC Model AI Governance Framework for Generative AI.
Document the workflow in your privacy notice. Disclose AI-assisted screening if your candidates would reasonably expect to know. Many SG firms include a one-liner in the job ad now.
Tooling it up
For occasional hiring (1–2 rounds per year): paste-by-paste through Claude.ai is fine.
For continuous hiring (recruiters, growing SMEs): build a small Claude Code app:
1. Drop CVs in a folder
2. Auto-parse and score
3. Spreadsheet output ranked by fit_score
4. One-click interview-question generation per candidate
Starter prompt for Claude Code: *"Build a CV-screening tool. Input: PDFs in /cvs/, JD in /jd.md. For each CV, extract text, redact identifiers, send to Claude Sonnet with the screening prompt, save scored output to a CSV. Provide a small React UI to view, sort, and generate interview questions. PDPA-aligned (SG-region hosting, no analytics)."*
Total build time as a Functional App Sprint: 5–7 days, S$3,500–S$5,500.
Is it PDPA-compliant to put candidate CVs into Claude?
Yes when (a) you use Claude Pro/Team/Enterprise (no training on input), (b) candidates have provided their CV expecting it to be processed for hiring, and (c) you have appropriate retention and deletion practices. Treat Claude as a data processor; document accordingly. See [PDPA Prompting Checklist](/resources/pdpa-prompting-checklist).
Won't AI scoring introduce bias?
AI doesn't remove bias — it can encode patterns from your prompt and historical hiring. Mitigate: redact identifiers (name, age, school) before scoring, score on JD-relevant criteria only, and have a human review every shortlist. The [PDPC Model AI Governance Framework](https://aiverifyfoundation.sg/wp-content/uploads/2024/05/Model-AI-Governance-Framework-for-Generative-AI-May-2024-1-1.pdf) is worth reading.
How fast is this vs. manual screening?
200 CVs manually: 6–10 hours. With this workflow: 45 minutes (you reviewing the AI's shortlist + interview questions). The bottleneck shifts from screening to high-quality interviewing.
What do I tell candidates?
Be transparent — your privacy notice should mention AI-assisted screening. Many SG candidates expect it now. Some firms include a brief disclosure in the job ad: 'CV screening is AI-assisted; final decisions are made by humans.'
Can Claude actually write good JDs?
Yes, given good input — your messy notes plus context on the role and team. Claude is excellent at structure and inclusive language; you provide the substance. Paste your rough notes, get a clean JD, edit.