At work: Head of Engineering 2025-now
Website leads to sales teams
Every website form reaches the right sales people fast, in a format they can use.
Built alone and run since 2025: every form on every customer website, from contact requests to offers, reaches the right sales people.
- Role
- Creator and sole developer
- Years
- 2025-now
- Scope
- Every form on every customer website
- Used by
- Customers' sales teams, support staff
01 The problem
Every website form is a possible sale. It must reach the right people quickly, in a format both people and their sales systems can use. Email must still go out when a provider fails, and support mail must not need hand sorting.
02 Result
- Sales teams get each lead as a readable email and in their sales system's format.
- Email still goes out when the main provider fails.
- Support mail lands in the right ticket without hand sorting.
- Private form fields and email bodies are deleted after a set time.
03 What I built
- 01
Lead service
Serves the forms on customer websites, checks each one for spam, and saves every lead together with the offer or item it was about.
- 02
Routing for business groups
Rules decide who gets each lead across a group of businesses. A preview explains, row by row, who would get a test lead and why.
- 03
Lead reports and exports
Lead counts compared with the last period, in each customer's own time zone, plus branded PDF and CSV exports through short-lived links.
- 04
Support email to tickets
Reads support mailboxes, groups replies into one ticket per conversation, and finds the right customer and department.
- 05
Support desk to AI helper
Customers ask for a change on a support ticket, such as a price update. The AI helper does it with that person's rights.
- 06
Email with a backup provider
All outgoing email goes through one service. If the main provider fails, a backup takes over, with retries and a full delivery history.
04 Risks I handled
- Risk 01
AI must not invent a customer
An AI could guess the wrong customer for a support email. Code lists and scores the likely customers first, the AI may pick only from that list, and unclear answers go to a person.
- Risk 02
No email sent twice
With many workers running, one email could go out twice. Each worker claims its messages in one database step, and a repeated request key returns the first message.
- Risk 03
Deleting data needs a clear yes
A support request could ask the AI to delete data. The helper asks first, needs a clear yes in the next reply, and an unfinished yes expires.
05 Stack
- Python
- FastAPI
- Celery
- PostgreSQL
- Redis
- Kafka
- IMAP
- SMTP
06 How it works
- 01A visitor sends a form on a customer website.
- 02Routing rules pick who gets the lead.
- 03The email service sends it, with a backup provider.
- 04Support mail becomes tickets; the AI helper replies on desk tickets.
Get in touch.
Hiring an engineering lead, or building a platform or AI agents? Tell me about it.