Projects /Vivvia
Vivvia
CRM and management software for real-estate agencies: clients, property portfolio, operations and multi-portal publishing.
- Go
- Next.js
- PostgreSQL
- Auth0
The problem
A real-estate agency runs on two assets that almost never live in the same place: its property portfolio and its client relationships. In practice, that information ends up scattered across spreadsheets, third-party portals, email threads, and whatever each agent keeps in their head. The outcome is familiar: stale listings, leads that go cold because no one follows up, portals published by hand one at a time, and zero visibility into what’s actually working.
Software for the sector tends to solve half the problem — either it’s a CRM that ignores the property, or a catalog that ignores the client — and usually at the cost of a heavy, expensive tool that a small team struggles to adopt.
My role
I’m the co-founder and CTO of Vivvia. My responsibility is the founding-engineer one: define the architecture, build the backend and integrations, and take the product from an idea to a system in production that a real business can depend on.
That meant owning the data model, the API design, authentication and access control, and the infrastructure and deployment decisions — as well as translating the business needs of a real-estate agency into a coherent product rather than a pile of disconnected features.
The process
We started from an agency’s real workflow, not from a feature list. Before writing product code, we modeled the domain — properties, contacts, deals, and their lifecycles — so the database reflected how the work is actually done.
From there, the rule was to build on boring, production-proven foundations: Go on the backend for its performance and concurrency model; PostgreSQL as the single source of truth; Auth0 so we didn’t reinvent identity or session security; and Next.js on the frontend for a fast, SEO-friendly interface. A clear API contract between backend and frontend kept both sides decoupled.
The solution
Vivvia is a SaaS platform that unifies both halves of the real-estate business in a single system: the property portfolio and the client relationship.
- Property portfolio management — one system to create, edit, and maintain listings, keeping their status and lifecycle current.
- Real-estate CRM — capturing and following up leads and contacts wired directly to the properties they care about.
- Publishing and presence — take the portfolio to the agency’s public shopfront without duplicating work.
- Secure accounts and access — identity and sessions handled with Auth0, with the access control a multi-role team needs.
- Multi-language from day one — built for a market with several languages from the start.
Outcomes
Vivvia is in production, serving a real-estate agency’s full workflow — portfolio, clients, and publishing — from a single platform. It’s used today by 4 client agencies with 15 active users.
Metrics published with the partner’s sign-off; revenue figures are kept private.
Learnings
- Modeling the domain first pays off. Spending time on how an agency really works avoided rewrites and kept the product coherent as it grew.
- Boring foundations, ambitious product. Go, PostgreSQL, and Auth0 let engineering energy go into the customer’s problem instead of fighting infrastructure.
- Don’t reinvent identity. Delegating authentication and sessions to Auth0 removed an entire category of security risk.
- A clear API contract is what makes a two-person build work. Decoupling backend and frontend behind an explicit contract let us move in parallel without stepping on each other.