Gil EskayoAI Engineer · Security · Research

Resume Tailor

One master resume in, a tailored one-page resume out, for any job posting.

Built with MARVIN
The story

Every job deserves a resume written for it. Nobody has time to write twelve. So I built a Claude Code skill that does it. I keep one master resume with everything I've ever done, hand it a job posting, and it researches the company, picks what matters for that role and lays it out as a clean one-page PDF.

01

Same person, two different jobs

Here's one master resume, tailored twice. For a Google Cloud AI/ML role it leads with my distributed-inference debugging and ML infrastructure work. For York Space Systems' battle-management role it rewrites the summary around aerospace and pulls in my defense orbital-data-fusion project. Same facts, a different story for each reader.

One-page resume tailored for Software Engineer III, AI/ML, Google Cloud.
Tailored for Software Engineer III, AI/ML, Google Cloud.
One-page resume tailored for Battle Management Software Engineer at York Space Systems.
Tailored for Battle Management Software Engineer, York Space Systems.

Real outputs from August 2026. Contact details are blurred.

02

Set up once

Setup is two jobs. Install the PDF renderer once. Then build the master resume: feed it every old resume I have and my transcript, and it merges them into one file that keeps everything, with no length limit. When I start a new job or ship a project, one command adds it.

From then on it's a MARVIN skill, so I just say "tailor my resume" and paste a link.

Install WeasyPrint and Python packages; build master.md from old resumes, a transcript and new entries; wire it as a MARVIN skill.
From nothing to ready.
03

One run, start to finish

It fetches the posting, even from job sites that build the page with JavaScript, and researches the company, the role and who's hiring. Then it matches my experience to the job by meaning, not keywords, and scores every entry on relevance and recency. Strong material makes the cut and weak material doesn't; there are no quotas.

A render step fits the result to exactly one page, stepping the type between 13pt and 8.5pt. Cover letters start from what I actually say happened, never from rephrased resume bullets. The finished PDFs land in my Applications folder and open on screen.

The master resume and every tailored copy stay on my machine. The public repository is code only.

A job posting is fetched and researched, matched against master.md and scored, written to resume.md, rendered to a one-page PDF, with an optional cover letter.
Every /tailor run.
04

How MARVIN keeps it running

Resume Tailor doesn't live alone. MARVIN routes my request to it and brings along what it learned last time, like which job sites need a fallback to read.

Every time its code changes, hooks refresh MARVIN's skill index, save the lesson to a shared knowledge base, scan the code for problems and propose improvements to the skill itself. Code syncs to GitHub; my resume data syncs only to my own server. The Metrics tab counts every call, so I can see it's actually being used.

Skill index and memory feed Resume Tailor; on every code change, hooks rebuild the index, save lessons, sweep for issues and propose improvements; code and private data sync separately; Metrics counts calls.
The MARVIN machinery around one skill.
05

Built with MARVIN

Resume Tailor is one of the skills in MARVIN, the AI development system I built around Claude Code.

← More AI & Machine Learning   All projects →