DocsGenerating ResumesModule matching

Module matching

Matching is the step that turns your library and a job description into a ranked stack. Here's how the scoring works and how to influence it.

How scoring works

The matching engine compares each module in your library against the extracted JD profile — themes, role type, seniority, and key phrases. Each module receives a match score from 0 to 100. The score reflects how well the module's tags and content align with what the role is looking for.

Anchor modules always receive a score of 100 regardless of tag overlap — they're always in the stack. Strong modules are included when their score is 65 or higher. Supporting modules are included only at 80 or higher.

The recommended stack

After scoring, the engine selects a recommended stack of 6–10 modules ordered by relevance. This is what gets passed to the generation step by default. You can modify the stack before generating — add modules that were ranked out, remove ones that don't feel right for this application.

Stack size matters. 6–8 modules tends to produce the best output resumes — enough depth to be compelling, not so much that the document becomes unfocused. If the recommended stack is larger than 8, consider removing the lowest-scoring modules manually.

Improving match quality

If the matching results don't feel right — wrong modules surfacing, key ones being left out — the most effective fixes are:

Fix the module's tags. A module that's clearly relevant but scoring low is usually missing a theme or has the wrong role type. Open the module editor, add the relevant themes, and re-run matching.

Check the JD extraction. If the extracted themes don't match what the role is actually about, the scores will be off across the board. Go back to the JD review screen and correct the themes before re-running.

Adjust weight. If a module is consistently left out of stacks where it belongs, raise it from supporting to strong, or from strong to anchor.

Positioning variant

After reviewing the stack, you'll choose a positioning variant — A, B, or C. These correspond to different opening summary frames for the resume. Variant A leads with scope and scale. Variant B leads with methodology and approach. Variant C leads with domain expertise. Choose whichever angle best fits the specific role and company.

No positioning module? If your library has no positioning modules, the variant selector has no effect and the resume opens directly with the first experience section. Add a positioning module to your library to unlock this feature.

Re-running matching

You can re-run matching against a saved JD at any time from the generation history. This is useful when you've edited modules or updated tags after the initial run. The new stack may differ from the original — review it before generating.