Enterprise CRM & Operations Platform
One system of record for the work that keeps a business running.
- Role
- Sole developer
- Status
- Production
- Stack
- Django · PostgreSQL · Python
How it fits together
Context
Customer relationships, support conversations, ledger entries, staff calls and tasks, and attendance had each lived in their own corner. Answering a simple operational question meant stitching several of them together.
I designed and built one Django and PostgreSQL platform to hold all of it, and I maintain it in production on my own.
Constraints
- Financial ledger data has to stay correct while it is imported, reviewed and reported on.
- Rewards are calculated from logged activity, so the activity records must be trustworthy and the business rules explicit.
- Staff use it all day, so everyday workflows have to stay quick to operate.
What I built
- Data models and modules for CRM, customer support, accounting-ledger intake, call and task logging, and attendance.
- Activity-based loyalty points that convert into stipend-related rewards under configurable business rules.
- Operational dashboards and recurring workflows on top of the same data.
- Everything end to end: data modelling, APIs, interfaces, deployment and production support.
Tradeoff: One shared model over separate tools
Keeping CRM, support, ledger and activity data in one PostgreSQL schema puts more care into the data model up front. In return, reports, rewards and dashboards all read from one consistent source instead of syncing between tools that disagree.
Outcome
Brought scattered operational work into a single system of record that I design, build and maintain end to end.