Work
Initiatives in product, platform, and data systems.
A record of work I am responsible for. Each entry is one initiative — the system or surface, the company it shipped inside, and what changed because of it. Most recent first.
AI · Analytics · Platform
Natural-language analytics, and a unified product after acquisition
Two parallel threads at Opiniion — an LLM workflow that turns plain questions into a query DSL and chart spec, and the architecture that lets two acquired products read as one dashboard.
Reputation and resident-feedback platform for multifamily housing.
Outcome
A dashboard that answers questions in plain language, sitting on a unified surface across two product lines.
LLM · DSL · Architecture
Open dossierProduct · Reliability · Delivery
Ari, and trunk-based delivery on a customer-facing surface
Two intertwined initiatives as Technical Team Lead — the architecture and launch of Ari, and the move to trunk-based development with containerized CI on a widget that ships to property managers every day.
Resident-to-resident messaging network for multifamily leasing. Acquired by Opiniion in 2025.
Outcome
60% growth in dashboard adoption post-launch. Production bugs down 85%. Uptime sustained at 99.9%. Code review to deploy compressed from days to minutes.
CI/CD · Trunk-based · Leadership
Open dossierFrontend · Platform · Embed
Migrating the widget platform to TypeScript and React
A multi-year migration of a customer-embedded widget from a legacy stack to TypeScript + React — taken seriously because it ships into pages we do not control.
Resident-to-resident messaging network for multifamily leasing.
Outcome
60% smaller bundle. Twelve months without a release rollback. Design-system, cross-domain messaging, and an A/B testing surface the product team could actually use.
TypeScript · React · Design system
Open dossierWeb · SDK · Embed
The flagship widget SDK, version one
Built the first version of the widget SDK that became Rentgrata's primary distribution surface — and the one I would migrate to TypeScript and React four years later.
Resident-to-resident messaging network for multifamily leasing.
Outcome
163% conversion lift in the first two months. Setup and observability rebuilt around what install partners actually needed.
Conversion · Observability
Open dossierData · Integrations · Reliability
Aggregating unstructured feedback into a product signal
Full-stack work on a platform that pulled customer feedback out of email, social, and app stores and turned it into something product teams could read.
Customer-feedback aggregation across email, social platforms, and app stores.
Outcome
Schemas remodeled, integrations stabilised, and a CI pipeline that recovered from incidents in minutes.
Full-stack · Schemas · CI/CD
Open dossierFrontend · Microservices · Migration
Migrating an AngularJS client to React, and twelve services to Mali.js
Frontend and platform migration work as part of an internal engineering org — an early lesson in moving fast without losing the floor.
Pan-African engineering organisation building software for global teams.
Outcome
50% lift in developer productivity and 70% lift in stability after the React migration. 12+ services consolidated onto a single Node framework.
React · Node.js
Open dossier