Case IV: Atsly · ATS Resume Copilot
Atsly
Most resumes are rejected by software before a human ever reads them. Atsly shows the score, and closes the gap, before you hit apply.
- Industry
- Career-tech · Consumer mobile
- Role
- Founding Product Designer · 0→1
- Duration
- 8 weeks
- Year
- 2026
Project overview
By widely cited estimates, around three in four resumes never reach a human. Atsly is the pre-flight check, an explainable ATS score, a country-specific fit report, and an AI rewrite you stay in charge of.
A mobile-first resume copilot for international job seekers, designed 0→1, brand, tokenized design system, 50+ hi-fi screens across 9 flows, and a working prototype. Every score is decomposed, every fix is explained, and every AI change stays in the user's hands.
My role
Founding Product Designer, research, brand, system, prototype
Team
Solo, 0→1 concept, every decision mine to defend
Timeline
8 weeks · 2026
Tools
Figma · FigJam · Notion · Lottie · Anthropic · Linear
Problem statement
The rejection nobody sends.
Atsly started from a lived problem: applying for design roles abroad while based in India. You tailor a resume for days, submit it, and hear nothing, not a rejection, just silence. The reason is usually mundane: an applicant tracking system parsed a two-column layout into word salad, found too few of the right keywords, and filed the application where no recruiter would ever look.
For international job seekers there is a second, quieter filter: the market itself. A resume that works in Bengaluru fails in Toronto for reasons no ATS will tell you, photo on the resume, two pages instead of one, no measurable outcomes, no accessibility vocabulary. Every market has unwritten conventions, and applicants discover them only through months of silence.
Solving this mattered because the cost of each blind iteration is weeks of a person's life. I designed Atsly to make both filters visible before the apply button, so the feedback loop takes thirty seconds, not three months.
Business goals
What the product had to earn.
Activate in the first minute
A first score, with its full breakdown, in under sixty seconds from upload. The moment of need is urgent; any onboarding longer than a job posting stays unread.
Monetize outcomes, not memberships
Per-check pricing instead of subscriptions. Job seekers buy results, not tools, the pricing model had to remove the objection every competitor's paywall creates.
Reduce drop-off between score and apply
A score alone is a dead end. Every gap had to link directly to a fix, and every fix back to a re-score, closing the loop that keeps users progressing instead of abandoning.
Own the cross-border wedge
India → Canada first, mirroring Express Entry demand. Country-specific market fit is the moat no incumbent ships, the differentiator every design decision had to protect.
User research
Eight cross-border applicants, five moderated tests, one lived problem.
I was the first research participant, applying from Bengaluru to Canadian studios and logging every silence. Then I recruited people doing the same journey from other corridors, and studied where their resumes actually leak: format, keywords, or the market conventions nobody writes down.
Methodology, Lean UX
Atsly ran on Lean UX end to end: the score screen, the market-fit report, and the rewrite were each shipped as hypotheses to five testers, measured on what people did (which fix they tapped first, what they refused to auto-apply), and rebuilt on the evidence. Two of the three core screens were materially rewritten by that loop.
How I ran it
8
User interviews
International applicants across India, the Philippines, and LATAM, mid-application, not retrospective.
5
Usability tests
Moderated runs of the scripted journey, where trust broke, we redesigned and re-tested.
6
Tool teardowns
Jobscan, Resume Worded, Teal, LinkedIn Premium, ChatGPT, Enhancv, scored on explainability and market awareness.
60+
Forum threads mined
r/cscareerquestions and immigrant-jobseeker communities, the vocabulary of silence, verbatim.
What the research surfaced
8 / 8
interviewees had changed their resume based on a guess about why they were rejected, none had ever received an actual signal.
6 / 8
had a market-convention gap (photo, two pages, missing metrics) that no keyword tool they used had ever flagged.
5 / 5
testers distrusted the first single-number score, 'magic' read as suspicious. Decomposed scores flipped the conversation to 'which fix first?'
0 / 5
accepted a bulk auto-rewrite of their resume. Bullet-by-bullet accept/edit/skip tested at near-total acceptance.
User personas
Three applicants on the wrong side of the filter.
Built from the interviews and forum mining, three decision styles that together cover the cross-border journey Atsly serves.
Priya Nair
29 · Senior UX designer · Bengaluru → Toronto
“I've shipped products used by millions. My resume apparently can't get past a parser.”
Goals
- Land interviews in Canada before her Express Entry window closes
- Know exactly what Canadian recruiters expect
- Stop rewriting everything after every rejection
Frustrations
- Months of silence with zero feedback
- Advice written for US applicants only
- Every 'expert' contradicts the last one
Behaviours
- Applies at night after work, on her phone
- Tailors per application, days per resume
- Keeps a spreadsheet of unanswered applications
Marco Gutierrez
26 · Full-stack developer · Mexico City → US remote
“I know my code passes the interview. I need my resume to get me one.”
Goals
- Convert applications into first-round calls
- Quantify his impact the way US resumes do
- Spend evenings on projects, not resume forums
Frustrations
- A two-page CV habit that US parsers punish
- Keyword tools that ignore seniority and story
- Paywalls before the first useful insight
Behaviours
- Batch-applies weekends, 20 at a time
- Trusts diffs and receipts over promises
- Will pay per result, never per month
Anjali Sharma
23 · New graduate · First ATS encounter
“Nobody told me a robot reads it first. I designed my resume for humans.”
Goals
- Understand the invisible filter at all
- A resume that survives parsing without losing personality
- Confidence before her first career fair
Frustrations
- A beautiful two-column template that parses into word salad
- Conflicting advice from seniors and TikTok
- No idea which of ten problems to fix first
Behaviours
- Researches everything on mobile
- Follows checklists diligently once she trusts them
- Shares wins back to her college group chat
User problems
Three compounding failures.
The invisible filter
Most mid-to-large employers screen with ATS software before a recruiter reads anything. Formatting alone can sink a strong candidate: sidebars, tables, graphics. Applicants are graded by a machine they can't see, against criteria they're never shown.
The silent feedback loop
Rejection arrives as silence. With no signal about what failed (keywords? format? seniority?), applicants change everything or nothing, and repeat. The cost of each iteration is weeks, and the lesson learned is usually wrong.
Country blindness
Existing tools assume a US resume going to a US company. Cross-border applicants are the fastest-growing segment of job seekers, and they get keyword advice when their real gap is convention: page count, photos, CV style, the vocabulary a market expects. No mainstream tool scores this.
Market research
The unowned corner of a crowded market.
Resume tooling is a busy category, but it clusters in one corner. Jobscan and Resume Worded are desktop-web, keyword-centric, and subscription-gated before the first useful insight. Teal is a tracker first, an optimizer second. LinkedIn Premium tells you how you compare to other applicants, not how an ATS parses you. ChatGPT will rewrite a resume wholesale, with no score, no audit trail, and no idea what Canadian recruiters expect.
Plot the market on two axes, explainability of the score and awareness of the target market, and the top-right quadrant is empty. That corner became Atsly's position, and it directly shaped the design: mobile-first, point-by-point explainable, and the only tool treating country conventions as a first-class scoring dimension rather than a blog post.
Competitive analysis
| Player | Explainable score | Market / country fit | Mobile-first | Human-in-control rewrite | Audit trail | Pricing |
|---|---|---|---|---|---|---|
| Jobscan | Partial | ✗ | ✗ | ✗ | ✗ | $50/mo |
| Resume Worded | Partial | ✗ | ✗ | ✗ | ✗ | $33/mo |
| Teal | ✗ | ✗ | Partial | ✗ | ✗ | $29/mo |
| LinkedIn Premium | ✗ | ✗ | ✓ | ✗ | ✗ | $40/mo |
| ChatGPT | ✗ | ✗ | ✓ | ✗ | ✗ | $20/mo |
| Atslythis project | ✓ | ✓ | ✓ | ✓ | ✓ | Per-check |
Everyone scores keywords; nobody scores the market. The two rightmost columns are the trust features the research demanded: a rewrite the user controls, with every point receipted.
Constraints
The box the design had to fit.
Solo designer, eight weeks
Brand to clickable prototype with no team to divide the work. The tokenized design system wasn't a nice-to-have, it was the only way 50+ screens could survive three iterations without drifting.
Mobile-first iOS scope
One platform at launch. Every flow had to resolve on a phone screen, bottom sheets for decisions, one thumb-reach CTA per screen, nothing that assumed a desktop escape hatch.
Unit economics of AI
Every check costs model tokens. Per-check pricing means sessions must be short and decisive, the design can't afford exploratory, open-ended AI chat.
The explainability bar
A self-imposed constraint that behaved like a technical one: no screen may show a number without its breakdown. It ruled out entire categories of 'magic' UI before they were drawn.
Design strategy
Four bets that make it different.
- I.
Every point is accounted for.
No black-box grades. 74 becomes 91 because single-column formatting adds 12, stronger verbs add 9, two metrics add 6. If the user can audit the math, they trust the tool, the same design conviction I bring to every AI product.
- II.
The market is the second ATS.
Country-specific market fit is the moat. Target-market selection is the first thing on the home screen ('Canada · 1 page · No photo · CV-style'), and every score, gap, and rewrite is computed against that market, not a generic US default.
- III.
AI proposes. The human disposes.
The rewrite never bulk-replaces a resume. One bullet at a time, original beside rewrite, reasons attached, with accept / edit / skip on every card. Your resume stays yours, Atsly just shows you what the machine reading it will see.
- IV.
Built for the moment of need.
Job hunting happens on the phone, on commutes, between shifts, the night before a deadline. Atsly is mobile-first end to end: bottom sheets for decisions, one thumb-reach CTA per screen, a check that completes in under a minute.
Information architecture
Structured around the seeker's actual sequence.
The IA follows the job-seeker's real order of operations, upload, understand, fix, apply, with settings and account meta pushed to the edges. Two artifacts below: the sitemap of the full app, and the scripted hero flow from upload to export.
Sitemap
Mobile-first, six top-level sections.
The IA is shaped around the job-seeker's actual sequence: upload, understand, fix, apply. Settings and account meta sit at the edges. Click any node to inspect.
User flow
Upload → score → fix → re-score → apply.
The scripted hero journey: every step is a decision point. Hit play to watch the whole flow auto-advance, or step through manually.
Currently inspecting
Upload resume
User drops a PDF or DOCX into the empty state. Parsed locally on first launch.
Next: tap upload
Process, AI-assisted workflow
How this was built, end to end.
The same loop I run on every project, tuned to Atsly: start from the problem statement the business brings, let ChatGPT compile the prompts, let Claude do the heavy lifting, and keep every judgment call human.
- I.Notion
Read the business, understand the problem
The business brought the problem statement ready: job seekers bounced by ATS filters they can't see. I read the prospects until I understood the problem before any tool touched the work.
- II.ChatGPT
ChatGPT engineers the prompt
I described that problem statement to ChatGPT and had it produce the .md prompt, scope, flows, and constraints, for the wireframing pass.
- III.Claude
Wireframes in Claude design
I used Claude design to create the wireframes. The only goal at this stage: validate the flow and the screens, upload, score, gaps, rewrite.
- IV.Notion
Playtest with real users and the business owners
I playtested the wireframes with real users and the business owners, and iterated until the flow found stability.
- V.ClaudeFigma
Color system, tokens, typography
With the flow stable, the Atsly terracotta became a color system inside Figma, built with Claude through the Figma MCP: tokens, then typography.
- VI.ChatGPTClaudeFigma
Component library in Figma
The wireframes told me the component list. Prompt from ChatGPT, Claude built the complete component library in Figma.
- VII.ChatGPTClaudeFigma
Hi-fi screens, my judgment calls
Claude produced the hi-fi screens from the library, prompted by ChatGPT again. Visual design and the user journey stayed my judgment calls: playtest, iterate, sign off.
- VIII.Storybook
Storybook, then handoff
Once the design was signed off I created a Storybook for the entire component library, the single source of truth, and handed it to the devs.
Key design decisions
Why the product works the way it does.
Decompose the score into named, tappable dimensions
Why
The first version showed a single number and a 'Fix everything' button. It tested as magic, and magic reads as suspicious when the stakes are someone's livelihood.
Impact
Testers' question changed from 'does this actually work?' to 'which fix should I take first?', the shift from doubting the tool to using it.
Make the target market a first-class input, not a setting
Why
Country blindness was the sharpest pain in research: applicants fail on conventions no keyword tool measures. Burying market choice in settings would have made the moat invisible.
Impact
Market selection opens the home screen, and every score, gap, and rewrite is computed against it, the differentiator is felt within the first session.
Rewrite bullet-by-bullet with accept / edit / skip
Why
Bulk AI rewrites destroy ownership, users can't tell what changed or why, and stop trusting the output entirely.
Impact
Each suggestion shows the original, the rewrite, and the point delta. Users accept more changes because they can audit each one, and the resume stays theirs.
Design for the pocket, not the desk
Why
Job hunting happens in stolen moments, commutes, breaks, the night before a deadline. A desktop-first flow misses the actual moment of need.
Impact
Bottom sheets for decisions and one thumb-reach CTA per screen keep a full check under a minute, end to end.
Final designs
62 hi-fi screens, six user flows + a states bucket.
Every screen from the Career-IQ design file. Six flows reading top-to-bottom as the user journey actually unfolds, plus a cross-cutting bucket for loading, success, error, and empty states. Pick a flow on the left; click any screen to enlarge.
62 screens · 7 sections · iPhone 13/14 · 390×844
01 · Onboarding & import
9 screens02 · Job descriptions
6 screens03 · Resume library
13 screens04 · ATS Check
8 screens05 · Analysis & reports
9 screens06 · Account
4 screens07 · Feedback & states
13 screensOutcomes
- 50+ screens
- Hi-fi, tokenized, and componentized in Figma, sections for onboarding, JDs, resume library, ATS check, analysis, and account.
- 74 → 91
- The scripted hero journey: three explained fixes, a market-gap pass, and a bullet-level rewrite, every point of the delta accounted for.
- 2 filters, visible
- The ATS and the market, both scored, both explained, both fixable before the user ever hits apply.
Reflection
Explainability is the feature.
What went well:the explainability bar held. Decomposing the score into named dimensions, and the fix into named point deltas, changed how testers talked about the product: from “does this actually work?” to “which fix should I take first?”
What I'd improve:I'd validate the market-fit rules with recruiters in the target country earlier, the convention data came from desk research and applicant interviews, and a recruiter panel would harden it. And I'd test the per-check pricing against a small credits bundle sooner.
The lesson that carries to every AI product I design: trust isn't a claim, it's a receipt. Show the math, keep the human's hand on every change, and the model becomes a colleague instead of an oracle.
More work
Keep looking.
Next case study
All work →Currently viewing: Atsly