01 The problem
Everyone applying for jobs faces the same grind: one resume, dozens of roles. Tailoring it properly for each application takes 30–45 minutes, so most people either skip it and send the same generic document everywhere, or burn out doing it by hand.
AI seems like the obvious fix — and there are plenty of tools that will rewrite a resume against a job description. The trouble is what they rewrite. Ask a language model to make a resume "match" a JD and it will happily add skills the person doesn't have, inflate scope, and invent plausible-sounding achievements. That gets you past a keyword filter and straight into a conversation you can't survive.
02 The constraint that became the product
The interesting decision wasn't "use AI to rewrite resumes." It was deciding what the tool is not allowed to do. Tailor re-emphasises experience the person actually has — reordering, reframing, and re-weighting what's already true — and it refuses to manufacture the rest.
That single rule changes the whole product. If the model can't invent, then a gap has to be shown rather than filled. So the honest failure case becomes a feature: Tailor tells you the keywords you match, and the ones you don't.
Gaps are flagged, never faked. A tool that quietly lies to help you get an interview is not helping you — it's setting up a failure one round later. Showing the gap is more useful than hiding it, because you can decide whether to address it, learn it, or skip the role.
03 How it works
Three steps, deliberately: the effort is front-loaded once, and every application after that is cheap.
Save your resume
Stored to the user's own account — the resume never leaves it.
Paste the JD
Tailor reads the description the way a recruiter would, extracting what the role actually demands.
Match & gaps
A match score plus per-keyword strength — matched terms and missing ones, both shown.
ATS-ready PDF
Downloadable in a format that parses cleanly through applicant tracking systems.
The match preview
The scoring view is where the honesty shows up concretely — a headline match number, then the breakdown that explains it, including the weak spots.
An 86 with a visible 40% on SQL is more useful than a fabricated 98. The user learns something actionable about the role and about themselves.
04 Product decisions worth naming
- Magic-link sign-in, no passwords. A one-time link by email. For a tool used in short, stressful bursts during a job hunt, a forgotten password is enough friction to lose the user entirely — so the account exists without the burden of one.
- The resume stays in the user's account. A resume is unusually personal data. Making that explicit on the landing page isn't a legal disclaimer, it's a trust decision — the same instinct behind refusing to fabricate content.
- ATS-ready export, not a pretty PDF. A beautifully designed resume that an applicant tracking system can't parse is a resume that was never read. The export optimises for the machine that reads it first.
- Front-load the setup, not the workflow. Save the resume once; every subsequent application is a paste and a download. The cost curve matters when someone is applying to twenty roles, not one.
05 What I'd watch next
The honest status: Tailor is live and functional, but it hasn't yet been through a round of real user feedback. The questions I'd want answered before building further are the ones I can't answer from my own use alone:
- Is the match score trusted? A number is only useful if users believe it. If people ignore it or dispute it, the scoring model needs recalibrating against how recruiters actually weigh keywords.
- Do the flagged gaps change behaviour? The bet is that seeing "SQL 40%" is useful. It's possible users find it discouraging instead — that would be a real finding, and would change how gaps are presented.
- Does the truthful constraint hold under pressure? The interesting edge case is a user who wants the tool to exaggerate. Whether the constraint survives contact with that motivation is the thing worth testing.
06 What building it taught me
- The constraint is the product. "Rewrite a resume with AI" is a commodity. "Rewrite a resume and refuse to lie" is a position — and it dictated every downstream decision, from gap-flagging to the match breakdown.
- Honest output is a feature, not a limitation. The instinct is to hide what the tool can't do. Showing the gap turned the weakest moment of the product into its most useful screen.
- Friction belongs where it's cheap. One-time setup, zero-friction repeat use, and no password anywhere in between — the effort budget should sit where the user only pays it once.