CtrlCV is an academic CV generator: one structured place for a researcher’s publications, grants and mentorship, and an export engine that turns that record into precisely formatted CVs. Its two founders are academics, not engineers. They came to us with a prototype that did everything except produce a CV, and it turned out to be the most useful thing they could have brought.
The Situation
The founders had already done the hard product thinking, and they had something to show for it: a visually complete prototype, built in Replit, that defined the data entry forms and the export configuration page. You could click through the whole product in it. Underneath the screens there was no data model, no persistence and no export engine.
That is not a criticism of it. It is what made the engagement work. What they had built was a specification, and it had already settled the questions that normally consume the first month of an MVP: what the product should feel like, what belongs on each screen, what the export step needs to offer. They had validated the concept with trusted colleagues before spending a dollar on engineering. When a scope arrives that clear, a fixed price stops being a gamble for both sides.
The step it skipped was the hard one. An academic CV is either exactly right or it is rejected. Researchers keep several variants of a 40 to 100 page document by hand in Word, and grant bodies impose exact margins, fonts, section order and citation style. Formatting is not presentation here, it is correctness. Everything else in the product is scaffolding around that one feature.
The constraints were real too. Two self-funding founders, a budget that could not absorb an overrun, a scheduled usability study with students, and no way to evaluate engineering work for themselves.
What We Did
We built the product the prototype specified, on a fixed scope and a fixed price, across four milestones: kickoff and architecture, release candidate, testing and UAT, and production rollout.
The profile builder came first, a structured PostgreSQL schema holding the career record, publications, grants, mentorship, behind authentication. Then the CV generation engine, which is where the work actually was: PDF and DOCX export driven by strict formatting rules, APA and MLA citation styles, and the export controls the founders had designed, filter by date range, select or deselect individual records and sections, reorder sections.
We also integrated ORCID and publication import by DOI, PMID, BibTeX and RIS. This one matters more than it looks. A researcher with several hundred publications will not retype them, so without import the profile builder is a chore nobody finishes and the rest of the product never gets used.
The project ran with the founders rather than around them: weekly progress and review calls, email in between, and direct access to the project manager and the lead developer instead of an account layer. Anything out of scope or at risk of not landing was named when it came up, not at the end. Because neither founder was technical, we also walked them through configuring the third party services the product depends on, so the platform ended up in their accounts, under their control.
What Shipped
A working MVP, deployed to the founders’ own infrastructure, handed over completely: the Git repository, the database schema and migrations, deployment documentation, and CI/CD configured. They own the product and the infrastructure it runs on. There is nothing of ours they need to keep paying for to keep it running.
It was delivered in the window we agreed, March to June 2026, with the scope we agreed. In the client’s published review, Brival scored 5.0 on quality, schedule and cost, with no areas for improvement identified.
What We Cannot Claim Yet
No business outcomes yet. As this is written, handover is complete and CtrlCV is in private beta, which means the product is in real hands but has not yet produced the numbers that would matter: adoption, hours saved per CV, what the usability study finds. None of that exists, so none of it appears above. Every number on this page is either a delivery fact or the client’s own description of their problem, and each one is tagged as such.
Those numbers come out of the private beta, and we will publish them here when there are some. Until then the honest version of this case study is the one you just read: a scope made precise by a good prototype, built for the price and on the date we said, and handed over whole.