Case study · our first customer · September 2026
A product team hired a digital QA engineer. Here is his first real week.
Our first customer is a data-analytics company. We don't name them on this page by agreement; their name, the role of the people quoted and a reference call are available during procurement, with their permission. Their team ships weekly, has a QA lead and no spare tester, and runs on Slack, Asana, Bitbucket and a sandbox environment. Jarred joined that Slack as a team member. Nothing below was staged: it is one working week, counted from his own log.
How these were counted. From the tenant's own log, 16–23 September 2026, seven working days. A working turn is one message from the team that he answered. A tool call is one action in a connected system — reading the board, a repo, CI, a deploy, or a step in the browser. A test-case result is one recorded pass or fail in a QA plan, with the evidence attached. A change run after a yes is one write — a comment, a status move, a deploy — that a teammate approved. AI usage is what the model billed for the week, on the customer's own plan. No customer text, ticket titles or credentials appear here.
The feature nobody had time to test properly
A new API-keys feature landed on a branch: create keys, name them, set an expiry, see when each was last used, revoke. The kind of change that touches auth, permissions and deletion, and that a team ships on a Friday because the tester is busy with the release.
Jarred read the ticket and the diff, wrote a thirty-case plan, deployed the branch to the sandbox after the QA lead said yes, and worked through the plan in a real browser: permissions on both user types, limits and overrides, name and expiry validation, the one-time secret, rename, delete, search, filters, two browser tabs at once, a 390-pixel viewport. Where a case needed something he could not get, he said so instead of guessing: a fixture created before the change, an isolated mailbox for expiry emails, a safe endpoint to call the live API with.
The developer gave him the endpoint the next morning. Within the hour he had the two findings that mattered: a revoked key kept authorising real API calls long after the interface said it was gone, and an expired key did the same. He measured both windows in minutes, posted each as its own blocker with the numbers, corrected his own earlier wording when the measurement finished, and the task went back to the developer with a precise description of what to fix.
What the team changed in him, in one evening
The QA lead found a fourth defect himself and sent a screenshot. Jarred recorded the miss against his own plan, explained which case would have caught it, and proposed a rule so it is added next time. Then the lead corrected his process: defects of a feature that is not yet in production go into the feature's task, not into separate bug tickets. Jarred cancelled the two tickets he had opened that morning, moved the descriptions into the task, and wrote the rule down. It was confirmed the same evening and has applied since.
The next day the lead asked for one consolidated result comment instead of three, with a checklist of what was verified and what remained. Jarred rewrote it, the lead replied that it was much better, and that shape became the default too. Three rules in two days, none of them written by us.
The release checklist
When the lead finished the regression run for the next release and asked for the checklist, Jarred did not type one from memory. He read the two previous release tickets, rebuilt the checklist in the team's own format, added the cases the independent review said were missing, ran the ones he could run himself, and refused to post a PASSED verdict for the one item he could not close. The lead closed it by hand. Then the release ticket was rebuilt from the board's live statuses, and the next morning the following release was assembled with a single ✅ reaction on his message.
What it costs to run him
The AI usage for the whole week, every plan, browser session, verdict and conversation included, was about $94 on the customer's own subscription. Jarred himself is a flat €1,200 a month. The team did not change a tool, a process or a repository to hire him. They invited him to a channel.
What he still gets wrong
He is a junior with a very good memory, not a senior. In the same week he over-corrected a finding after a hint instead of asking, posted a blocker before a measurement had finished, and once answered a question about the wrong ticket after his working session rotated. Each of these is logged, and each became a fix on our side. We publish them because a team that hires him should know what the first month looks like.