shouldivibecodeit

Should I vibe codeCareerflow?

Organize applications and create evidence-grounded resume and LinkedIn improvement checklists

Your ATS score is a number your own code made up. Then you rewrote ten years of work history to raise it.

?

Their verdict, the Premium price and the build-time estimate come from their entry, MIT-licensed. Checked 2026-08-04.

Can you build it?asked by canivibecodeit.com ↗YESone-shottable · one sitting
?

Our verdict, the regret score and everything below it. Editorial and unsponsored — nobody can pay to be moved.

Should you ship it?asked by usDEMO ONLYvibe the v0, throw it away.

The honest answer

why the verdict is what it is

The tracker half is a genuine evening and Huntr's entry already says so — columns, dates, a contact per row, done. What pushes this one a band harsher is everything Careerflow bolts on, because all of it is either a scraper or a score. The LinkedIn optimiser reads a page whose owner forbids automated extraction and redesigns it on their schedule, not yours. The ATS score is the interesting one: no real applicant tracking system hands back a number, so any score you compute is your own keyword-overlap heuristic in a lab coat, and the moment you display it you will start rewriting your own career history to make it go up. And the AI resume writer will cheerfully produce a bullet you did not do, on a document you will be asked to defend out loud. None of this can hurt anyone but you. It can waste an entire job search.

What actually breaks

not "if". the specific failures.

  • The LinkedIn extension, continuously. Automated extraction is against LinkedIn's terms, the markup is obfuscated and rebuilt regularly, and aggressive reading gets the account restricted — which is your professional identity, not a test account
  • The ATS score, which has no ground truth. Workday, Greenhouse and Taleo do not return a match percentage, so yours is keyword overlap plus a formatting checklist, and optimising against it optimises against your own model
  • The AI rewriter, which produces a bullet that reads beautifully and contains a metric you never measured. It survives every draft because it is the best-written line on the page, and then somebody asks about it in an interview
  • PDF output. Parsers in real ATS systems still choke on multi-column layouts, text in tables, glyphs from icon fonts and anything in a header or footer — the exact features a generated template loves
  • Document metadata, which carries the title, the producer and often the author straight into the recruiter's hands. "resume-v7-bigco-stretch" is a sentence you did not intend to write
  • Where you hosted it, if that turned out to be a work laptop or a company cloud account. A database of who you spoke to and what they offered, on infrastructure your current employer administers, is a bad afternoon
  • Job-board parsing, in the usual way: the selector that worked in July returns an empty div in September, and the tracker silently stops capturing anything
  • The mock interview, which is a prompt loop that is convincing for ten minutes and then rewards you for the answers it likes

Is that you?

the verdict is a default, not a law

ship it if
  • It is the tracker and nothing else — applications, stages, dates, notes, contacts — running on your own machine
  • The resume lives as structured data you own, with the rendering as a separate step, so tailoring means selecting facts rather than generating them
  • Every AI suggestion is a prompt to you rather than a change to the document, and no bullet enters the file without you typing it
  • You have accepted that the browser extension is a maintenance treadmill and are fine rebuilding a selector every couple of months
don’t ship it if
  • You are relying on a self-computed ATS score to decide what your CV says, because you are then tuning a document against an evaluator you wrote
  • The generator is allowed to invent achievements, numbers or dates. A fabricated line is a live grenade in an interview and worse in a reference check
  • It runs on employer-managed hardware or in an employer-managed cloud account
  • You are automating applications rather than tracking them — mass-firing generated cover letters is the fastest way to be filtered by every ATS you touch

If you build it anyway

the checklist, then the prompt that enforces it

  1. Keep the resume as structured data — JSON Resume is right there — and treat every rendered PDF or DOCX as a build artefact you can regenerate.
  2. Let the model rewrite phrasing only, never facts. Feed it your own bullets and forbid new numbers, dates, employers and titles in the system prompt, then diff every output against the source before accepting it.
  3. If you compute a match score at all, show the evidence rather than the number: these six terms from the posting appear in your document, these nine do not. A list you can act on beats a percentage you cannot interpret.
  4. Export single-column, selectable text, no tables, no text in headers or footers, no icon fonts. Then open your own PDF in a plain text extractor and read what actually comes out.
  5. Scrub document metadata on export — title, author, producer — and name files as you would want them read, because the recruiter sees the filename first.
  6. Run it locally on hardware you own. This database records that you are leaving, who you spoke to and what they offered.
  7. Rate-limit anything that touches LinkedIn, keep it to pages you have opened yourself, and never point it at a bulk crawl. The account it gets restricted is yours.
the guardrail prompt
I am building a job-search tool: application tracker, resume tailoring, and a
browser extension that reads job pages. Nothing here endangers anyone but me,
and the way it does that is by inventing things and by scoring things it
cannot measure. Build it in this order.

1. Local-first. SQLite or files on my machine, no hosted database, no account
   system. Assume the laptop might be employer-managed and tell me if anything
   you add would leak to it.
2. The tracker before anything else: applications, stages, dates, contacts,
   notes. Manual entry must be pleasant, because every scraper you write will
   eventually break and this is the fallback.
3. Store my resume as structured data (JSON Resume or similar). Rendering to
   PDF or DOCX is a separate step over that data.
4. The model may rephrase my own bullets. It may not introduce an employer,
   title, date, technology or metric that is not already in the source. Enforce
   that with a diff step that shows me every added noun before I accept it.
5. Do not display a match percentage. Show which terms from the job posting are
   present and which are missing, with the line each came from. If I ask for a
   score, explain that no real ATS returns one and that I would be optimising
   against your heuristic.
6. Export single-column, selectable text, no tables, no icon fonts, nothing in
   headers or footers. Then extract the text back out of the generated PDF and
   show me exactly what a parser sees.
7. Strip document metadata on export and name files neutrally.
8. The extension reads only pages I have opened myself, never crawls, and
   rate-limits everything. Tell me plainly that automated extraction breaches
   LinkedIn's terms and that the account at risk is mine.
9. Every parser needs a visible failure: if a selector returns nothing, say so
   loudly rather than saving an empty record.
10. Out of scope: auto-applying, bulk cover-letter generation, and anything
    that submits a form on my behalf. Those turn a useful tool into a way of
    getting filtered everywhere at once.
paste this before you build — not after something breaks32 lines · 2067 chars

That one keeps you out of trouble. For the prompt that actually builds it, canivibecodeit.com has one.

their build prompt ↗

Or don’t build it

the boring option, and the way back out

just pay for it

If you want the extension. Autofill across Workday, Greenhouse and Lever, plus the LinkedIn tooling, is the part of the $23.99 that is genuinely worth money — and precisely the part that breaks every time a job board ships a redesign, which is somebody's full-time job and could be yours instead. Also note the shape of the pricing: this is a product people buy for two months. A weekly plan exists for a reason, and two months of Premium is about fifty dollars against a weekend you could have spent applying.

$23.99/mo is cheaper than your weekend.

your exit plan, if you already built it

The easiest on the site. It is your data about your own job search, so an exit is a CSV of applications and a folder of resume JSON, and the tool that reads them next can be a spreadsheet. Do keep the resume as structured data rather than as a pile of PDFs — that is the difference between moving on in ten minutes and re-typing your career for the fourth time. And when the search ends, delete the thing: a database of who offered what has no reason to outlive its usefulness.

prior art · someone already did this
Reactive Resume

Actively maintained open-source resume builder with structured data and PDF export.

JSON Resume

A standard schema for resume data plus a CLI that renders it, which is the right shape for the storage half of this.

Questions

Huntr is SHIP IT and this is DEMO ONLY. What is the difference?

Huntr's entry is scored on a board with four columns, and that really is a safe evening's work. Careerflow bundles three more things onto it — a LinkedIn optimiser, an ATS scorer and an AI writer — and each is either a scraper that rots or a number with no ground truth. The tracker is still fine. It is the extras that make the homemade version something you abandon in week three, halfway through the search.

Are ATS keyword scores really meaningless?

Not meaningless, but not a measurement either. Real applicant tracking systems parse your document and let a recruiter search and filter it; they do not compute a compatibility percentage and hand it back. So a score is always somebody's model of what might matter. Careerflow's is at least calibrated against a lot of resumes; yours is calibrated against nothing, and the risk is that you take it seriously enough to rewrite true sentences into keyword-dense ones that read like a robot wrote them, because a robot did.

What is actually wrong with letting the model write my bullets?

It writes the best sentences in the document, and some of them are not true. Models reach for specificity because specificity reads well, so "improved performance" becomes "cut p95 latency by 40%" — a number that came from nowhere and that you will be asked about by an engineer who wants to know how you measured it. Let it rephrase what you wrote and hard-block new facts.

Is the browser extension worth building?

Only if you enjoy the treadmill. It is per-site maintenance forever, LinkedIn actively discourages automated reading, and the account that gets restricted is the one recruiters use to find you. If you build one, keep it to pages you have opened yourself, rate-limit it, and expect to fix a selector every couple of months.

did you build it?

Every week, someone ships something they shouldn’t have.

New verdicts, the worst thing that landed in the trap, and the occasional incident report. No other email, ever.

also on the regret index
HuntrSHIP IT

$40 a month for a board with four columns. The only sensitive thing in it is the fact that you're leaving.

Teal PlusSHIP IT

Tracking your own applications is a table you will actually maintain because it is yours.

JobscanSHIP IT

Comparing your CV to a job ad is text analysis on two documents you already own.

last reviewed 2026-08-04 · verdict is editorial and unsponsored · shared entry data from canivibecodeit under MIT · not legal advice