Business process automation for small businessesYou run your business. I automate your stuff.
Invoices, emails, CRM updates, spreadsheets, lead lists, reports, data from websites and portals: the stuff that eats a few hours every week. I build lightweight software that takes it over, then keep it observable. Every run is logged, a failure reaches you the same day, and a short report tells you what the automation did.
| When | Task | Status | What happened |
|---|---|---|---|
| Mon 08:00 | Monthly invoice | done | Sent to the client, copy filed |
| Mon 09:15 | New website enquiries | done | Added to the CRM, owner told |
| Tue 07:00 | Competitor prices | check | One site did not load, flagged |
| Wed 18:00 | Weekly sales report | done | Emailed to you |
| Thu 07:30 | Supplier stock levels | done | Low-stock alert sent |
One process, handed over and kept under control
An automation nobody watches is a liability with a delay. Every project includes the four parts below, sized to the process.
The automation
Code that does the job: a scheduled script, a small API, a pipeline between the tools you already use. Lightweight on purpose, with few moving parts and no per-seat licences.
Monitoring
Every run leaves a record. Failures send an alert to email, Slack or Telegram, and "it did not run at all" is checked too, because that is the failure nobody notices.
Reporting
A scheduled summary in plain language: what ran, what it produced, what needed attention. Weekly or monthly, wherever you already read things.
Analysis
The data an automation collects is worth asking questions of. Ad-hoc answers when you need them, and a recurring analysis once a question keeps coming back.
Selected work
All projects-
Physical world + software
Heating control with live sensor data
Software and hardware together: a cloud API, an ESP32 I built for the boiler room, and a private chart site that shows what the heating actually did.
Python · ESP32 / ESPHome · Viessmann API · Cloudflare Tunnel, R2, Workers, Access · GitHub Actions
-
Finance / compliance
Monthly e-invoices through a government API
A scheduled script that issues the same invoice every month through Poland's mandatory e-invoicing system, encrypts it, files the receipt and emails the PDF.
Google Apps Script · KSeF API 2.0 · node-forge (RSA-OAEP, AES-256) · Google Drive · Gmail
-
Sales / lead data
Contact emails from a list of company websites
A list of companies goes in, a CSV with ranked contact addresses comes out, with a status on every row so a failed site is visible rather than silently missing.
Python · requests + BeautifulSoup · CSV in / CSV out · parallel workers
-
Market data
Exporting every listing of a marketplace seller
Classic scraping found nothing on seller pages. The fix was to use the same data source the page uses, which also returned more fields.
Python · public JSON API · CSV / XLSX / JSON export
-
Content / AI in a controlled pipeline
AI-written news drafts, published by a human
Twice a week the pipeline collects facts, lets a model write from those facts only, checks the result and leaves a draft in WordPress. A person presses publish.
Node.js · OpenRouter (LLM) · WordPress REST API · Telegram · systemd timers
-
Sales / lead data at scale
Technology detection API for lead enrichment
Which tool does each prospect's website run? AI scrapers gave a different answer on every run. This loads the real page, watches what it requests, and returns the vendor with the URL that proves it.
Node.js · Playwright (Chromium) · Google Cloud Run (3 services) · Cloud Build · Clay
Good fits
- Recurring documents built from the same sources every period: invoices, statements, reports.
- Moving data between systems that do not talk to each other, including portals with no export button.
- Collecting and enriching lists of prospects, suppliers, prices or listings.
- Watching something and telling you when it changes: a competitor's prices, a stock level, a sensor.
- Drafting text with AI where a person approves it before anything goes out.
- Connecting physical equipment to software: sensors, meters, smart plugs, microcontrollers.
Where I am the wrong choice
- A job an off-the-shelf tool or a two-step Zapier zap already does well. I will say so and point you to it.
- ERP or CRM roll-outs for large teams.
- Collecting personal data without a lawful basis, or scraping against a website's terms.
- Sending unsolicited messages in bulk.
How a project runs
You describe the process
A short email or call: what happens today, how often, who does it, what goes wrong.
Written scope and a fixed price
What will be automated and what will not, how you will know it works, and what it costs to build and to run.
Your hosting, or mine
Have a technical team? It goes into your own Cloudflare, Google Cloud or Supabase account. Do not want to think about servers? I host and run it, and you only see the results and the reports.
Run side by side
The automation runs next to the manual process until the outputs match. Then the manual process stops.
Handover with monitoring
Alerts, the run log and the first scheduled report are live on handover day, with a written runbook.
Ongoing care, if you want it
A monthly arrangement for fixes when a source changes, small improvements and the recurring analysis.
Small, well-understood parts
- Cloudflare
- Workers, R2, Tunnel and Access: hosting at the edge, private dashboards without a VPN, servers with no open ports.
- Google Cloud
- Cloud Run for containers that scale to zero; Apps Script inside the Google Workspace you already pay for.
- Supabase
- Postgres with access rules, edge functions and scheduled jobs, for anything that needs history.
- Python and Node.js
- Plain, tested code, versioned in Git and deployed on every push.
- ESP32 and ESPHome
- For when the data lives in the physical world.
Where AI fits
I write, test and document with AI coding tools. That is why a small automation takes days rather than months, and is priced that way.
Inside the automations, AI is used only where it is the right tool and always behind a check. In the news drafts pipeline, code collects the facts, the model writes from them, code validates the result, and a person publishes.
Products I run
The same approach, turned into products I build and operate myself.
- Remindlo: automatic SMS and email reminders for service businesses. Brings customers back for recurring services and cuts no-shows for garages, clinics, salons and vets in the UK.
- Scanlo: trackable QR codes. Free trackable QR codes that small businesses use to collect Google reviews and see which print actually gets scanned.
Questions
Do I need a technical team or my own hosting?
No. There are two ways to run it. Managed: I host the automation, watch it and fix it, and you get the results and the reports, with no accounts or technical terms to deal with. On your accounts: code and hosting are set up in your own Cloudflare, Google Cloud or Supabase account, and I work with access you grant and can remove. You can move from one to the other later.
Who owns the automation and the data?
You do, in both setups. On request you get the code, the data and a written runbook, so nothing is lost if we stop working together.
What does it cost to keep running?
Usually little. Lightweight jobs often fit within the free tiers of Cloudflare, Google Cloud and Supabase. On your own accounts you pay the provider directly; with managed hosting it is part of the monthly fee. The written scope states the expected running cost before anything is built.
What happens when a website or API it depends on changes?
The automation fails loudly rather than quietly: you get an alert, and the run log shows where it stopped. Fixes of that kind are covered by ongoing care, or quoted separately if you prefer.
How do you price?
A fixed price per project, agreed after the written scope. Ongoing care, if you want it, is a monthly fee. No open-ended hourly billing.
Where are you based, and when do you work?
In Poland, on Central European Time: one hour ahead of the UK, with mornings that overlap the US East Coast. All communication is in English.
Will you sign an NDA or a data processing agreement?
Yes. Where an automation touches personal data, a data processing agreement is part of the scope.
Have a process that eats a few hours every week?
Describe it in a few sentences. I will reply with questions, or with how I would approach it.