Vol. XVI · 16 years of native mobileCharlottesville, Virginia

Vivienne Fosh

Founder and engineer at LanternApps

Consulting

Ship the platform. Fix the build. Make the AI hold up.

I’ve done this for Charter Communications, a 40+ developer grocery platform and a stalled United Airlines release. Alongside LanternApps, I take on a few engagements for teams that need it done by someone who has done it before. Remote, US time zones.

Email vivienne@kvinta.ai See the case studies

What I offer

Four areas, each proven in production

Kotlin Multiplatform, from first module to production

If your KMP roadmap has sharp edges, I’ve probably already hit them.

For
Teams running separate iOS and Android codebases, or a KMP adoption that has stalled.
The problem
Every feature gets built twice, and logic drifts between the platforms. iOS engineers are wary of a Kotlin toolchain, and nobody has made the web target production-ready.
What I do
  • Draw the shared-code boundaries and the expect/actual contracts both platforms build against.
  • Ship the shared platform to iOS as one Swift-native framework (SKIE), so iOS engineers never touch a Kotlin toolchain.
  • Take Compose Multiplatform and Kotlin/Wasm to production, including the problems that have no public answers yet.
Done before
Charter Communications’ shared Kotlin platform went from zero to production in 3 months, with its web app 2 months later. At Swiftly, shared code cut platform-specific boilerplate by 40%. Ascendion · Charter Communications

Mobile platform architecture and rescues

One standard a whole org can build on, and the migrations to reach it without stopping releases.

For
Orgs with many engineers in one mobile codebase, and teams whose release has stalled.
The problem
Each team has its own pattern, and reviews relitigate the architecture. Every change puts the next release at risk.
What I do
  • An architecture standard (MVI/UDF contracts, ADRs, reference implementations) that teams adopt because it is the easy path.
  • Modularization and incremental migrations that keep releases moving: MVC to UDF, UIKit to SwiftUI, Objective-C to Swift.
  • Code generation that keeps every screen on the same pattern.
Done before
~50 contributors across US and India on one standard, which held after I rolled off. A stalled United Airlines release shipped in 2 months, with zero regressions from the migration and builds 75% faster. Ascendion, Luxoft, PlayWithStakes

Build, CI and release engineering

I make large mobile codebases build fast and ship themselves.

For
Mobile orgs whose builds take an hour, queue behind each other, or break on signing.
The problem
Developers wait on CI, and releases pile up on busy days. CI spend climbs anyway.
What I do
  • Gradle convention plugins, composite builds, and the configuration and remote build caches.
  • CI re-platforming backed by a self-hosted-versus-cloud cost analysis, through to the vendor contract.
  • Release automation: signing, TestFlight and Play pipelines, and white-label app factories.
Done before
At Swiftly, builds that stacked up to half a day became 15 minutes, never queuing, for a 40+ developer org. About 50 engineer-hours a day came back, 30 pipelines became one self-service system, and CI spend fell by $50K a year. Swiftly

AI features that hold up with real users

I know the difference between an AI demo and an AI product.

For
Product teams adding AI to a mobile or multiplatform app, and founders building an AI product.
The problem
The demo impresses in the meeting. In front of real users it turns slow, expensive or confidently wrong.
What I do
  • Streaming AI features in native and multiplatform apps.
  • Answers grounded in live sources, with anything no source confirms flagged instead of stated as fact.
  • Figures computed in code, not guessed by a model, and speed levels users choose for themselves.
Done before
Kvinta, my own app, does all of this. It researches, writes, cites and checks finished documents in 19 languages, and it is in open beta on Mac now. LanternApps · Kvinta

How to start

Three steps, no pitch deck

  1. Write to me

    A few lines on what you’re building, what’s slow or stuck, and your deadline.

  2. A call to scope it

    We look at the problem together. If I’m not the right person, I say so.

  3. A written proposal

    What I’ll do, what you’ll have at the end and how long it takes, agreed before any work starts.