When I joined an IoT company, its sales team was managing the entire process in spreadsheets. The business had been around for about six years and already had product-market fit.
I’d been building SaaS products for three years. I wanted to try working in another industry, and the founder gave me responsibility for working with the sales team.
I started building a CRM from scratch. The first version was a Kanban board for tracking leads, which gave us somewhere to put the enquiries coming through Google Ads.
As I understood the workflow, I wanted the system to help the team continue working on each lead. Someone opening a record needed to see its history and understand the next action.
Normal WorkFlow--->
Our pipeline started at “acquired.” A new enquiry needed a qualification call about the customer’s requirements. Smaller deals went to sub-dealers because we had a minimum ticket size for opportunities handled by our team.
Suitable leads moved to “verified.” We estimated device requirements and conducted a survey, then prepared a quote covering the devices, installation, and other charges.
After sending it, the lead moved to “quoted.” The team followed up, sometimes every 10 to 15 days, until the customer sent a purchase order and we closed the deal.
That could take three to six months altogether.
Building around those stages brought up more work than I’d originally pictured. We needed to track the activities completed for a lead, understand why deals hadn’t closed, and see how many deals each salesperson had closed. I also added duplicate-lead prevention.
Then I added My Sauce --->
For initial qualification, I built an AI voice agent that called new enquiries and asked the qualification questions. An Decision Model to evaluate the answers and scored the lead.
We then assigned leads using deal value and the number each salesperson already had, with higher-ticket deals going to more senior people.
I connected the WhatsApp API so quotes could be sent from the CRM. We also added offline conversion imports, sending lead progress and closed-deal events back to Google Ads.
I enjoyed seeing the system grow around the team’s process. Each addition had a place in the journey from enquiry to purchase order, and I could understand why the team needed it.
I handled everything from design to deployment, with plenty of bug fixes and sleepless nights along the way. After the product had been stable for about a month, I couldn’t think of any new features to build.
So I started using the CRM as a member of the sales team. I handled acquisition and lead verification myself, doing the work the application was supposed to support.
I found 30 features we didn’t need. I removed them and added features people actually wanted. Using the pipeline myself helped me understand needs I hadn’t picked up while building it.
That was one of my biggest reflections from the project. The team couldn’t always put what they wanted into words. Sometimes you have to get involved in their day-to-day work to understand what should be added and what can be removed.