What's The Deal
As co-founder — I built the platform
Three years live on both app stores, with geofenced push in the hands of real people, RAG search behind it, and organic traffic that arrived on purpose.
- Flutter
- Next.js
- Google Cloud Pub/Sub
- RAG search
- Vector recommenders
- Geofencing
- Push notifications
Context
A consumer product I co-founded and built, live in market for three years and still running. Published on both the App Store and Google Play, which means every release survives two review processes and two sets of platform rules — and the web app is where most of the recent work has gone, because organic search is where the audience actually comes from.
The problem
Consumer mobile punishes everything that enterprise integration merely dislikes. Geofencing has to be accurate enough to be useful and cheap enough not to drain a battery. Push has to arrive when it is relevant and stay silent when it is not, because the alternative is an uninstall. Permissions can be declined, revoked, or granted only while the app is in the foreground, and the product still has to work.
The second problem is being found at all. A deals product competes with every restaurant's own page, and paying for that traffic is not viable at consumer margins — which makes organic search an engineering problem rather than a marketing one.
What I built
- A Flutter app on both stores
- One codebase shipped to the App Store and Google Play, with the platform differences handled rather than averaged away.
- Location, geofencing and push
- Location-aware notification that degrades gracefully when a permission is refused or the device is being frugal with the radio. Delivery tied to where someone actually is, which is the only version of a location product anyone keeps installed.
- RAG search and analytics, in production
- Retrieval-augmented search over the live corpus, running in a consumer product rather than a demo — with the analytics to see what people actually searched for.
- Event ingestion and a vector recommender
- GCP Pub/Sub ingestion feeding a vector-based recommender, with a Next.js web surface alongside the app.
Outcome
Live in market for three years across iOS, Android and web. In July 2026 the web platform recorded 2.63k clicks and 201k impressions in Google Search Console, with 85 pages earning their first impressions and top-six placement for generic local searches like “wing wednesday edmonton”. Alpha Booth at Collision Conference. I mention the search numbers because they are the same discipline I am selling — the difference between software that exists and software people find.
Sound like something you have?
More work
- KeystoneOS
Idempotent webhook ingestion keyed on provider event IDs, anonymous-to-identified event backfill, CREA RESO OData sync, and pgvector semantic search over listings.
- A major Canadian airline
Booking, seat maps, flight search and automated baggage handling, integrated against airline reservation systems under a contractual throughput SLA.
- Surefire Fundraising
A Laravel platform handling catalog, checkout and transactional email for an Edmonton client whose business was built on top of it.