Reza Shirazi / Head of Engineering

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

  1. 01A visitor sends a form on a customer website.
  2. 02Routing rules pick who gets the lead.
  3. 03The email service sends it, with a backup provider.
  4. 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.