Recent work

Automation

Automation

Sales pipeline that tells advisors who to call next

The problem

Every day, each sales advisor built and managed their own pipeline by hand. They worked out who to call from a spreadsheet, and after every call, quote and message they had to update the customer's progress themselves. Customers who had already asked for a quote sat buried among casual browsers, and some new customers never heard from anyone at all. To see how sales were going, managers had to ask each advisor for an update.

What I built

A sales pipeline inside the company's own platform that does all of that work for them. It records every call, quote, message and order, and updates each customer's progress by itself. Every morning it gives each advisor a list of who to call next, in order, with the reason beside each name. If an advisor hasn't contacted a customer within a set time, it passes the customer to a manager to give to someone else. Managers get one page showing how sales are going.

The outcome

Advisors no longer build lists or update progress by hand. Each one starts the day knowing exactly who to call and why, with the customers most ready to buy at the top. If an advisor doesn't follow a customer up, the customer goes to someone who will. Managers can see how sales are going at any moment without asking anyone.

Automation

Order processing that chases every signature and document

The problem

Every new order needed several documents signed by different people before it could go ahead. When one document came back signed, someone on the team had to send out the next one by hand. The signing tool sent its own reminders, but nothing limited how long an order could sit waiting, so the team chased signatures themselves, often many times for a single order. Nothing told them which orders were overdue: they found out when they next opened the order or when a customer chased them. Orders came in faster than the team could process them, so customers waited and some orders were cancelled.

What I built

An order process inside the company's own platform that keeps track of every signature and does the chasing. The moment one person signs, it sends the next document to the next person who has to sign. It sends reminders on a set schedule to anyone who hasn't signed. If someone still hasn't signed after a set number of days, it gives someone on the team a task to call them. If they still haven't signed after that, it recommends cancelling the order, and a person decides. The team works from one list of the orders that need a person today, most overdue first.

The outcome

Nobody on the team has to remember who to chase or send the next document by hand. Every signature is chased on the same schedule until it comes back, and the team steps in only when a call or a decision is needed. The list of overdue orders is ready every morning, so no order sits waiting unnoticed, and every decision to cancel stays with a person.

Automation

Renewals list that finds every customer due to renew

The problem

Customer agreements run out on a set date and have to be renewed before then. One person found the customers due to renew in an export, copied each one into a tracking spreadsheet and imported their contacts into a separate email tool to send the reminders. After arranging each renewal, the person typed the new end date into the company's platform by hand and emailed the customer the result.

What I built

A renewals list inside the company's own platform. Every day it finds the customers coming up for renewal and adds them to the list by itself. It tags each one in the company's messaging tool, ready for the reminder emails. A person still arranges each renewal and records the result on the list. The platform then updates the customer's end date by itself.

The outcome

The list of customers due to renew builds itself every day, with nobody searching an export or importing contacts into another tool. Every renewal is tracked on one list inside the company's platform, and the new end date goes in without anyone typing it.

AI tools

AI tools

Delivery plan that manages itself

The problem

One person kept the company's delivery plan up to date. Workstream leads were sent copies of the plan, wrote their changes into them and sent them back to be merged in. Each task's status and each workstream's colour were typed in by hand, so every workstream showed green while dozens of tasks were running late.

What I built

A delivery plan that every workstream lead keeps up to date themselves. Each lead updates their own part by hand, or tells their own AI assistant what has changed, and it makes the change. Every weekday evening the plan marks any task late once its end date passes, works out each workstream's colour from its tasks, and posts the colours and late tasks to the team's Teams chat.

The outcome

Each lead keeps their own part of the plan current, and nobody collects copies or merges changes by hand. A workstream turns amber or red as soon as its tasks run late, so the plan can no longer show green while work is behind. Every weekday evening the whole team sees where the plan really stands, without asking anyone.

AI tools

Automated compliance checks for marketing

The problem

Every blog, email, presentation and piece of sales material had to be checked against the company's compliance rules before it could go out. One person did all of that checking by hand. Marketing had to wait until the compliance lead got to each piece, and the checking took up much of the compliance lead's time.

What I built

A compliance checker that staff use in Slack. They post the text, or a Word or PDF file, and within minutes it replies: green if it finds nothing, amber with the exact lines to change and the wording to use, or red if the piece needs the compliance lead. Every problem it flags names the rule behind it. It can draft changes to the rules, and a change only takes effect once the compliance lead confirms it.

The outcome

Staff get the checker's answer within minutes, with the exact lines to fix and the wording to use, so they can fix problems before the compliance lead sees the piece. Each piece reaches the compliance lead already checked, with every problem marked against its rule, so each review takes less of the compliance lead's time. The rules stay in the compliance lead's hands, and nothing changes without their say.

AI tools

AI assistants for the team, sharing one set of company facts

The problem

Each colleague's AI only knew what that one person had told it. The company's documents contradicted each other, and when two people disagreed about a fact, there was nowhere to settle who was right. Once a question was settled, the answer lived in one person's AI, where nobody else's could find it.

What I built

An AI assistant for each colleague. The first time it is used, it reads the company's core documents. All the assistants share one register of company facts. Each fact has a named owner and is marked as settled, an assumption or an open question, and the assistants never give an open question as an answer. Any assistant can add a fact or raise a question, and only the fact's owner can settle it.

The outcome

Every colleague's assistant works from the same set of company facts and knows which ones are settled. When two people disagree, the question goes to the person who owns that area, and once they answer, every assistant uses the same answer. Colleagues' assistants add and settle facts in their own areas, and a new starter's assistant knows the company from its first day.

Software

Software

In-house HR platform instead of a paid subscription

The problem

A small company needed a proper way to handle leave and staff records. Without one, leave requests arrive by email or message, a manager approves each one in a reply, and someone keeps a spreadsheet of who is off and how much leave each person has left. Policies go out by email, with no record of who has read them. The usual answer is a monthly HR subscription.

What I built

An HR platform the company owns, behind its own secure sign-in. Staff request leave online, and each request goes to their own manager to approve or decline. Everyone can see how much leave they have left, and a shared calendar shows who is off. Company policies are uploaded once and sent to everyone, to one department or to one person, and the platform tracks who has confirmed reading each one.

The outcome

Leave is requested, approved and recorded in one place, and nobody keeps a spreadsheet or chases approvals by email. Everyone can see who is off and how much leave they have left, and the company can see who has read each policy. The company owns the platform outright, pays no monthly subscription for it, and can change it whenever it needs to.

Software

Sanctions screening built in-house in three days

The problem

Before a new customer can buy, the company has to check them against the official sanctions lists, and anyone who comes close to a listed name has to go to a person to decide. The lists change, so existing customers have to be checked again whenever they do. Every check needs a record of exactly which version of each list it used. The usual answer is a contract with a screening company.

What I built

A screening service the company owns. Every day it downloads the UK, EU, UN and US sanctions lists. Before a customer can pay, it checks their name and date of birth against every list, allowing for different spellings and names in a different order. Each possible match goes to the compliance team with the reasons it matched, and they record each decision. When a list changes, it checks every current customer again. Every check is kept with the list versions it used.

The outcome

The company owns its sanctions screening outright and pays no screening company, and it took three days to build. In testing against every name on the lists, it caught 99.9% of names written five different ways, and sent fewer than 1 in 100 made-up customers to a person by mistake. The compliance team sees only the close matches, each with its reasons, and every decision is on record.

Software

Staff platform for a contact centre

The problem

A new business needed a system for its contact-centre and back-office staff before it opened. Every change to a customer's account had to be approved by a second person and recorded in a way nobody could alter. The company's core systems had no screens for staff at all, and its one small engineering team was busy building those core systems.

What I built

A staff platform where the team finds a customer and works on their account. Staff check that a caller is who they say they are before discussing the account. Any change that needs approval goes into a queue for someone at the right level to approve, never the person who made it. Callbacks and complaints arrive as work items for the right team. Every action is recorded in a history that can't be changed.

The outcome

It gives staff one place to find a customer, check who is calling, change their account and handle callbacks and complaints, with the approval and record-keeping rules built in. No change goes through without a second person, and every action is on record. I built it with AI while the engineering team stayed on the core systems, and nearly 2,500 automated tests check it.

Integrations

Integrations

Online store with automatic ordering

The problem

The online T-shirt shop ran on a monthly Shopify plan. Each order reached the print company unpaid, and the print company emailed asking for payment. Every order then had to be paid for by hand, one at a time, before it was printed and posted.

What I built

An online store where the customer pays by card at checkout. Each paid order goes straight to the print company, which takes payment for it automatically. When the order is posted, the customer gets an email with the tracking number. Links to the old shop send people to the new store.

The outcome

Orders go from the customer's payment to the printer, already paid for, with nobody touching them. Nobody pays orders one by one from emails any more, and the shop no longer runs on a Shopify plan.

Integrations

Weekly pricing report that matched the company's own quotes

The problem

The leadership team wanted to see, every week, what each product would cost a customer through each of the company's partners. The company's quoting system works out each price in many stages, so the only exact way to get a price was to run a quote by hand, one product at a time. The formula used for estimates only came close.

What I built

A pricing report that ran by itself every Friday. It took the company's current rates and an outside supplier's latest prices. It worked out every product's price step by step, the same way the quoting system does, for a standard customer agreed with the commercial team. It compared each price with what similar sales had come to, marked it green, amber or red, and emailed the report to the leadership team.

The outcome

Every Friday the leadership team got an exact price for every product through every partner, with nobody running quotes by hand. Checked against quotes made by hand, it matched them to within a penny.

Integrations

Company knowledge base that staff ask in Slack

The problem

When staff needed to know how a process worked, they had to find the right document themselves or ask a colleague. Some documents disagreed with each other, and nothing said which version to follow. When a question had no written answer, nobody found out.

What I built

A knowledge base that staff ask in Slack, in their own words. It answers only from the company's documents, quoting the source each time. When two documents disagree, it shows both and says which one is in force. When the documents don't cover a question, it says so and logs the question for the owner.

The outcome

Staff get answers in Slack with the source quoted, so they can check each one. When documents disagree, they are told which one to follow. The operations team owns the knowledge base, and every question it can't answer shows them which document to write next.

What's bugging you?

Enter your email address so I can reply.

That email address doesn't look complete. Check it so I can reply.

That didn't send. Try again, or email me at antony@square9.net.

Thanks, I'll reply within 24 hours.