Brian Landes · Salt Lake City, UT

I take products from idea to app store.

Full-stack product engineer. I design, build, and run the whole stack — Flutter frontends, Postgres backends, Cloudflare infrastructure — and I've shipped to the App Store, Google Play, Steam, and the Unity Asset Store. Currently building ShineBoard, a field-service SaaS for short-term-rental cleaning crews.

Also a good villain. It's an LLC thing.

Idea product spec · pricing · scope
Design UX · data model · offline-first
Build Flutter · Python · C# · TypeScript
Infra Supabase · Cloudflare · AWS
Ship App Store · Play · Steam · Asset Store
ShineBoard

Offline-first SaaS for turnover cleaning crews

STATUS: TESTFLIGHT · DESIGN PARTNER: LIVE DAILY

Short-term-rental cleaning companies coordinate turnovers through texts and spreadsheets, and the incumbent software takes a percentage of every clean — while being built for property owners, not the crews doing the work. Worse for software: cleaners work in basements and coverage dead zones, so the app can't assume a connection. Ever.

I built a Flutter app with true offline-first sync — PowerSync over Postgres — on a Supabase backend with row-level security multi-tenancy. Photo-proof checklists, automatic Airbnb calendar ingestion, crew scheduling. Every feature works with zero bars and reconciles when the signal comes back.

  • Flutter
  • Supabase
  • PowerSync
  • Postgres
  • Cloudflare
GobbleGo

A food-discovery app that doesn't bleed money per user

STATUS: TESTFLIGHT · PLAY CONSOLE BETA

Consumer apps built on metered third-party APIs have a nasty failure mode: every user costs money, growth costs more of it, and one loose query pattern turns a good week into a bill. GobbleGo runs on Google Places for restaurant data, so the unit economics had to be a design constraint rather than an end-of-month surprise.

I built the app and the company around it — Flutter client, Supabase backend, and per-SKU cost controls on every Places call so spend stays bounded and attributable per feature. Shipping it meant the unglamorous half too: Twilio toll-free verification so the app can legally send texts, transactional email through Resend, and the LLC and Apple Developer org to put it all under.

  • Flutter
  • Supabase
  • Google Places API
  • Twilio
  • Resend
Narramancer

A Unity plugin where saving is the core mechanic

STATUS: PUBLISHED · UNITY ASSET STORE · SOURCE PUBLIC

Adding save/load to a Unity game after the fact is miserable, so I built a node-based scripting system where serializing the entire game state — mid-execution, at any point — is built into the runtime rather than bolted on. Pause a running graph, save, quit, reload, resume exactly where it was.

Published on the Unity Asset Store with full source on GitHub. Used for everything from menu flow to NPC behavior to branching dialogue.

  • Unity
  • C#
  • Graph runtime
  • Serialization

InContext Solutions

Software Engineer · Jan 2022 – Present · Salt Lake City, UT

I work on ShopperMX, InContext's flagship retail-simulation platform: full 3-D virtual stores built in Unity, used by major consumer brands to test shelf layouts and product placement before committing to a physical reset.

I also build their AI-assisted mobile app — computer vision that identifies products from photos and assembles planograms automatically, turning a manual merchandising workflow into a point-and-shoot one.

I got into software through games, and I still make them. A few: