Turn job offers into finished applications with a self-built pipeline

Pawel Boruta-Osko moved his 13-prompt n8n job application flow into an AI-written app; on 35 fresh offers it produced 18 complete applications and rejected the other 17.

Done withCustom agentinApifyJina AISupabase· Nov 7, 2026

What they did

Pawel Boruta-Osko first ran his job hunt through an n8n workflow he wired himself: 13 prompt nodes that filter offers, route them, pick an application strategy, research the company, personalise the text and fill CV fields. He then had an AI build and edit those n8n workflows from his descriptions while he still checked each node. In the third stage the pipeline became a standalone Node.js app called Job Workshop, written by AI and not read by him. It pulls offers through Apify and Jina, keeps every offer's state in Supabase with one schema per profile, renders application PDFs locally with headless Chrome, and logs model usage per person, stage, provider and model. He keeps control through acceptance checks instead of code review: preserved prompts, database state as the source of truth, and full searches left off until he enables them.

How it went

On a live sample of 35 newly fetched offers the app finished 18 applications and rejected 17, with none left half done, and he checked all 36 PDFs on disk. A simulation pushed 6,000 offers per profile through the later stages with mocked services to confirm no eligible offer was dropped. He says the earlier n8n version got a high invitation rate, but calls that his own impression, not a measurement. The app does not yet fully replace the n8n flow, and real-scale runs have not been done.

Worth knowing

The simulations use mocked services, so they say nothing about real cost or provider throughput. The post does not name which AI wrote the app. The pipeline prepares applications; it does not say it submits them. His approach to not reading the code is to keep the old n8n flow as the reference and only trust stages that pass checks that can fail.

Try it

With Custom agent· 8 parts to fill in

Build me a job application pipeline for [my profile and target roles]. Fetch new offers from [job sources] with [scraping tool], store each offer and its stage in [database] so a crash never loses work, then for each offer: filter it against [my criteria], research the company, and write a tailored [CV and cover letter] rendered as PDF. Reuse my existing prompts from [my current workflow] unchanged. Log model cost per stage. Before any real run, test it on [number] offers with mocked services and show me how many were completed, rejected or left unfinished. Do not submit any application; stop and let me review the PDFs.

Square brackets are the parts to fill in. The prompt is ours; the story is theirs.

Where they said it

Related