CRM and ERP for two hundred small businesses
My first year on a SaaS in production — building the CRM/ERP that ended up serving more than two hundred Moroccan small businesses, and the modular architecture that made adding the next feature cheap.
- 200+business clients
- CRM · ERP · SaaSproduct line
- modular APIarchitecture
Hsabati was — and is — a SaaS for Moroccan small businesses. Invoicing, basic ERP, customer tracking, the working subset of what a 5-to-50-person company needs to keep its books straight. I joined in December 2019, freshly out of my Master’s, and ten months later the platform was serving more than two hundred businesses across the country. It was my first encounter with what “production” actually means at scale.
What two hundred businesses needed
The hard part wasn’t the features any single business wanted. It was the diversity. A pharmacy in Rabat needed something a textile workshop in Fez didn’t, which both differed from a small accountant’s office in Casablanca. We couldn’t ship one workflow and call it done — the product had to flex.
Our answer was a tight modular product: a small set of well-shaped primitives (customers, items, invoices, stocks, taxes) and configurable workflows on top. Most new business types could be onboarded via configuration alone; a meaningful minority needed a small custom module bolted on. The trick was keeping that minority small.
Modular architecture that didn’t fight expansion
The architecture I worked on codified a clean separation: a stable API layer with well-defined contracts, and feature modules that lived behind it without leaking into each other. New features added new endpoints; they almost never required changes to existing ones. Teams shipping concurrent work didn’t step on each other.
That sounds obvious. In a fast-growing SaaS where the easy path is to wire everything together “for now”, it isn’t. We held the line by writing down the API contracts before writing the code, and by being willing to refactor the substrate whenever a feature wanted to break it. It was the right kind of slow — a few hours of upstream work that saved weeks downstream.
What it was
Less glamorous than later programs at Kongsberg or Digitalent, but the foundation. Hsabati was where I learned that good architecture is the discipline of choosing what not to couple, and that the right small primitives let two hundred different businesses run their day on the same code.