Skip to content
A scientist on a dock checking a site plan with a measuring wheel beside them during a field inspection.

2026 · Product

Infilla

Spent a week in the field with government inspectors to lay the groundwork for Infilla's first mobile app, and specced its first GIS-integrated permit forms. Product manager, Jun–Aug 2026.

Product Manager · San Francisco, CA · Jun – Aug 2026

User researchPRDRequirements gatheringGIS integrationsPrototyping

Results

8 government staff shadowed in 5 days12+ requirements sessions1 county contract

Context

Infilla sells end-to-end permitting software to state and county governments. I joined for the summer as a product manager, working with a designer and a couple of engineers, and owned two workstreams.

The first was permit forms: the company's first net-new GIS-integrated form, replacing a state DOT's legacy portal, then fence and telecom permit forms built with Sonoma County. The second was foundational research for a mobile app for inspectors and code enforcement officers, a product Infilla didn't have.

Constraints

  • One summer, and one person on discovery.
  • No existing mobile product and no first-hand research on how field staff work.
  • Government users who could only be reached through the agencies themselves.

Problem

Permitting software stops at the desk, but inspectors and code enforcement officers do their work in the field: in trucks, on site, often with no good tool. Infilla wanted to finish its end-to-end system with a mobile app but had never watched those users work.

On the forms side, agencies were stuck on legacy portals with fields that didn't reflect how permits are reviewed.

North starEnough grounded understanding of field workflows for design and engineering to start the mobile app without guessing, and forms that agency staff would sign off on.

Decisions

Decision 01

Go into the field instead of running interviews from a desk

Options
Remote interviews or a survey, versus ride-alongs and time in agency offices.
Evidence
Nothing the company had documented how inspectors work day to day, and what people say they do differs from what they do.
Chose
Three full days of ride-alongs (two scientists doing inspections, one code enforcement officer), interviews, and time in the office watching the tools and processes in use. In total I shadowed 8 government employees over 5 days and mapped their workflows and tooling end to end.
Didn't build
Any mobile features or wireframes before the workflows were mapped.
Cost
A full week of my time and a small sample, so findings are directional across agencies rather than statistical.
Decision 02

Redesign the forms instead of porting the portal

Options
Copying the legacy portal's fields one for one, or working out with each agency what the form should capture.
Evidence
Building a custom application form for each customer's permit process was a lot of work, and the requirements lived in different heads: the government stakeholders who reviewed permits and the engineer who had to build them.
Chose
Redesigned fence and telecom permit forms for Sonoma County, both GIS-integrated, built in working sessions I led. I owned the PRD through kickoff and QA. In practice the PRD was a spec doc with two readers, so I wrote it to work for both: plain enough for the government stakeholders to approve, and precise enough for the engineer to build from. I looped the engineer in early and formatted the spec in the language and structure they prefer, matched to how they read and how they work with their own agents.
Didn't build
A like-for-like port of the old portal.
Cost
Every field needed agency agreement, and tailoring the spec to each engineer took extra time up front, so requirements took longer than a straight copy would have.
Decision 03

Keep one source of truth I could interrogate

Options
Scattered notes and tickets, or a single knowledge base wired into the team's tools.
Evidence
Strategy docs, Linear tickets, Figma wireframes, sales calls, and meeting notes were each changing, and they could contradict one another.
Chose
A second brain in Obsidian and Claude, connected to Notion, Linear, Figma, GitHub, Attio (sales calls), and Granola (meeting notes), plus a scheduled linter that flags drift, inconsistencies, and contradictions for me to resolve.
Didn't build
A shared wiki everyone had to maintain.
Cost
It was my own system, so it took setup and upkeep and depended on me keeping it current.

Solution

The research produced a strategy document: the workflows, the tools inspectors and code enforcement officers use, the pain points and bottlenecks, and recommendations for design and development of the mobile app. On the forms, the fence and telecom permit forms for Sonoma County replaced portal fields with GIS-integrated ones. I prototyped new features with Claude, worked through them with the designer and engineers, and used PostHog for analytics.

An inspector holding a phone with directions in front of a rugged in-truck laptop showing a permit record. A rugged in-truck laptop showing a Word violation-letter template that an inspector fills in by hand.
Decision 1: a ride-along. Permit records on one screen, directions on a phone, and violation letters filled in from a Word template, all from the truck. Identifying details are blurred.
Decision 3: the second brain in Obsidian, with the linter and its connections to Notion, Linear, Figma, GitHub, Attio, and Granola.
Decision 3: the second brain, with the linter and its connections to Notion, Linear, Figma, GitHub, Attio, and Granola.

Outcome

I shadowed 8 government employees in 5 days, ran 12+ requirements sessions, delivered two GIS-integrated permit forms, and wrote the strategy document the mobile app work would start from. The work helped secure a county contract.

The mobile app itself hadn't been built by the end of the summer; this was the foundation for it.

Next project Pingo